2010-04-01 54 views
1

我使的Joomla SEF,并得到下面的结果,当我从一个网页(头版)的文章链接到一篇文章:joomla SEF显示主页上的内容不同于内部页面!

anywebsite.com/component/content/article/26/141-Z1-Z2- Z3,Z4

而是从其他文章链接时,我得到了我想要的结果是:

anywebsite.com/Categor/141-Z1-Z2-Z3-Z4

和链接既是等于:

index .php?option = com_content & view = article & id = 141:Z1-Z2-Z3-Z4 & catid = 26 任何想法?

编辑:手动链接这个SEF链接是一个好主意,而不是等待joomla转换它..?至少作为最后的手段?

回答

1

当没有任何Itemid(又名菜单项)与内容关联时,第一个SEF URL是默认的Joomla SEF格式。你用来“链接到hompage的文章”没有提供Joomla需要构建/ Category/141 ... URL的Itemid。

如果您想完全控制,我会建议您使用另一个SEF管理​​组件,如AceSEF或sh404SEF,它们倾向于为URL管理提供更多控制。

0

如果你想删除控制器部分,你可以得到默认的菜单项,并将它的id从你的路由器中查询到。

在你的路由器:

if (!isset($query['Itemid']) { 
    $app =& JFactory::getApplication(); 
    $menu =& $app->getMenu(); 
    $item =& $menu->getActive(); 

    // Do a check to see if $item is set to something. If no active item, get the default: 

    if (!$item) $item =& $menu->getDefault(); 

    $query['Itemid'] = $item->id; 
} 
相关问题