set_theme_mod()
Створює або оновлює спеціальні параметри поточної теми.
Під “спеціальні” маються на увазі опції на кшталт ” background-color “, які потім можна отримати за допомогою get_theme_mod() .
Функції типу *_theme_mod – це аналог дочірніми темами . Для гнучкості у функціях є фільтри.
Усі такі спец. опції теми фізично розміщуються у одній опції таблиці wp_options – theme_mods_(theme) , як масиву.
Наступний код розмістить в опціях масив: array(‘aaa’=>123, ‘bbb’=>456) .
set_theme_mod( 'aaa', 123); set_theme_mod ( 'bbb', 456);
Всі функції theme_mod – це обгортки для get_option() і тому вони повільніші, тому що перш ніж використовувати get_option() функція отримує назву теми створює з нього назву опції ” theme_mods_$theme “, потім застосовує фільтр до зазначеної опції.
Втім, всі ці операції знижують швидкість не значно.
Щоб видалити опцію теми, використовуйте remove_theme_mod() .
(повільно) | 50000 разів – 4.90 сек
(швидко)
Хуки з функції
Повертає
true|false
. Залежно від того, чи було оновлено значення опції. див. update_option() . Значення, що повертається додано в WP 5.6.
Використання
set_theme_mod($name, $value);
-
$name
(рядок) (обов’язковий) - Назва спеціальної опції теми.
-
$value
(змішаний) (обов’язковий) - Значення опції.
Приклади
#1 Встановимо опцію теми
Встановимо та отримай спеціальне налаштування теми теми:
set_theme_mod('aaa', 123); // потім де потрібно отримуємо цю опцію так: get_theme_mod('aaa'); // > 123
список змін
З версії 2.1.0 | Введено. |
З версії 5.6.0 | A return value був added. |