Joomla 4で現在のメニューモデルを取得する方法を知っている人はいますか? 2.5/3.Xでは、次のコードを使用していました。
$model = JModelLegacy::getInstance( 'MenusModelItem' )
->getItem();
しかし、これは4でもう機能していません。J4でそれを取得する方法を見つけることができません。
よろしく、ラデク
Joomla 4でメニューアイテムを取得するには、次のように工場からアイテムを取得できます。
use Joomla\CMS\Factory;
$menu = Factory::getApplication()->getMenu();
$active = $menu->getActive();
getActive()は現在のメニュー項目を提供します。必要に応じて、他のメソッドgetDefault()またはgetItem()を使用できます。
次のようなメニュータイプのメニュー項目を取得できます。
$items = $menu->getItems('menutype', 'mainmenu');