2010-07-02 3 views
0

Я до исследования о создании WP Подключите и таким образом, я прочитал эту страницу - http://codex.wordpress.org/Creating_Options_PagesСоздание WP подключи в

Стараюсь пример, приведенный в этой странице, которая ниже код:

<?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 } ?> 

Все просто отлично, но когда я проверяю форму в администраторе WP, когда я вставляю данные в форму и нажимаю кнопку обновления, не появляется сообщение об обновлении.

Таким образом, мой вопрос заключается в том, как создавать сообщения об обновлении или сообщение об ошибке, когда люди вставляют данные в форму и нажимают кнопку отправки.

Большое спасибо за помощь!

ответ

1

Я не уверен в этом, но я бы предложил принять вызов add_action для регистрации ваших настроек из функции baw_create_menu, чтобы она была настроена перед административным меню. Я думаю, admin_init срабатывает перед admin_menu, поэтому функция register_mysettings не вызывается. Но я не уверен в этом.

Кроме того, я предлагаю читать следующие ресурсы на API настройки WordPress:

http://codex.wordpress.org/Settings_API

http://www.presscoders.com/wordpress-settings-api-explained/

http://ottodestruct.com/blog/2009/wordpress-settings-api-tutorial/

http://planetozh.com/blog/2009/05/handling-plugins-options-in-wordpress-28-with-register_setting/

Если вы используете API параметров правильно, сообщение появится автоматически. Конечно, другой вариант добавляет сообщение условно. I.e., проверьте, была ли форма отправлена, и если да, эхо сообщение в начале формы, сразу после названия страницы.

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