Использование Custom fields в WordPress | AboutDigital

Собственно эта статья — вольный перевод Using custom fields в Codex’е c некоторыми дополнениями.

Прежде всего, отмечу, Custom fields — это пары ключ-значение которые вы самостоятельно определяете при создании статьи в WordPress. Для чего их можно применять? — как ваша фантазия повернется.

В стандартных темах для WP (вернее практически во всех) Custom Fields не выводятся нигде. И соответственно люди ими не пользуются. Исключение составляют некоторые плагины, которые их используют, может быть даже незаметно от вас. Но предположим, вы решили для каких-то целей использовать их в своем блоге. Возникает вопрос как вывести Custom fields на страницах блога?

Первый и самый простой вариант использование шаблонного тега the_meta (), который вызывается внутри цикла (The Loop). Вот пример:

[code lang=»php»][/code]

А вот что получится в исходном коде страницы:
[code lang=»html»]

[/code]

Этот шаблонный тег автоматически устанавливает CSS стиль post-meta, который вы можете определить в своей таблице стилей.

Данный тег выводит все CF, которые вы определили для определенной статьи. Иногда возникает необходимость использования только некоторых полей. В данном случае Вы можете воспользоваться следующими функциями:

get_post_meta ($post_id, $key, $single);

  • $post_id — идентификатор текущей статьи
  • $key — строка с именем поля
  • $single — может быть true или false. Если вы устанавливаете в true, то функция выдает единственное значение в виде строки, если false — выдает массив значений полей

get_post_custom ()
Возвращает все пары ключ/значение для текущей статьи.

get_post_custom_keys ()
Возвращает имена всех ключей для текущей статьи.

get_post_custom_values ($key)
Возвращает список значений ждя определенного ключа текущей статьи.

Вот собственно и все

Ну а теперь пример того, как использовать эту функциональность:

Прежде всего в процессе редактирования статьи вы должны добавить пары ключ-значение, в русской версии WP добавление происходит в блоке «Произвольные поля». Добавим (и соответственно присвоим какое-либо значение) поле Price.

Затем нам необходимо вывести введенные значения при выводе текста всей статьи. Достигается это путем редактирования single.php (в большинстве тем, a в К2 — theloop.php), вот пример кода который необходимо добавить для вывода значения ключа Price (т.к. the_meta () выводит все пары ключ-значение, то воспользуемся функцией get_post_meta () для вывода значения единственного ключа) :

[code lang=»php»]$value_result=get_post_meta ($id,’Price’,true); if ($value_result!=”»){ print $value_result; } else{ print ‘No results found’;

}[/code]

Читайте также:

Оцените статью