关于has_cap 的支持角色和兼容性

Notice: 自 2.0 版本后,has_cap 的一个调用参数已不被建议使用!请换用 插件和主题中,用户等级的使用已不被支持。请换用角色和兼容性

如果你使用的是WP3以上的版本 而且打开了debug模式 很可能遇到这个问题 当然如果你没安装旧版本的插件 应该是遇不到这个问题的。

原因是:add_options_page 这个函数的第三个参数发生了变化,以前的版本是用一个数字,新版本是用字符,权限控制的改版!

具体那些可以使用请看官方的API文档

文档地址:http://codex.wordpress.org/Roles_and_Capabilities#manage_options

能够修改配置文件的角色是:manage_options

add_action('admin_menu', 'my_plugin_menu');

function my_plugin_menu() {

add_options_page('My Plugin Options', 'My Plugin', 'manage_options', 'my-unique-identifier', 'my_plugin_options');

}

<?php

// create custom plugin settings menu

add_action('admin_menu', 'baw_create_menu');

function baw_create_menu() {

//create new top-level menu

add_menu_page('BAW Plugin Settings', 'BAW Settings', 'administrator', __FILE__, 'baw_settings_page',plugins_url('/images/icon.png', __FILE__));

//call register settings function

add_action( 'admin_init', 'register_mysettings' );

}

function register_mysettings() {

//register our settings

register_setting( 'baw-settings-group', 'new_option_name' );

register_setting( 'baw-settings-group', 'some_other_option' );

register_setting( 'baw-settings-group', 'option_etc' );

}

function baw_settings_page() {

?>

<div class="wrap">

<h2>Your Plugin Name</h2>

<form method="post" action="options.php">

<?php settings_fields( 'baw-settings-group' ); ?>

<table class="form-table">

<tr valign="top">

<th scope="row">New Option Name</th>

<td><input type="text" name="new_option_name" value="<?php echo get_option('new_option_name'); ?>" /></td>

</tr>

<tr valign="top">

<th scope="row">Some Other Option</th>

<td><input type="text" name="some_other_option" value="<?php echo get_option('some_other_option'); ?>" /></td>

</tr>

<tr valign="top">

<th scope="row">Options, Etc.</th>

<td><input type="text" name="option_etc" value="<?php echo get_option('option_etc'); ?>" /></td>

</tr>

</table>

<p class="submit">

<input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />

</p>

</form>

</div>

<?php } ?>

 

User Level to Role Conversion

 

Tag(s):
  • QQshuqian
  • Del.icio.us
  • Baidu
  • Google
  • Fanfou
  • FriendFeed
1 Comments Contributed by Visitors
  1. rebutton皇家元林 | 14:49@11-06-29 1 皇家元林

    :sad: :sad: 还是没看懂。。。做插件用的?

Leave Comments Here...

:smile: :grin: :sad: :eek: :shock: :???: :cool: :lol: :mad: :razz: :oops: :cry: :evil: :twisted: :wink: :?: :idea: :neutral:

必填

必填&保密

随您

Ctrl+Enter

  • 已部署"白忙活" Anti-Spam 系统,猪肉 Spammer 请注意查看源代码链接处。
  • 本站不会泄露您的邮件地址,敬请放心。
  • 支持常用 HTML 代码调用,插入 PHP 代码需注意:< = &lt;> = &gt;
  • 仅当某人针对您的评论做出回应时,您才会收到由本站发出的通知信件。
  • 如您希望以相同方式通知某位网友,请点击 Reply 按钮,或自行输入 @对方名字:
  • 鼠标移至评论列表中的 @someone: 区域即可自动显示 someone 的评论内容。

您直接访问了本站! 嘿嘿