2

Joomla 3.1 を SEF と mod の書き換えで使用します。
「メニュー項目エイリアス」が参照するメニュー項目のリンクを取得するにはどうすればよいですか?
以下のコードを使用すると、「メニュー エイリアス」宛先ではなく、メニュー項目エイリアスのエイリアス フィールドがレンダリングされます。

 $menu->getItem($men->id)->route  
4

1 に答える 1

0

これが最善のアプローチだとは思いませんが、たとえば、データベースからこれをロードできます...

$menuLink=""; //to be used to store the result of our query
$alias='somealias'; //I am guessing you will already have the alias ready from some source

//query the database to find the link corresponding to this alias
$db=JFactory::getDbo();
$query=$db->getQuery(true);
$query->select('link');
$query->from('#__menu');
$query->where("alias='" . $alias . "'");
$db->setQuery($query);
try
{
    $result=$db->loadObject();
    $menuLink=$result->link;
}
catch(RuntimeException $e)
{
    JError::raiseError(500, $e->getMessage());
}

誰かがより良い方法を思いついたら、それも良いでしょう:)これは私が通常行う方法ですが、私にとってはうまくいきます。お役に立てれば。

于 2014-05-08T07:40:19.950 に答える