我想建立一个定制的调查,并显示他的结果在wordpress后端。
我添加了一个新的管理菜单项如下:
add_action( 'admin_menu', 'register_survey' );
function register_survey(){
add_menu_page( 'Survey', 'Survey', 'manage_options', '/survey/survey-admin.php', '', '/wp-admin/survey/icon.png', 30 );
}
名为Survey的菜单项出现在后端。当我单击它时,它会转到/wp-admin/survey-admin.php,显示我的php文件内容,但是仪表板与侧边栏菜单不兼容.此页面对每个人都是可见的,而wordpress函数is_admin在此页面中不再工作.
正确的解决办法是什么?我只想在wordpress后端显示我的自定义页面,并且能够检查用户是否是管理员。我需要为此创建一个插件吗?
谢谢!
发布于 2014-01-09 01:26:07
我通过创建一个插件并添加以下代码找到了解决方案:
<?php
add_action( 'admin_menu', 'register_survey' );
function register_survey() {
//create new top-level menu
add_menu_page('Survey', 'Survey', 'administrator', __FILE__, 'survey_page',plugins_url('/icon.png', __FILE__));
}
function survey_page() {
?>
<div class="wrap">
<h2>Survey</h2>
MY TEXT HERE
<?php if ( is_admin() ) {
echo '<p>is admin!</p>';
}
?>
</div>
<?php } ?>
发布于 2014-01-08 08:27:57
另一个解决方案是使用current_user_can()
检查用户功能。
if ( current_user_can('edit_files') ) {
add_action( 'admin_menu', 'register_survey' );
}
下面列出了每种类型的用户的功能:Capabilities#Administrator
https://stackoverflow.com/questions/20999473
复制