Начинаем небольшую серию статей по глобальные переменные WordPress. В данном выпуске мы рассмотрим ряд практических упражнений, которые демонстрируют важность глобальных переменных в WordPress.
Что такое глобальные переменные WordPress?
Глобальная переменная WordPress – переменная, которая хранит информацию созданную приложением. К этим глобальным переменным можно получить доступ во время работы с приложением.
В данных переменных хранится самая разная информация: залогинился ли пользователь, какой у него браузер и т.д. Так же есть переменные, которые содержат информацию веб-сервера и переменные, которые хранят детали текущего поста. Разобравшись с глобальными переменными WordPress, можно лучше понять принцип работы данной CMS, принцип написания плагинов и тем.
Как получить доступ к глобальным переменным?
В нашем первом примере мы будем использовать глобальную переменную $post, которая хранит различные детали текущего поста. К каждой глобальной переменной можно получить доступ, глобализировав переменную следующим образом:
<?php global $post; ?>
При помощи ключевого слова global мы заявляем о том, что получаем доступ к глобальной переменной $post. Как только переменная была глобализирована, можем получить доступ к внутренним данным:
<?php
global $post;
print_r ($post );
Глобальная переменная $post содержит различные данные о последнем загруженном посте. Для демонстрации поместите данный код в файле page.php темы twentyfourteen (я настоятельно рекомендую делать копии исходных файлов).
Вставьте вышеупомянутый код перед вызовом функции get_template_part( ‘content’, ‘page’ ), которая производит выборку содержимого и отображает её на странице. Получить данные о посте мы должны до вывода информации на экран:
Теперь у нас есть код, который выводит содержимое глобальной переменной $post, в теме twentyfourteen. Не забудьте сделать её темой по умолчанию.
<div id="primary" class="content-area">
<div id="content" class="site-content" role="main">
<?php
while ( have_posts() ) : the_post();
get_template_part( 'content', 'page' );
global $post;
print_r( $post );
if ( comments_open() || get_comments_number() ) {
comments_template();
}
endwhile;
?>
</div><!-- #content -->
</div> <!-- #primary -->
Теперь, на странице поста вы сможете увидеть следующую информацию:
Теперь у нас есть полная информация о посте, которая хранится в переменной $post. Для получения отдельных значений обратимся к соответствующим полям:
<?php
echo $post->post_date; // дата поста
echo $post->post_status; // статус поста
Так же существует множество других глобальных переменных, которые можно использовать. Помните, что данные значения лучше не изменять, чтобы не спровоцировать непредсказуемое поведение WordPress.
Что дальше?
Только что мы познакомились с глобальными переменными в WordPress.