为编辑提供访问特定插件的权限--将“admin.php”改为“edit.php”

时间:2016-08-23 作者:elfi812

我正在使用Business Opening Hours 插件。我使用Client Dash 插件,但当编辑器单击它时,他们无法访问它,只有管理员才能访问,我如何更改它?

我在插件中发现了一些代码片段,我可以在这里更改一些内容吗?

if( is_admin() )
$bizohours_settings_page = new BizoHoursSettingPage();

public function __construct()
    {
        add_action( \'admin_menu\', array( $this, \'bizohours_plugin_page\' ) );
        add_action( \'admin_init\', array( $this, \'bizohours_page_init\' ) );
    }

/**
 * Add plugin page
 */
public function bizohours_plugin_page()
{
    // This page will be in "Dashboard Menu"
    add_menu_page(
        __(\'Settings Admin\', \'bizo-hours\'), 
        __(\'Öffnungszeiten\', \'bizo-hours\'), 
        \'manage_options\', 
        \'bizohours-setting-admin\', 
        array( $this, \'bizohours_admin_page\' ),
        plugins_url( \'images/icon.png\',__FILE__)
    );
}

1 个回复
SO网友:Ethan O\'Sullivan

正如我所提到的,编辑插件的源代码不是最佳做法,因为如果要从作者那里获得最新更新,这将被覆盖。

尽管如此Business Opening Hours 为编辑器显示的插件打开/business-opening-hours/bizo-hours.php 并调整以下行。在撰写本文时,该插件的当前版本是v1。0.7:

第614-616行更换

/**** Instantiate Class ****/
if( is_admin() )
    $bizohours_settings_page = new BizoHoursSettingPage();
使用

/**** Instantiate Class ****/
$bizohours_settings_page = new BizoHoursSettingPage();
第26-40行更换

/**
 * Add plugin page
 */
public function bizohours_plugin_page()
{
    // This page will be in "Dashboard Menu"
    add_menu_page(
        __(\'Settings Admin\', \'bizo-hours\'), 
        __(\'Business Hours\', \'bizo-hours\'), 
        \'manage_options\', 
        \'bizohours-setting-admin\', 
        array( $this, \'bizohours_admin_page\' ),
        plugins_url( \'images/icon.png\',__FILE__)
    );
}
使用

/**
 * Add plugin page
 */
public function bizohours_plugin_page()
{
    // This page will be in "Dashboard Menu"
    add_menu_page(
        __(\'Settings Admin\', \'bizo-hours\'), 
        __(\'Business Hours\', \'bizo-hours\'), 
        \'edit_others_pages\', 
        \'bizohours-setting-admin\', 
        array( $this, \'bizohours_admin_page\' ),
        plugins_url( \'images/icon.png\',__FILE__)
    );
}

相关推荐

在metabox中使用wp_EDITOR tinyMCE导致离开页面时出现表单警告

在自定义帖子类型元框中使用tinyMCE作为wp\\u编辑器,在我尝试提交或想要更改位置时创建警报我没有使用Quicktags这样的行为,但由于TinyMCE更容易使用,我想使用它。我知道在metabox中使用tinymce可能会导致问题,因为它不能在dom中移动,但这不是问题所在。我还使用了wordpress codex中推荐的挂钩、“edit\\u page\\u form”、“edit\\u form\\u advanced”和“dbx\\u post\\u sidebar”,但它并没有解决我的问题