2015-05-04 5 views
0

Я пытаюсь создать панель параметров WordPress. Страница опций отображается нормально, но на отправке формы я получаю:Создать тему WordPress:

ERROR: options page not found.

Это мой код.

<?php 
 
/* 
 
Plugin Name: Option Man 
 
Description: A test plugin to manage site 
 
Author: Pravin Mishra 
 
Version: 0.1 
 
*/ 
 
add_action('admin_menu', 'test_plugin_setup_menu'); 
 
function test_plugin_setup_menu(){ 
 
     add_menu_page('Option-Man-Plugin', 'Option Man', 'manage_options', 'test-plugin', 'test_init'); 
 

 
} 
 

 
function test_init(){ 
 

 
    add_action('admin_init', 'register_my_setting'); 
 

 
function register_my_setting() { 
 
    //register_setting('myoptions-group', 'my_option_name', 'intval'); 
 
    register_setting(‘myoptions-group’, ‘testplugin_option1′); 
 

 
    register_setting(‘myoptions-group’, ‘testplugin_option2′); 
 
} 
 
\t echo "Hello world!"; 
 
\t ?> 
 
    <div class="wrap"> 
 
     <u><h2>BS3 Custom Options</h2></u> 
 
     <form method="post" action="http://192.168.2.139/web/wp-admin/options.php"> 
 
     <?php //settings_fields('myoptions-group'); 
 
     //do_settings_sections('myoption-group'); 
 
     settings_fields('myoptions-group'); 
 
\t \t \t \t ?> 
 
<input type="text" name="testplugin-option1" value="<?php echo get_option('testplugin_option1'); ?>"/> 
 
<input type="text" name="testplugin-option2" value="<?php echo get_option('testplugin_option2'); ?>"/> 
 

 

 
\t \t \t \t <?php 
 
\t \t \t submit_button(); 
 
      ?> 
 
</form> 
 
</div> 
 
<?php 
 
} 
 
?>

ответ

1

Изменение <form method="post" action="http://192.168.2.139/web/wp-admin/options.php"> в <form method="post" action="">

+0

Спасибо, теперь он работает, но теперь он не вставляет значения в таблицу wp_options –

+0

Вам нужно добавить его. Вы не написали ни одного кода для этого! –

+0

, но вставка обрабатывается wordpress. Я думаю, –

1

У меня есть правильный код, теперь он работает нормально.

add_action('admin_menu', 'test_plugin_setup_menu'); 
function test_plugin_setup_menu(){ 
     add_menu_page('Option-Man-Plugin', 'Option Man', 'manage_options', __FILE__, 'test_init'); 

    add_action('admin_init', 'register_my_setting'); 
} 

function register_my_setting() { 
    //register_setting('myoptions-group', 'my_option_name', 'intval'); 
    register_setting('myoptions-group', 'testplugin_option1'); 

    register_setting('myoptions-group', 'testplugin_option2'); 
} 

function test_init(){ 
    ?> 
    <div class="wrap"> 
     <u><h2>BS3 Custom Options</h2></u> 
     <form method="post" action="options.php" enctype="multipart/form-data"> 
     <?php 
     settings_fields('myoptions-group'); 
     do_settings_sections('myoptions-group'); 
     ?> 

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


     <?php 
     submit_button(); 
      ?> 
</form> 
</div> 
<?php 
} 

Ваше имя и имя поля не совпадают, а также неправильный путь страницы параметров.

Смежные вопросы