您需要從請求中選擇部分ID。
使用該工具來獲取相關的請求變量:
<?php
$option = JRequest::getWord('option', null);
$view = JRequest::getWord('view', null);
$idalias = JRequest::getVar('id', null);
if (strpos($idalias, ":") != false) {
$idandalias = explode(":", $idalias);
$id = $idandalias[0];
} else {
$id = JRequest::getInt ('id' , 0);
}
然後使用這樣的事情,看看你是什麼節,如果你是一個部分頁:
if ($option=="com_content" && $view=="section") {
$sectid = $id;
}
在第您可以只使用請求的頁面,但在其他頁面中,您還需要執行數據庫查詢:
else {
$database =& JFactory::getDBO();
if ($option=="com_content" && $view=="category") {
$query = "SELECT section FROM jos_categories WHERE id=$id";
}
if ($option=="com_content" && $view=="article" } {
$query = "SELECT sectionid FROM jos_content WHERE id=$id";
}
$database->setQuery($query);
$sectid = $database->loadResult();
}
當你有章節ID時,你可以用它來設置和插入正確的類。
if ($sectid == '3') {
$my_cars_section_class = 'three';
}
?>
<body class="<?php echo $my_cars_section_class; ?>">
這樣的事情應該這樣做。
這將使我獲得當前頁面的別名。如果我的部分只有一個頁面,這將工作正常。 但是,部分可以具有子頁面的層次結構。如果有人點擊最深的子頁面,該怎麼辦?別名將返回該子頁面的別名,而不是通知我根部分的名稱。 – Hady 2009-04-30 06:09:48