andre_revin
@andre_revin
andrerevin.com

Как сохранить настройки и данные при обновлении WP темы?

Есть в кастомайзере настройка подвала, там текст введеный пользователем. Как сохранить этот текст при обновлении темы?

Для обновления темы использую:
Theme Update Checker Library 1.2 w-shadow.com

Пример кода настройки подвала.
/**
* Footer
*/
function dco_customize_register($wp_customize) {
    //FOOTER
    $wp_customize->add_section('footer', array(
        'title' => 'Footer',
        'priority' => 1,
    ));

    //footer text
    $setting_name = 'footer_text';
    $wp_customize->add_setting($setting_name, array(
        'default' => 'Redy',
        'sanitize_callback' => 'sanitize_textarea_field',
        'transport' => 'postMessage'
    ));

    $wp_customize->add_control($setting_name, array(
        'section' => 'footer',
        'type' => 'textarea',
        'label' => 'Footer text',
    ));
    
    $wp_customize->selective_refresh->add_partial($setting_name, array(
        'selector' => '.footer-desc',
        'render_callback' => function() use ($setting_name) {
            return nl2br(get_theme_mod($setting_name));
        }
    ));
    
}
    add_action( 'customize_register', 'dco_customize_register' );

?>
  • Вопрос задан
  • 201 просмотр
Пригласить эксперта
Ответы на вопрос 2
VasyaPertrov
@VasyaPertrov
Изготовление и безопастность сайтов. WP и др.
Есть в кастомайзере настройка подвала, там текст введеный пользователем. Как сохранить этот текст при обновлении темы?

Если в катомайзере, то ничего не должно поломаться. Это запись в БД.
А вот если были изменены файлы, то этот подход плохой. Надо делать дочернюю темы или плагин.
Ответ написан
Комментировать
AxianLTD
@AxianLTD
Похоже что вы используете модифицированную стандартную тему.
Вариантов несколько:
  1. Вынести все в functions.php
  2. Создать свою дочернюю тему по правилам описанным на сайте wordpress.

Думаю, люди еще предложат.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы