Учебник: Wordpress, настраиваемые поля
Рядом с телом статьи можно добавить под Wordpress другие данные и показать их в нужном месте рядом с текстом. На самом деле это настраиваемое поле можно связать со сценарием и создать автоматизированное представление.
Настраиваемые поля - это ресурсы, определенные редактором блога, которые он может использовать в статье или нет.
В разделе Запись интерфейса администрирования определяется поле.
Определение настраиваемого поля может использоваться один или несколько раз в одной и той же детали, и затем будет создано одно или несколько представлений. Она может не использоваться.
Эта статья основана на версии Wordpress 2.3.2 и ниже.
Определение настраиваемого поля
Именно со страницы письма в пост добавляется настраиваемое поле. Определение поля подобно определению категории, оно может быть локально в статье, но становится глобальным для блога. Внизу страницы находится раздел «Настраиваемые поля».
Поле определяется по паре ключ/значение.
- Ключ используется для идентификации поля и
- значение содержит данные, отображаемые или используемые для отображения.
Таким образом, создавая билет или изменяя билет, можно:
- повторно использовать уже созданный ключ или
- создать новый ключ,
и в обоих случаях установить значение для билета.
Ключ, созданный после его создания, принадлежит базе данных и может использоваться с любым элементом.
Повторное использование поля
С момента создания поля при редактировании статьи или при создании новой форма внизу страницы содержит список ключевых слов созданных настраиваемых полей. Поэтому мы выбираем ключ и связываем с ним значение для текущего товара.
Таким образом, настраиваемое поле представляет собой интерфейс для перехода от значений к сценарию, как показано ниже.
Просмотр содержимого настраиваемого поля
Поле не должно отображаться автоматически, поскольку оно зависит от выбранного шаблона, а также от того, что администратор сайта может выбрать место, где будет отображаться это поле.
Для этого необходимо отредактировать основной шаблон, пройти через меню Тема/Редактор темы и выбрать файл тела статьи («шаблон главного индекса» для классического шаблона), а в цикл вставить функцию мета ():
<?php the_meta(); ?>
Для классического шаблона исходный код может выглядеть так:
<div class="storycontent"> <?php the_content(__('(more...)')); ?> </div> <?php the_meta(); ?> <div class="feedback">
Это возможное положение среди других.
Код страницы
Предположим, что ключ: «цитата» и значение «нет смысла бегать».
Функция the_meta () извлекает ключ и значение из базы данных и предоставляет эту информацию средству просмотра, которое интегрирует ее в HTML-код страницы.
Посмотрите исходный код страницы, чтобы узнать, как делается эта интеграция, которая имеет следующую форму:
<ul class='post-meta'> <li> <span class='post-meta-key'>citation:</span> Rien ne sert de courir </li> </ul>
Классы после мета и после мета-ключа имеют заранее определенные дескрипторы в таблице стилей CSS.
Таким образом, можно изменить файл стиля (style.css для шаблона classic), чтобы показать содержимое как угодно.
Например, ключ с этим дескриптором может не отображаться:
.post-meta-key: { display:none; }
И сделать текст зеленым следующим образом:
.post-meta: { color:green; }
Но отображение настраиваемых полей более эффективно определяется переходом к программированию, и использованием ключевых данных и значений в сценарии.
Программирование настраиваемых полей
Используя язык PHP и внутренние функции, выделенные полям, можно реализовать личную реализацию отображения полей.
При этом используется не стандартная функция the_meta (), а PHP-скрипт, написанный на основе этих выделенных функций, список которых приводится ниже:
- get_post_custom ()
Возвращает список пар ключ/значение для сообщения. - get_post_custom_keys ()
Верни ключи. - get_post_custom_values ($ ключ)
Возвращает значение для данного ключа. - get_post_meta ($ id, $ key, $ format = false)
Альтернативная функция, которая возвращает значение из номера билета и ключа.
Номер билета $ ID будет получен автоматически с предварительно определенной переменной $ post-> ID.
Ключ $ key - это литеральный текст или переменная, содержащая строку, полученную предыдущими функциями.
Ложное значение $ format командует возвращением массива, а true - строки.
При наличии значения, введенного из редактора, применяется обработка, определенная сценарием PHP.
Что мы увидим в примере ниже...
Пример простого сценария, связанного с произвольным полем
В цикле главного файла функция the_meta () будет заменена сценарием, отображающим только значение, а не ключ.
<?php $value = get_post_meta($post->ID, "citation", true); echo "<ul class='post-meta' >"; echo "<li>"; echo $value; echo "</li>"; echo "</ul>"; ?>
Этот сценарий, который используется только для демонстрации, содержит атрибуты стиля по умолчанию и просто показывает значение, заданное автором блога в интерфейсе редактирования.
Заключение
Этот учебник дает необходимые основы для использования настраиваемых полей. О том, как добиться чего-то более совершенного для его блога, например, облако тегов, сосредоточенное вокруг темы статьи, можно будет узнать в одной из последующих статей.