如何在 Joomla 中生成友好的 url?
Posted
技术标签:
【中文标题】如何在 Joomla 中生成友好的 url?【英文标题】:how to generate url friendly in Joomla? 【发布时间】:2010-11-30 23:42:31 【问题描述】:我对 joomla 1.5 友好的 url 有疑问(实际上并不那么友好) 我目前没有使用 SEF(我应该吗?)
这是我的问题
我有一些类别和部分。每个都有别名。
所以我可以查看所有新闻类别,例如访问 www.myxyz.com/news/
要检查一篇文章,生成的 url 将变为: www.myxyz.com/news/10-local-news-title-alias
我不知道 joomla 是如何生成该网址的。在我的模板中,我需要生成一些指向特定文章的链接。
所以我在模板中创建了一个助手:
// helper to get alias in mainMenu ... alias must be unique
function getMainMenu($menuAlias)
$items = &JSite::getMenu();
// Get Menu Items
$rows = $items->getItems('alias', $menuAlias);
if($rows)
//$result = JRoute::_(JURI::base().$rows[0]->link);
$result= JURI::base().substr(JRoute::_($rows[0]->link), strlen(JURI::base(true)) + 1);
return $result;
else
return JURI::base() ;// aka not found
但是当我进入像 www.myabc.com/news/7-local-news-alias 这样的页面时 网址会变得混乱并更改为错误的网址。
我应该使用 SEF 对 joomla url 友好吗?
【问题讨论】:
顺便说一句,你的“joomla”标签中的“o”太多了 【参考方案1】:您应该只在代码中使用普通网址。当你打开 SEF joomla!将自动将您创建的所有链接转换为 SEF 网址,当收到请求时,它会将它们恢复为您的常规网址...
【讨论】:
【参考方案2】:这有点令人费解,但链接到 SEF URL 的正确方法是使用原始的非 SEF 链接。您将需要:
文章ID 您的版块的菜单项的 Itemid(例如,链接到文章博客布局的菜单项等)然后你只需链接到:
index.php?option=com_content&view=article&id=42&Itemid=3
其中 42 是文章 ID,3 是菜单 ID。您的链接将如下所示:
/section-alias/42-the-article-alias
如果您错过了 Itemid,您的链接将如下所示(我认为):
/components/content/42-the-article-alias
【讨论】:
以上是关于如何在 Joomla 中生成友好的 url?的主要内容,如果未能解决你的问题,请参考以下文章