gpt4 book ai didi

php - 如何仅在 joomla 主页上显示消息?

转载 作者:行者123 更新时间:2023-12-04 05:07:52 28 4
gpt4 key购买 nike

如何只在joomla的主页上显示消息?
我有兴趣在 site.com 上显示它,而不是在 site.com/index.php/page 或其他任何网站上显示它,然后是 site.com。

我已经测试了以下内容:

    <?php $app = JFactory::getApplication(); 
$menu = $app->getMenu();
$lang = JFactory::getLanguage();
if ($menu->getActive() == $menu->getDefault($lang->getTag())) : ?>this is the homepage
<?php endif; ?>

而这
<?php $menu = & JSite::getMenu();
if ($menu->getActive() == $menu->getDefault()) {
echo "this is the homepage";
}
?>

问题是我仍然可以在 http://site.com/index.php/category/id/78-article 之类的页面上看到“这是主页”的消息。这显然不是主页。好像每当链接中有index.php时,上面的代码就认为它是属于主页的。

最佳答案

这与链接中的“index.php”无关。相反,它与 http://site.com/index.php/category/id/78-article 处的链接有关。没有与之关联的菜单项。要完全按照您的要求执行操作,您可能需要对代码进行一些处理,并检查以确保实际页面的信息与主页信息匹配:

$jinput = JFactory::getApplication()->input;
$menu = & JSite::getMenu();
$active = $menu->getActive();
$default = $menu->getDefault();
if (
$active == $default &&
$jinput->get('option') == $default->query['option'] &&
$jinput->get('view') == $default->query['view'] &&
$jinput->get('id') == $default->query['id']
) {
echo "This is the homepage";
}

我正在检查默认菜单项选项(哪个组件)以及针对输入中设置的 View 和 id 值。

http://site.com/index.php/category/id/78-article此链接会将 id 设置为 78,并且可能会更改主页菜单中定义的 View 和选项,因此不会发生触发器。

关于php - 如何仅在 joomla 主页上显示消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15281911/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com