2017-05-25 75 views
0

我正在为wordpress制作一个自定义插件,我需要在管理菜单中创建一个页面。我已经有一个名为mailing_list.php用下面的代码文件:Wordpress在激活插件时添加菜单页

function jps_mail_list_page_entry() { 
add_menu_page(
    __('JPS Mailing List'), 
    'JPS Mailing List', 
    'manage_options', 
    'jpsNews_mailinglist', 
    'jpsNews_mailing_list', 
    'dashicons-email' 
); 
} 
add_action('admin_menu', 'jps_mail_list_page_entry'); 


function jpsNews_mailing_list() { 
    echo 'hello'; 
} 

现在,在插件页面,我有这样的:

function jpsNews_activate_plugin() { 
    include_once(plugin_dir_path(__FILE__).'pages/mailing-list.php'); 
} 
register_activation_hook(__FILE__,'jpsNews_activate_plugin'); 

它不工作的话,它甚至有可能做到这一点喜欢这个?我该怎么做?

在此先感谢。

+0

你有你的服务器日志什么? –

+0

不,我不。不是我看到的。 – eskimopest

回答

0

我不确定您是否有意为echo'hello'添加函数,但是这将在插件页面的内容区域中回显hello。

对于你的邮件,list.php的

function jps_mail_list_page_entry() { 
    add_menu_page(
     __('JPS Mailing List', 'jpsNews_mailinglist'), 
     'JPS Mailing List', 
     'manage_options', 
     'jpsNews_mailinglist', 
     'jpsNews_mailing_list', 
     'dashicons-email' 
    ); 
} 
add_action('admin_menu', 'jps_mail_list_page_entry'); 

的插件页面,你可以简单地做:

include_once(plugin_dir_path(__FILE__).'/pages/mailing-list.php'); 
0

得到它的工作。原来添加页面的功能必须在其他功能之外。只需将主题放在激活钩子之外的脚本末尾,它就可以工作。

// DISPLAY PAGES AND SUBPAGES 
function jps_mail_list_page_entry() { 
    add_menu_page(
     __('JPS Mailing List'), 
     'JPS Mailing List', 
     'manage_options', 
     'jpsNews_mailinglist', 
     'jpsNews_mailing_list', 
     'dashicons-email' 
    ); 
} 
add_action('admin_menu', 'jps_mail_list_page_entry'); 


function jpsNews_mailing_list() { 
    include_once(plugin_dir_path(__FILE__) . 'pages/mailing-list.php'); 
} 

无论如何,感谢=)

相关问题