Wordpress插件开发FAQ
- 如何添加插件的option页面:
function your_function_name_here() {
if (function_exists('add_options_page')) {
add_options_page('subpaneltitle', 'submenuitemname',
minuserlevel, basename(__FILE__), 'my_options_subpanel');
}
}
add_action('admin_menu', 'your_function_name_here');
- 添加子菜单:
function mycategoryorder_menu()
{
if (function_exists('add_submenu_page')) {
add_submenu_page("edit.php", 'My Category Order', 'My Category Order',
2,"mycategoryorder",'mycategoryorder');
}
}
add_action('admin_menu', 'mycategoryorder_menu');
或(添加顶层菜单)
function fm_post_add_options() {
add_menu_page('FileManager', 'FileManager', 8, '../wp-admin/fm.php');
}
add_action('admin_menu', 'fm_post_add_options');
- 选项处理函数:
往数据库中添加选项:
add_option($name, $value, $description, $autoload);
获取选项值:
get_option($option);
更新选项值:
update_option($option_name, $newvalue);
- option处理的一般步骤是什么样的:
add_option('ddle_header', '
Latest Post From Each Category
');
...
function ddle_add_option_pages() {
if (function_exists('add_options_page')) {
add_options_page('Latest From Each Category', 'DDLatestFromEach', 8,
__FILE__, 'ddle_options_page');
}
}
function ddle_options_page() {
if (isset($_POST['info_update'])) {
?>update_option('ddle_header', (string) $_POST["ddle_header"]);
echo "Configuration Updated!";
?>} ?>
... - 如何实现<!--xxx-->这样的内置标签功能:
function ddle_generate($content) {
$content = str_replace("", dd_last_from_each(), $content);
return $content;
}
add_filter('the_content', 'ddle_generate');
- 如何往页面内加入JavaScript或者CSS?
add_action('admin_head', array(&$wp_cats, 'header_inserts'));class wp_cats {
function header_inserts() {
global $parent_file;if ('edit.php' == $parent_file) {
echo '' . "\n";
echo '' . "\n";
echo ' ';
}
}
}



Comments
No comments yet.