Intereting Posts
Как определить родительский контейнер текущего виджета (идентификатор виджета боковой панели) Автоматически присваивать сообщения авторам определенной категории Как отобразить метаописание Yoast SEO в шаблоне архива для каждого сообщения вместо the_excerpt ()? Как исключить один формат публикации из результатов поиска? WP API post__not_in не работает Можно ли хранить носители WordPress в разных подпапках? <! – больше -> помощь WordPress MU Domain Mapping просто перенаправляет на главный сайт Использование плагина проверки орфографии в TinyMCE исключить несколько терминов с помощью функции get_terms () Страница в качестве дочерней в пользовательском пули типа сообщения? Как сбросить поля ввода HTML-фильтра на странице списка CPT? Как отсортировать результаты Форма для размещения новой публикации с пользовательскими таксономиями WP 4.4 – сопоставление доменов для сайтов в многопользовательской сети?

Как установить глобальную переменную в functions.php

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

<?php $thumbSmall = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'small' ); $urlSmall = $thumbSmall['0']; ?> <?php echo $urlSmall; ?> 

Тем не менее, вы хотите использовать переменную $ urlSmall в других местах, чем в шаблоне главной страницы, и именно здесь меня ограничили мои ограниченные навыки кодирования. Я попытался просто скопировать пасту

 wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'small' ); $urlSmall = $thumbSmall['0']; 

в мои функции.php, но это не сработало. Мне нужно, чтобы эти переменные были признаны во всем мире. Что я здесь делаю? написать какую-то функцию?

Solutions Collecting From Web of "Как установить глобальную переменную в functions.php"

Вы можете превратить свой фрагмент в функцию, которая возвращает URL-адрес эскиза сообщения post:

 function wpse81577_get_small_thumb_url( $post_id ) { $thumbSmall = wp_get_attachment_image_src( get_post_thumbnail_id( $post_id ), 'small' ); return $thumbSmall['0']; } 

Использование, предоставление идентификатора сообщения:

 <?php echo wpse81577_get_small_thumb_url( 59 ); ?> 

Чистый вопрос PHP, действительно.

 global $urlSmall; $urlSmall = $thumbSmall['0']; 

Если вы объявите переменную с ключевым словом global при ее инициализации, она будет доступна после этого. Вы можете импортировать его, так сказать, с помощью …

 global $urlSmall; var_dump($urlSmall); 

Вы можете сделать то же самое, назначив ключ / значения непосредственно массиву $GLOBALS .

 $GLOBALS['urlSmall'] = $thumbSmall['0']; 

Это, кажется, самый прямой ответ на вопрос:

Мне нужно, чтобы эти переменные были признаны во всем мире. Что я здесь делаю?

Однако могут быть более эффективные способы обработки данных.