Я разрабатываю плагин Wordpress, и у него есть шорткод, который я использую для распечатки содержимого на страницу / пост.
В моем файле плагина я инициализировал все страницы меню и настройки, у меня 2настройки на странице администрирования плагина, и одним из них является Brand Color, так что пользователи могут изменять цвет фирменного стиля формы, которую выдает шорткод.
Данные сохраняются в таблице параметров wp в WordPress и все работаетХорошо, проблема в том, что когда я пытаюсь отобразить содержимое переменной, ничего не происходит?
Что я сделал:
Сначала я добавил глобальную переменную массива в верхней части моего php-файла плагина.:
$options = array();
options_init(){
if(current_user_can('manage_options')):
global $options;
if(isset($_POST['form_submitted'])){
$hidden = esc_html($_POST['form_submitted']);
if($hidden == 'Y'){
$Brand = $_POST['brand_color'];
$options['brand_color'] = $Brand;
update_option('general_info', $options);
}
}
$options = get_option('general_info');
endif
}
Итак, теперь я сохранил данные, затем извлек их и сохранил в своей переменной options.В другой функции я создаю функцию шорткода и контент, который отображается на экране, когда шорткод используется.
Сначала я вызываю свою глобальную переменную, а затем вывод для содержимого шорткода.
add_shortcode('my-form', 'budget_form');
function budget_form() {
global $options;
?>
<div class="monkey-budget-planner-wrapper">
<div class="monkey-header-wrapper" style="background:<?php echo $options['brand_color'] ?>">
</div>
</div>
<?php
}
Проблема в том, что стиль не выводится, ошибок нет, и в инспекторе я вижу, что вывод пуст.Я не уверен, что я делаю не так?