我正在创建一个新的插件测试,当我在我的wordpress插件区域激活时,没有任何反应......
有没有人有同样的问题? 我没有任何错误信息,只是没有发生......
提前致谢。
<?php
/*
Plugin Name: My Admin
Plugin URI:
Description: Seu admin personalizado.
Version: 0.1.4
Author: Vinícius Lourenço
Author URI:
Text Domain: my-admin
Domain Path: /languages
*/
register_activation_hook(__FILE__, 'ativar' );
function ativar(){
add_action('admin_menu','vilourenco_create_menu');
}
function vilourenco_create_menu(){
add_menu_page('Menu de Opções','ViLourenco Settings','administrator', 'admin_fera' , 'vilourenco_menu_page','dashicons-format-status');
add_action('admin_init','vilourenco_register_settings');
}
function vilourenco_register_settings(){
register_setting('vilourenco-options', 'nome');
register_setting('vilourenco-options', 'idade');
register_setting('vilourenco-options', 'cidade');
}
function vilourenco_menu_page(){
?>
<div class="wrap">
<?php screen_icon(); ?>
<h2>Vinicius Plugin</h2>
<?php if( isset( $_GET['settings-updated'] ) ) : ?>
<div class="updated">
<p>Configurações salvas com sucesso!</p>
</div>
<?php endif; ?>
<form method="post" action="options.php">
<?php settings_fields( 'vilourenco-options' ); ?>
<?php do_settings_sections( 'vilourenco-options' ); ?>
<table class="form-table">
<tr valign="top">
<th scope="row">Nome</th>
<td><input type="text" name="nome" value="<?php echo esc_attr( get_option('nome') ); ?>" /> </td>
</tr>
<tr valign="top">
<th scope="row">Idade</th>
<td><input type="text" name="idade" value="<?php echo esc_attr( get_option('idade') ); ?>" /> </td>
</tr>
<tr valign="top">
<th scope="row">Porte</th>
<td><input type="text" name="cidade" value="<?php echo esc_attr( get_option('cidade') ); ?>" /></td>
</tr>
</table>
<?php submit_button(); ?>
</form>
</div>
<?php } ?>
答案 0 :(得分:0)
register_activation_hook
的回调只执行一次,即激活时。它通常用于添加选项或创建数据库表。
注册插件设置和菜单应该在单独的功能中完成,连接到(admin)init。
http://codex.wordpress.org/Function_Reference/register_activation_hook