// Добавляем свою страницу настроек дверей
add_action('admin_menu', 'add_dveri_menu');
function add_dveri_menu() {
add_menu_page(
'Страница для дверей', // имя в меню
'Информация о дверях', // title страницы
'manage_options', // уровень доступа
'admin_dveri', // slug страницы
'render_help_page', // функция, отображающая собственно страницу
'dashicons-editor-help', // иконка
'70' // позиция в меню
);
add_options_page('Страница для дверей','Информация о дверях', 'manage_options', 'admin_dveri', 'render_admin_dveri_page' );
}
function render_admin_dveri_page() {
?>
<div class="wrap">
<h2><?php echo get_admin_page_title() ?></h2>
<form action="options.php" method="POST">
<?php
settings_fields( 'option_group' ); // скрытые защитные поля
// Русская версия ?
if(ICL_LANGUAGE_CODE=='ru')
do_settings_sections( 'primer_page' ); // секции с настройками (опциями).
// Украинская версия ??
elseif(ICL_LANGUAGE_CODE=='uk')
do_settings_sections( 'primer_page_ukr' ); // секции с настройками (опциями).
submit_button();
?>
</form>
</div>
<?php
}
/**
* Регистрируем настройки.
* Настройки будут храниться в массиве, а не одна настройка = одна опция.
*/
add_action('admin_init', 'plugin_settings');
function plugin_settings(){
// параметры: $option_group, $option_name, $sanitize_callback
register_setting('option_group','dveri_options');
// параметры: $id, $title, $callback, $page
// Для русской версии
add_settings_section('section_id','Информация для разных типов дверей','','primer_page');
// параметры: $id, $title, $callback, $page, $section, $args
add_settings_field('drevi_straj_standart','Поле для дверей TM STAJ Standart','drevi_straj_standart_callback','primer_page','section_id');
// Для украинской версии
add_settings_section( 'section_id_ukr', 'Информация для разных типов дверей (Украинская версия)', '', 'primer_page_ukr' );
// параметры: $id, $title, $callback, $page, $section, $args
add_settings_field('drevi_straj_standart_ukr','Поле для дверей TM STAJ Standart','drevi_straj_standart_callback_ukr','primer_page_ukr','section_id_ukr');
}
// Вызов функции для сохранения-отображения опции
function drevi_straj_standart_callback() {
$val = get_option( 'dveri_options' );
$val = $val['drevistrajstandart'];
wp_editor( $val, 'drevistrajstandart', array('textarea_name' => 'dveri_options[drevistrajstandart]','textarea_rows' => 10) );
}