Intereting Posts
Невозможно изменить цвет наведения для ссылок Ресурсы для изучения того, как Гутенберг работает под капотом Почему мой сайт WordPress чрезвычайно медленный, даже находясь в мощном стеке EC2 и RDS Список сообщений WordPress и связанных с ними вложений за пределами почтовой страницы Получить сообщения по категориям или автору Универсальная проблема: первый запрос после ~ 25 секунд бездействия всегда медленнее (~ 1 секунда), чем последующие запросы (~ 1 / 10сек) php-вывод сгенерированного пользовательского обмена Проблемы с добавлением слайдера изображения jQuery Внешний RSS-канал для WordPress Portfolio Можно ли вытащить и отобразить одно изображение, ориентированное на ландшафт? Я хочу показать более 20 категорий в админ-панале. Невозможно использовать параметр экрана с помощью кодирования или плагина? Могу ли я отделить комментарии от должности? Как я могу добавить все видео из плейлиста youtube в качестве сообщения? DB_HOST – LOCALHOST быстрее, чем доменное имя? Есть ли способ вставить несколько изображений в сообщение одновременно без использования галереи?

Глобальные переменные WordPress?

У меня есть страница с метаболизмом, называемая «что-то». Он может иметь два значения: «значение» и «значение2».

Я использую короткий код на этой странице и хочу, чтобы он отображал что-то значение. Проблема в том, что я не знаю, как получить доступ к глобальной переменной в коротком коде?

Например, у меня есть это в page.php:

if($something == "value") { global $one, $two; $one = 120; $two = 240; } 

Теперь я хочу получить доступ к этим переменным в моем shortocde (файле functions.php), но

 echo $one; echo $two; 

Не выводит результат.

Есть идеи?

Solutions Collecting From Web of "Глобальные переменные WordPress?"

Мета-данные сохраняются в таблице postmeta, и для их получения вы можете использовать get_post_meta($post_id,'meta_key_name',true);

поэтому в вашей функции shortcode globilaize $ post object и получите такую ​​ценность

 if($something == "value") { global $post; $one = get_post_meta($post->ID,'value_name'true); $two = get_post_meta($post->ID,'value2_name'true); } 

Если вы не запускаете эти эхо-функции из функции через page.php, функции не получат ничего от этих глобальных переменных, потому что они настроены после выполнения функций. Php.

Попробуй это:

в functions.php:

 function show_me_that_stuff() { global $one, $two; echo $one; echo $two; } 

затем в page.php:

 if($something == "value") { global $one, $two; $one = 120; $two = 240; } show_me_that_stuff(); 

Теперь он должен вывести 120240.

Опубликовать определенные значения, как вы показали, должны быть post_meta, как показано Bainternet. Нет вопросов.

Однако, если он не является специфичным для страницы и является действительно глобальным, у вас также есть таблица wp_options с определенным API для решения этой проблемы.