Intereting Posts
Как перевести сообщение «неправильный пароль» Вытягивание в связанных сообщениях на основе массива Post Type Как создать поля запроса Выполнение Javascript при добавлении виджета в бэкэнд В поисках двух категорий, где WordPress сохраняет заголовок 2-й категории? Как загрузить файл мультимедиа через FTP, а затем создать надпись с ним? Перенаправление и доступ администратора Перенос тегов таксономии в родную категорию Как показать липкие сообщения на статической главной странице, которая также содержит контент? исключить сообщение из цикла wp_query Excerpt textarea отсутствует на странице редактирования сообщений в панели администратора Память необходима для размещения 200 сайтов WordPress? Получение сообщений из определенных категорий Гравитационные формы настраивают разметку поля для той же формы, которая появляется в разных местах Скрыть подкаталог на моем веб-сайте

Глобальные переменные 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 для решения этой проблемы.