OK夥計們,最終,我能夠使它工作。這就是我下面
比方說做,我有2個插件叫做合作伙伴和屬性。
在合作伙伴插件,我在我的Plugin.php文件中編寫了類似這樣的代碼。
插件\ technobrave \合作伙伴\ Plugin.php
<?php namespace Technobrave\Partners;
use System\Classes\PluginBase;
use Backend;
use Event;
class Plugin extends PluginBase
{
public function registerNavigation()
{
return [
'modules' => [
'label' => 'Modules',
'url' => Backend::url('technobrave/properties/properties'),
'icon' => 'icon-bars',
'permissions' => ['Technobrave.Property.*'],
'sideMenu' => [
'properties' => [
'label' => 'Properties',
'icon' => 'icon-home',
'url' => Backend::url('technobrave/properties/properties'),
'permissions' => ['Technobrave.Property.*']
],
'partner' => [
'label' => 'Partners',
'icon' => 'icon-thumbs-up',
'url' => Backend::url('technobrave/partners/partners'),
'permissions' => ['Technobrave.Partner.*']
],
]
]
];
}
在這裏,你可以在上面看到,我的頭菜單鏈接會重定向到屬性插件按我的要求和左側邊欄菜單,我的第一個鏈接也將被重定向到屬性插件和下一個子菜單鏈接將被重定向到合作伙伴插件。
然後我去了合作伙伴控制器,並把代碼放在下面。
插件\ technobrave \合作伙伴\ \控制器Partners.php
<?php namespace Technobrave\Partners\Controllers;
use Backend\Classes\Controller;
use BackendMenu;
class Partners extends Controller
{
public function __construct()
{
parent::__construct();
BackendMenu::setContext('Technobrave.Partners', 'modules', 'partner');
}
}
這裏上面,你可以看到,我剛纔執行菜單爲合作伙伴插件能夠顯示它的時候我處於合作伙伴列表或CRUD操作或某處。
我爲
屬性插件要做的事
類似的事情,以便能夠顯示菜單屬性插件。這是我的代碼的樣子。
插件\ technobrave \ \性能\控制器Properties.php
<?php namespace Technobrave\Properties\Controllers;
use Backend\Classes\Controller;
use BackendMenu;
class Properties extends Controller
{
public function __construct() {
parent::__construct();
BackendMenu::setContext('Technobrave.Partners', 'modules', 'properties');
}
}
這裏有一點要注意,這個代碼BackendMenu::setContext('Technobrave.Partners', 'modules', 'properties');
最後一個參數是比我們已經把不同的合作伙伴插件。 BackendMenu::setContext('Technobrave.Partners', 'modules', 'properties');
這是設置爲左側邊欄列表中的默認選定菜單。
希望這會有所幫助。
嗨@MittulAtTechnoBrave你有沒有設法解決有多個插件的一個菜單? – Nilan