我想在我的鏈接到MediaWiki的皮膚來顯示頁面的類別當前頁面的類別列表,而不訴諸下面的默認代碼:獲得MediaWiki的
<?php if ($this->data['catlinks']) { $this->html('catlinks'); } ?>
這增加了一堆不必要的HTML的我就不說了想。
<div id='catlinks' class='catlinks'>
<div id="mw-normal-catlinks" class="mw-normal-catlinks">
<a href="/wiki/Special:Categories" title="Special:Categories">Category</a>:
<ul><li><a href="/w/index.php?title=Category:Player_Character&action=edit&redlink=1" class="new" title="Category:Player Character (page does not exist)">Player Character</a></li></ul>
</div>
</div>
理想的情況下,我只想得到類別名稱爲純文本或數組,但我不希望從由上面的代碼返回的HTML推斷它們。
如何將MediaWiki頁面的類別作爲純文本回顯?
更新:
我使用此代碼爲我的百科分類麪包屑。從最頂級的類別開始,並開始工作。 (沒有過度測試)。請注意,這可能非常黑客,並且作爲Extension可能會更好。
// Get the current page's Title
$wiki_title = $this->data['skin']->getTitle();
// Get the categories
$parenttree = $wiki_title->getParentCategoryTree();
// Skin object passed by reference cause it can not be
// accessed under the method subfunction drawCategoryBrowser
$tempout = explode("\n", $this->data['skin']->drawCategoryBrowser($parenttree));
// Convert data to usable array
$wiki_category_breadcrumbs = explode(">", $tempout[1]);
// Returns every category as URL with <li> tags wrapped around it
foreach($wiki_category_breadcrumbs as $value) {
echo "<li>". $value ."</li>";
}
你期望的輸出? – Pooya
我打算將類別存儲在變量中,然後我將使用它來生成麪包屑並向特定元素添加類別特定的類。所以它可以是任何從純文本到數組。 – Swen
'$ this'是什麼?最後我檢查了幾種建築皮膚的不同方法;你能否提供更多的細節? – miken32