Draft:Template:Article: Difference between revisions
From AbhiprayaVedi
No edit summary |
No edit summary |
||
| (9 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
<includeonly> | <includeonly>{{DISPLAYTITLE:{{{DisplayTitle|{{{Title|}}}}}}}}<!-- | ||
{{DISPLAYTITLE:{{{DisplayTitle|{{{Title|}}}}}}}} | --><div class="article-container" data-language="{{{Language|}}}"> | ||
<!-- Article Header - Clean, No Duplication --> | |||
<!-- Article Header - | |||
<div class="article-header"> | <div class="article-header"> | ||
<div class="author-info"><span class="author-name">{{{Author|}}}</span><span class="date-info">{{#time:d-m-Y|{{{Date|}}}}}</span><span class="category-badge">{{{Category|}}}</span></div> | |||
<div class="author- | |||
<span class="author- | |||
<span class="date-info"> | |||
</div> | </div> | ||
<!-- Introduction - | <!-- Introduction - Compact --> | ||
<div class="introduction- | <div class="introduction-section"> | ||
{{{Introduction|}}} | {{{Introduction|}}} | ||
</div> | </div> | ||
<!-- Two Column Layout --> | <!-- Two Column Layout --> | ||
<div class=" | <div class="content-wrapper"> | ||
<!-- Main Content | <!-- Main Content --> | ||
<div class="main-content"> | <div class="main-content"> | ||
<!-- Image 1 - Left Aligned | <!-- Image 1 - Left Aligned --> | ||
{{#if:{{{Image1|}}}| | {{#if:{{{Image1|}}}| | ||
<div class="image-left"> | <div class="image-left"> | ||
| Line 34: | Line 25: | ||
|}} | |}} | ||
<!-- Article | <!-- Article Text --> | ||
<div class="article-text"> | <div class="article-text"> | ||
{{{Content|}}} | {{{Content|}}} | ||
</div> | </div> | ||
<!-- Additional Images | <!-- Additional Images --> | ||
{{#if:{{{Image2|}}}| | {{#if:{{{Image2|}}}| | ||
<div class="content-image"> | <div class="content-image"> | ||
[[File:{{{Image2}}}|thumb|center| | [[File:{{{Image2}}}|thumb|center|650px|{{{Image2Caption|}}}]] | ||
</div> | </div> | ||
|}} | |}} | ||
| Line 54: | Line 39: | ||
<!-- Source Attribution --> | <!-- Source Attribution --> | ||
{{#if:{{{SourceName|}}}| | {{#if:{{{SourceName|}}}| | ||
<div class="source- | <div class="source-attribution"> | ||
< | <strong>സ്രോതസ്സ്:</strong> {{{SourceName|}}} | ||
{{#if:{{{OriginalAuthor|}}}| • <strong>യഥാർത്ഥ രചയിതാവ്:</strong> {{{OriginalAuthor|}}}}} | |||
{{#if:{{{SourceURL|}}}| • [{{{SourceURL|}}} യഥാർത്ഥ ലേഖനം]}} | |||
{{#if:{{{OriginalAuthor|}}}| | |||
{{#if:{{{SourceURL|}}}| | |||
</div> | </div> | ||
|}} | |}} | ||
| Line 72: | Line 51: | ||
<div class="right-sidebar"> | <div class="right-sidebar"> | ||
<!-- Author | <!-- Author Infobox --> | ||
<div class="author-infobox"> | |||
<div class=" | |||
{{#if:{{{Thumbnail|}}}| | {{#if:{{{Thumbnail|}}}| | ||
<div class="author-photo"> | <div class="author-photo"> | ||
[[File:{{{Thumbnail}}}|frameless|280px | [[File:{{{Thumbnail}}}|frameless|280px]] | ||
</div> | </div> | ||
|}} | |}} | ||
<div class="author-name">[[{{{Author|}}}|{{{Author|}}}]]</div> | <div class="author-name-box">[[{{{Author|}}}|{{{Author|}}}]]</div> | ||
{{#if:{{{Author_Bio|}}}| | {{#if:{{{Author_Bio|}}}| | ||
<div class="author-bio | <div class="author-bio"> | ||
{{{Author_Bio|}}} | {{{Author_Bio|}}} | ||
</div> | </div> | ||
|}} | |}} | ||
</div> | </div> | ||
<!-- Highlights --> | <!-- Highlights --> | ||
{{#if:{{{Highlight1|}}}| | {{#if:{{{Highlight1|}}}| | ||
<div class="highlight-box"> | <div class="highlight-box"> | ||
<div class="highlight-title">💡 | <div class="highlight-title">💡</div> | ||
<div class="highlight- | <div class="highlight-text">{{{Highlight1|}}}</div> | ||
</div> | </div> | ||
|}} | |}} | ||
| Line 99: | Line 76: | ||
{{#if:{{{Highlight2|}}}| | {{#if:{{{Highlight2|}}}| | ||
<div class="highlight-box"> | <div class="highlight-box"> | ||
<div class="highlight-title">💡 | <div class="highlight-title">💡</div> | ||
<div class="highlight- | <div class="highlight-text">{{{Highlight2|}}}</div> | ||
</div> | </div> | ||
|}} | |}} | ||
<!-- Key Points as Floating Box --> | |||
<!-- | |||
{{#if:{{{KeyPoint1|}}}| | {{#if:{{{KeyPoint1|}}}| | ||
<div class=" | <div class="keypoints-float"> | ||
<div class="keypoints- | <div class="keypoints-header">📌</div> | ||
<ul class="keypoints-list"> | <ul class="keypoints-list"> | ||
{{#if:{{{KeyPoint1|}}}|<li>{{{KeyPoint1|}}}</li>}} | {{#if:{{{KeyPoint1|}}}|<li>{{{KeyPoint1|}}}</li>}} | ||
| Line 130: | Line 96: | ||
</div> | </div> | ||
<!-- | </div> | ||
[[Category:{{{Category|}}}]] | |||
[[Category:Articles]] | </div> | ||
{{#if:{{{Language|}}}|[[Category:{{{Language}}} articles]]|}} | |||
<!-- ================================================================ | |||
CATEGORIES | |||
NOTE on Malayalam DEFAULTSORT bug: | |||
MediaWiki's DEFAULTSORT cannot sort Malayalam Unicode text correctly — | |||
it only reads the first character, so categories show truncated names. | |||
FIX: We use the "sort key" parameter directly on each [[Category:]] link. | |||
The sort key is the DisplayTitle passed explicitly, which makes the full | |||
title appear correctly in the category listing. | |||
================================================================ --> | |||
[[Category:{{{Category|}}}|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
[[Category:Articles|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
{{#if:{{{Language|}}}|[[Category:{{{Language}}} articles|{{{DisplayTitle|{{{Title|}}}}}}]]|}} | |||
<!-- English-to-Malayalam parallel categories --> | |||
{{#switch:{{{Category|}}} | |||
|Politics=[[Category:രാഷ്ട്രീയം|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Society=[[Category:സമൂഹം|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Culture=[[Category:സംസ്കാരം|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Science=[[Category:ശാസ്ത്രം|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Literature=[[Category:സാഹിത്യം|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Cinema=[[Category:സിനിമ|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Environment=[[Category:പരിസ്ഥിതി|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Economics=[[Category:സമ്പദ്വ്യവസ്ഥ|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
|Opinion=[[Category:അഭിപ്രായം|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
}} | |||
{{#if:{{{OriginalAuthor|}}}| | {{#if:{{{OriginalAuthor|}}}| | ||
[[Category:Articles by {{{OriginalAuthor|}}}]] | [[Category:Articles by {{{OriginalAuthor|}}}|{{{DisplayTitle|{{{Title|}}}}}}]] | ||
[[Category:Translations]] | [[Category:Translations|{{{DisplayTitle|{{{Title|}}}}}}]] | ||
[[Category:Translated by {{{Author|}}}]] | [[Category:Translated by {{{Author|}}}|{{{DisplayTitle|{{{Title|}}}}}}]] | ||
| | | | ||
[[Category:Articles by {{{Author|}}}]] | [[Category:Articles by {{{Author|}}}|{{{DisplayTitle|{{{Title|}}}}}}]] | ||
}} | }} | ||
</includeonly> | </includeonly> | ||
<noinclude> | <noinclude> | ||
== | == Ver3: Fix for Category Display Names == | ||
=== The Malayalam DEFAULTSORT Problem === | |||
`{{DEFAULTSORT:}}` does NOT work correctly with Malayalam (or any Unicode script that is non-Latin). MediaWiki's sort key mechanism only reads the first Unicode code point, which is why categories were showing only the first letter/character of the title. | |||
=== | === The Fix === | ||
Instead of using `DEFAULTSORT`, we now pass the sort key '''directly on each category link''' using the pipe syntax: | |||
<pre> | <pre> | ||
[[Category:Articles|{{{DisplayTitle|{{{Title|}}}}}}]] | |||
</pre> | |||
This tells MediaWiki: "place this page in the category, and display it under the sort key equal to the DisplayTitle." Since MediaWiki renders the sort key as the display label in category listings, the full Malayalam title now appears correctly. | |||
=== How it works === | |||
{| class="wikitable" | |||
</ | ! Parameter !! Example value | ||
|- | |||
| Page name || <code>Something-In-The-Air</code> | |||
|- | |||
| DisplayTitle || <code>Something in the Air?</code> | |||
|- | |||
| Category shows || '''Something in the Air?''' ✓ | |||
|} | |||
= | For Malayalam: | ||
{| class="wikitable" | |||
! Parameter !! Example value | |||
|- | |||
| Page name || <code>Kerala-Climate-Change</code> | |||
|- | |||
| DisplayTitle || <code>കേരളത്തിലെ കാലാവസ്ഥാ വ്യതിയാനം</code> | |||
|- | |||
| Category shows || '''കേരളത്തിലെ കാലാവസ്ഥാ വ്യതിയാനം''' ✓ | |||
|} | |||
[[Category:Templates]] | [[Category:Templates]] | ||
</noinclude> | </noinclude> | ||
Latest revision as of 18:56, 10 April 2026
Ver3: Fix for Category Display Names
The Malayalam DEFAULTSORT Problem
`` does NOT work correctly with Malayalam (or any Unicode script that is non-Latin). MediaWiki's sort key mechanism only reads the first Unicode code point, which is why categories were showing only the first letter/character of the title.
The Fix
Instead of using `DEFAULTSORT`, we now pass the sort key directly on each category link using the pipe syntax:
[[Category:Articles|{{{DisplayTitle|{{{Title|}}}}}}]]
This tells MediaWiki: "place this page in the category, and display it under the sort key equal to the DisplayTitle." Since MediaWiki renders the sort key as the display label in category listings, the full Malayalam title now appears correctly.
How it works
| Parameter | Example value |
|---|---|
| Page name | Something-In-The-Air
|
| DisplayTitle | Something in the Air?
|
| Category shows | Something in the Air? ✓ |
For Malayalam:
| Parameter | Example value |
|---|---|
| Page name | Kerala-Climate-Change
|
| DisplayTitle | കേരളത്തിലെ കാലാവസ്ഥാ വ്യതിയാനം
|
| Category shows | കേരളത്തിലെ കാലാവസ്ഥാ വ്യതിയാനം ✓ |