0

我无法让 Redux Options Framework 为我的插件工作。我试图将设置作为子菜单添加到我的插件中。

我创建了一个简化的演示插件,也可以批准这种行为。

<?php
/**
 * Plugin Name: Redux sample plugin
 * Plugin URI: http://URI_Of_Page_Describing_Plugin_and_Updates
 * Description: A brief description of the Plugin.
 * Version: The Plugin's Version Number, e.g.: 1.0
 * Author: Name Of The Plugin Author
 * Author URI: http://URI_Of_The_Plugin_Author
 * License: A "Slug" license name e.g. GPL2
 */

require_once(plugin_dir_path(__FILE__) . 'inc/admin/admin-init.php'); 

function redux_sample_plugin_log() {
}

function createSettingsMenue() {

        $pluginSlug = 'redux_sample_plugin';
        //create new top-level menu
        add_menu_page('Redux Sample Plugin'),
                        'Redux Sample Plugin',
                        'administrator',
                        $pluginSlug . '_log',
                        'LogMenu'
                                );

        /*add_submenu_page( $pluginSlug . '_log',
                        null,
                        'Im a silly dummy entry',
                        'administrator',
                        'dummy',
                        '__return_null'  );*/
}
add_action( 'admin_menu', 'createSettingsMenue', 9 );

我将配置更改为:

...
    'page_slug' => 'my_plugin_settings',
    'page_title' => 'Settings'
    'menu_type' => 'submenu',
    'page_parent' => 'redux_sample_plugin_log',
...

上面的代码未显示菜单(案例 1 插图)。如果您在子菜单函数中添加注释,则会正确显示 redux 选项(案例 2 插图)。我花了很多时间,但无法让它工作。我确信这一定是一个错误,我在 github 问题跟踪器 (#1745) 上打开了一个案例,并提供了一些额外的细节。他们说我可能做错了。有人可以帮帮我吗?

//编辑为这两种情况添加了屏幕截图

案例

//Edit 此行为在 Redux 3.3.9.35 中已修复。不再需要添加另一个页面作为解决方法。

4

3 回答 3

1

尝试为“admin_menu”挂钩添加较低的优先级。优先级 9 对我有用。

add_action( 'admin_menu', 'register_my_custom_menu_page', 9);

function register_my_custom_menu_page(){
    add_menu_page( "Options", "Options", 'manage_options', "slug_options", 'function_to_call', '', 81 );
    add_submenu_page( 'slug_options', 'My Custom Page', 'My Custom Page', 'manage_options', 'sub-menu-slug', 'function_to_call_sub');
}

Redux 配置:

'menu_type'            => 'submenu',
'allow_sub_menu'       => true,
'page_parent'          => "slug_options",
'page_permissions'     => 'manage_options',

对我来说工作得很好。

于 2014-11-20T15:27:12.347 回答
0

所以 Redux 创建了它自己的菜单。您是否要使其成为菜单的子菜单?

页面父级通常是一个 php 文件...

于 2014-10-20T18:15:12.473 回答
0

此行为已在 Redux 3.3.9.35 中修复。不再需要添加另一个页面作为解决方法。

于 2015-01-25T14:40:20.080 回答