簡體   English   中英

Joomla:顯示菜單項的頁面標題

[英]Joomla: display page heading of menu item

如果已填充,我想顯示 Joomla 菜單項的頁面標題。 我試過這段代碼沒有成功:

<h1 class="title">
    <?php
        if (null === ($this->params->get('page_heading')))
        {
            $mydoc = JFactory::getDocument();
            $mytitle = $mydoc->getTitle();
            echo $mytitle;
        }
        else 
        {
            $active = JFactory::getApplication()->getMenu()->getActive();
            echo $active->params->get('page_heading');
        }
    ?>
</h1>

有什么建議嗎?

我已經這樣解決了自己:

<h1 class="title">
    <?php $menu  = JFactory::getApplication()->getMenu();
        $active = $menu->getActive();
        $mydoc = JFactory::getDocument();
        $mytitle = $mydoc->getTitle();
        $pageHeading = $active->params->get('page_heading');
        if($pageHeading != "")
        {
            echo $pageHeading;
        }
        else 
        {
            echo $mytitle;
        }
    ?>
</h1>

我有類似的需求,並注意到此代碼在 Joomla 4 中不起作用。這是我的解決方案:

Joomla 3

$menu = JFactory::getApplication()->getMenu()->getActive();
$title = $menu->title;
$page_heading = $menu->params->get('page_heading');
echo $page_heading ?? $title;

Joomla 4

$menu = JFactory::getApplication()->getMenu()->getActive();
$title = $menu->title;
$page_heading = $menu->getParams()->get('page_heading');
echo $page_heading ?? $title;

這兩者之間的唯一區別是如何獲取菜單項params ,J3 中的參數與 J4 中的getParams()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM