Изграждане на потребителски интерфейси и опции в административната част на WordPress
WordPress е най-популярната платформа за управление на съдържание (CMS) в света, и с право – тя предлага огромна гъвкавост и богат набор от функции за създаване на уебсайтове и блогове. Освен голямото разнообразие от теми и плъгини, които са на разположение, WordPress позволява на разработчиците да създават свои собствени потребителски интерфейси и опции в административната част на сайта. В тази публикация ще разгледаме как да изградим потребителски интерфейси и опции в административната част на WordPress.
Стъпка 1: Създаване на функция за добавяне на опции
Първата стъпка при създаването на потребителски интерфейс и опции в административната част на WordPress е да създадем функция, която ще добави опциите към административното меню. За да направим това, добавете следния код във файла functions.php на вашата тема:
function custom_admin_options() {
add_menu_page(
'Моите опции',
'Моите опции',
'manage_options',
'my_options',
'my_options_page_content',
'dashicons-admin-tools',
100
);
}
add_action('admin_menu', 'custom_admin_options');
Този код добавя ново меню с името „Моите опции“ в административната част на WordPress. add_menu_page
функцията използва различни параметри, като заглавие, име на менюто, способността да управлява опциите, идентификатор на страницата, име на функцията, която ще изобрази съдържанието на страницата, иконка и позиция.
Стъпка 2: Създаване на функция за съдържанието на страницата с опциите
След като добавите менюто, следващата стъпка е да създадете функцията, която ще изобразява съдържанието на страницата с опциите. Добавете следния код във файла functions.php:
function my_options_page_content() {
?>
<div class="wrap">
<h1><?php echo esc_html(get_admin_page_title()); ?></h1>
<form action="options.php" method="post">
<?php
settings_fields('my_options_group');
do_settings_sections('my_options');
submit_button('Запази промените');
?>
</form>
</div>
<?php
}
Този код добавя формуляр на страницата с опциите, който ще позволи на потребителите да запазват своите промени. Функциите settings_fields
и do_settings_sections
изобразяват опциите, които са регистрирани чрез register_setting
и add_settings_section
.
Стъпка 3: Регистриране на опциите и секциите
За да регистрирате вашите опции и секции, добавете следния код във файла functions.php:
function my_options_init() {
register_setting('my_options_group', 'my_options', 'my_options_sanitize');
add_settings_section(
'my_options_section',
'Настройки на моите опции',
'my_options_section_callback',
'my_options'
);
add_settings_field(
'my_option_field',
'Моята опция',
'my_option_field_callback',
'my_options',
'my_options_section'
);
}
add_action('admin_init', 'my_options_init');
Този код регистрира опцията „my_options“ и добавя секция „my_options_section“ със заглавие „Настройки на моите опции“ и секция за обратно извикване. Също така се добавя поле „my_option_field“ в тази секция.
Стъпка 4: Създаване на функции за обратно извикване на секциите и полетата
За да изобразите съдържанието на секциите и полетата, създайте функциите за обратно извикване, които са посочени в предходната стъпка. Добавете следния код във файла functions.php:
function my_options_section_callback() {
echo '<p>Тук можете да персонализирате своите опции.</p>';
}
function my_option_field_callback() {
$options = get_option('my_options');
?>
<input type="text" name="my_options[my_option]" value="<?php echo esc_attr($options['my_option']); ?>">
<?php
}
Стъпка 5: Създаване на функция за обработка на данните
За да обработите и запазите данните, когато потребителят попълва формуляра, създайте функцията за обработка на данните. Добавете следния код във файла functions.php:
function my_options_sanitize($input) {
$output = array();
$output['my_option'] = sanitize_text_field($input['my_option']);
return $output;
}
Тази функция проверява входните данни и използва sanitize_text_field
функцията за да гарантира, че текстовото поле е санитарно преди да бъде запазено.
Следвайки горните стъпки, вие успешно създадохте потребителски интерфейс и опции в административната част на WordPress. Разбира се, това е само основата, и можете да разширите вашите опции и функционалност, като добавите допълнителни полета, секции и валидация, в зависимост от вашите нужди и изисквания.
Създаването на персонализирани опции и интерфейс в административната част на WordPress е ефективен начин да подобрите управлението на вашите сайтове, като предоставите на вашите клиенти или на вас удобни инструменти за настройка на темата или плъгина.