Перво-наперво, вам нужен обработчик на вашей странице администратора, чтобы сделать что-то с информацией, которая была отправлена обратно. Этот обработчик будет разделом кода, который фактически обновляет вашу таблицу базы данных.
Пример страницы меню в кодексе WP содержит пример того, как проверить отправленные данные POST. Вот отрывок для работы с:
// mt_options_page() displays the page content for the Test Options submenu
function mt_options_page() {
// variables for the field and option names
$opt_name = 'mt_favorite_food';
$hidden_field_name = 'mt_submit_hidden';
$data_field_name = 'mt_favorite_food';
// Read in existing option value from database
$opt_val = get_option( $opt_name );
// See if the user has posted us some information
// If they did, this hidden field will be set to 'Y'
if( isset($_POST[ $hidden_field_name ]) && $_POST[ $hidden_field_name ] == 'Y' ) {
// Read their posted value
$opt_val = $_POST[ $data_field_name ];
// Save the posted value in the database
update_option( $opt_name, $opt_val );
// Put an options updated message on the screen
?>
<div class="updated"><p><strong><?php _e('Options saved.', 'mt_trans_domain' ); ?></strong></p></div>
<?php
}
// Now display the options editing screen
Вместо того, чтобы обновлять опцию WordPress, вы вставляете данные в свою собственную таблицу. Поэтому я бы заменил вызов функции update_option( $opt_name, $opt_value);
на вызов вашей собственной функции, которая вставляет информацию в базу данных.
Если ничего другого, это даст вам начало. Для более глубокого примера, не стесняйтесь просматривать код, который я создал для плагина под названием RegLevel . Он имеет единую страницу администратора, которая позволяет вставлять информацию в базу данных. Взгляните на код, чтобы увидеть, как он работает, возможно, вы сможете изменить его назначение в своей собственной системе.