Функция GET_THEME_MODS() в WordPress: Примеры использования, возвращаемое значение, обновления

Функция GET_THEME_MODS() в WordPress

Функция get_theme_mods() позволяет получить все изменения, внесенные в текущую тему вашего сайта на WordPress. Это полезно, когда вам нужно управлять настройками темы, такими как цвета, логотипы и другое.

Как это работает

Функция использует другую функцию WordPress get_option(), чтобы извлечь настройки темы. Основные функции, которые ссылаются на get_theme_mods(), включают:

  • get_theme_mod()
  • remove_theme_mod()
  • set_theme_mod()

Эти функции позволяют вам получать, удалять и устанавливать параметры темы.

Возвращаемое значение

Функция возвращает массив (array), который содержит все изменения темы.

Использование

Пример вызова функции:

$mods = get_theme_mods();

Пример

Получение всех настроек темы

Ниже приведен пример, который демонстрирует, как получить все изменения темы в виде массива.

$mods = get_theme_mods();

print_r( $mods );

/*
Array
(
    [nav_menu_locations] => Array
            [header]        => 2
            [footer_credit] => 3
            [footer_left]   => 4
            [footer_right]  => 5

    [custom_css_post_id] => -1
    [custom_logo]        => 7
    [sidebars_widgets]   => Array
            [time] => 1550171673
            [data] => Array
                    [wp_inactive_widgets] => Array
                            [0] => search-2
                            [1] => recent-posts-2
                            [2] => recent-comments-2
                            [3] => archives-2
                            [4] => categories-2
                            [5] => meta-2

    [footer_bg_image] => http://dh5.com/content/uploads/2019/02/bg-footer.jpg
)
*/

echo $mods['header_textcolor']; // > 333

Этот код получает все настройки темы и выводит их на экран. Например, вы можете увидеть, какой цвет текста используется в заголовке, вызвав echo $mods['header_textcolor'];.

Обновления функции

Изменения в версии

  • С версии 3.1.0 — функция была введена.
  • С версии 5.9.0 — возвращаемое значение всегда является массивом.

Код функции

Вот код функции get_theme_mods():


function get_theme_mods() {
$theme_slug = get_option( 'stylesheet' );
$mods = get_option( "thememods$theme_slug" );

if ( false === $mods ) {
    $theme_name = get_option( 'current_theme' );
    if ( false === $theme_name ) {
        $theme_name = wp_get_theme()->get( 'Name' );
    }

    $mods = get_option( "mods_$theme_name" ); // Устаревшее местоположение.
    if ( is_admin() && false !== $mods ) {
        update_option( "theme_mods_$theme_slug", $mods );
        delete_option( "mods_$theme_name" );
    }
}

if ( ! is_array( $mods ) ) {
    $mods = array();
}

return $mods;

}

Связанные функции

Некоторые функции, которые могут вас заинтересовать при работе с модификациями тем:

  • get_theme_mod()
  • remove_theme_mod()
  • set_theme_mod()
  • remove_theme_mods()

Эти функции помогут вам более гибко управлять параметрами вашей темы.


Эта статья поможет вам понять, как пользоваться функцией get_theme_mods() в WordPress, а также как работать с модификациями вашей темы, даже если вы новичок в данной системе.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *