Просмотров: 2 587

Вывод содержимого произвольного поля WordPress из массива.

Давайте вернемся к предыдущему примеру, когда мы выводили значение произвольного поля на страницу WordPress.

//webgyry.info/example-proizvolnoe-pole-wordpress

Для вывода произвольного поля мы использовали следующую конструкцию (выделена красным цветом).

<p>Автор: 
<?php echo (get_post_meta($post->ID, 'author', true)); ?>
</p>

Обратите внимание, что третьим параметром в этой конструкции передается значение true, что означает, что данные произвольного поля выводятся в виде одной строки.

Что будет, если мы уберем третий параметр или переведем его значение в false?

19-08-2014 5-20-53

Вместо значения произвольного поля, мы получили надпись Array, что означает, что теперь данные произвольных полей хранятся в массиве. Давайте проверим, что собой представляет этот массив, введя команду print_r вместо echo.

print_r (get_post_meta($post->ID, ‘author’));

19-08-2014 5-24-07

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

$mass = get_post_meta($post->ID, ‘author’);

echo $mass[0];

Теперь идем дальше. Скажу больше, что второй параметр функции get_post_meta тоже не является обязательным. Давайте попробуем его убрать.

print_r (get_post_meta($post->ID));

19-08-2014 5-33-17

В этом случае мы получаем набор всех произвольных полей, которые заданы для данной страницы и их настроек.

Вывести значение поля author в этом случае можно будет следующим образом:

$mass = get_post_meta($post->ID);

echo $mass[author][0];

Это основные техники работы с произвольными полями WordPress, если они представлены в виде массива.

Напоследок, предлагаю вашему вниманию свой бесплатный миникурс по созданию минимальной темы на WordPress. Вот ссылка, если вам это интересно.