Статьи

Совет: 4-минутный ускоренный курс в пользовательских полях WordPress

Сегодняшняя тема быстрого видео о Basix взята из вопроса в Twitter , касающегося использования настраиваемых полей в WordPress. К счастью, как вы обнаружите, присоединение уникальных данных к публикациям так же просто, как присвоение значения на странице «Редактировать сообщение», а затем обращение к этой информации с помощью метода get_post_meta () .

Предпочитаете смотреть это видео на Screenr.com?


В локальной тестовой среде создайте новую публикацию в панели администратора WordPress и прокручивайте до конца, пока не увидите виджет «Пользовательские поля».

Настраиваемые поля

Этот раздел учитывает ключ и значение. Например, если вы не пользуетесь новой функцией « Миниатюра поста », доступной в WordPress 2.9, и вам нужен способ прикрепить миниатюру к каждой публикации, это то место, где вы должны выполнить эту задачу. Вы можете назначить клавишу «thumb» и значение, равное пути к нужному эскизу. Заполните этот раздел некоторыми тестовыми данными — все, что вы пожелаете. Я буду использовать «сложность» в качестве моего ключа, а «трудный» в качестве значения.


Теперь зайдите в свою тему и в цикле WordPress на своей странице index.php обратитесь к методу get_post_meta () .

1
<?php echo get_post_meta($post->ID, ‘difficulty’, true);

Этот метод принимает три параметра.

  • Идентификатор желаемого поста. Вы можете использовать $ post-> ID или «the_id ()», чтобы вставить это значение.
  • Ключ, который вам нужен. Помните, что вы можете вставить несколько пользовательских полей. Вот почему мы должны ссылаться на ключ, в моем случае, «сложность».
  • Логическое значение, которое определяет, хотите ли вы, чтобы информация возвращалась в виде строки или массива. Поскольку я повторяю свою ценность, я выбрал true (или строку).

Если вы просматриваете запустить веб-сайт, вы увидите правильное значение. Если вы указали путь к миниатюре в своем настраиваемом поле, убедитесь, что вы выводите эту строку из тега IMG, соответственно. Однако здесь есть одна проблема; Возможно, что не в КАЖДОМЕ посте будет прикреплено это пользовательское поле «сложность», но мы явно предполагаем, что оно будет. Это неэффективно. Вместо этого, почему бы нам сначала не создать оператор «if» и определить, существует ли наш желаемый ключ первым. Умнее верно?

1
2
3
<?php if ( get_post_meta($post->ID, ‘difficulty’) ) : ?>
   <small> <?php echo get_post_meta($post->ID, ‘difficulty’, true);
<?php endif;

Пользовательские поля являются неотъемлемой частью каждого опытного дизайнера WordPress. Изучите их и используйте их! Спасибо за чтение или просмотр!