Работа с произвольными полями
Рубрика: Произвольные поля · Запись имеет метки: custom fields
В современных шаблонах сплош и рядом для вывода графики в анонсах записей применяется такая функция WordPress, как произвольные поля. О работе с произвольными полями писала ранее Соника ( sonika.ru/blog/wordpress/custom-fields-wordpress.htm), почитайте, если угодно, это сведения для продвинутых, мой же пост посвящен одному конкретному вопросу – что делать, если Вы читаете описание темы и видите, что в ней используются произвольные поля, но вы не знаете, как ими пользоваться.
Итак, если логика шаблона предполагает наличие графики, вставляемой при помощи произвольных полей, сделайте следующее:
- создайте картинку и загрузите ее на сервер. Вы можете положить ее по традиции в wp-content/uploads, например, я использую другой вариант, потому что мне так проще: создаю в корне сайта папку типа images и кидаю картинки в нее. Обращаю внимание, что в данной статье используется пример именно такого рода. Итак, вы создали картинку, скажем, test.jpg, и залили ее в папку images в корне вашего блога;
- создайте новую запись (в том случае, если вы работаете уже с наполненным блогом, просто откройте готовую запись для редактирования);
- прокрутите страницу вниз, и под текстовым полем вы увидите блок Произвольные поля. В WordPress 2.7 он выглядит так:

Вы видите, что для вставки графики Вам нужно заполнить 2 поля: Ключ и Значение. Что такое Ключ? Это, грубо говоря, маркер, который управляет тем объектом, которому назначен, в нашем случае – картинкой, и выводящий картинку в той публикации, в которую вы его вставляете. Значение – это путь к этой картинке.
Где взять Ключ и Значение для Вашей темы?
Эти компоненты указываются в описании шаблона, по крайней мере, здесь, на wpbot.ru, я всегда указываю компоненты произвольных полей для шаблонов, которые я локализую. Если Вы используете шаблон, который взяли неизвестно где, и вы знаете, что в нем используются произвольные поля, загляните в файлы шаблона, как правило это index.php или home.php, и вы увидите примерно такой код:
где thumbnail и есть Ключ картинки. Он используется примерно в 60% случаев, однако многие авторы дают свои собственные названия ключей. Ищите название Ключа в описании темы. Но это к слову.
- итак, прокрутив к произвольным полям, вы пишете Ключ, как он дается в описании темы, например, lead_image . Будте внимательны и пишите Ключ точь-в-точь как он указан в описании.
В значении напишите путь к картинке, например, www.ваш_сайт.ru/images/test.ru . Размещая директорию картинок прямо в корне, вы можете писать короче, чтобы экономить время: /images/test.jpg/
Таким образом, у вас получится следующее:

Нажмите Добавить, и ваше произвольное поле готово! Обновите Главную, и вы увидете свою картинку на месте.
Частые ошибки.
Что делать, если обновив, вы обнаружили, что произвольные поля не работают.
Эта проблема встречается очень часто, и вот ее основные причины:
1. Вы неправильно написали Ключ. Всегда проверяйте, как он написан в описании темы – с маленькой буквы или с большой, Thumbnail или thumbnail. Это важно, и в этом добрая половина косяков.
2. Вы неправильно написали Значение, то есть, путь к картинке, проверьте, куда Вы загрузили рисунок и точно напишите его URL.
3. Вы прописали и ключ , и значение, но забыли загрузить картинку. Такое тоже часто бывает ))
4. Проверьте расширение картинки (часто люди путают jpg и jpeg),
5. Проверьте атрибуты папки с картинками и папки cache – поставьте 750 или 777.
Путь к картинке может зависеть от Вашего хостинга. Для какого то хостинга подойдет короткий путь (например, images/kartinka.jpg), для какого-то хостинга нужен полный (абсолютный) путь (например, http://www.вашсайт.ru/images/kartinka.jpg). Попробуйте разные варианты, то есть короткий и абсолютный, попробуйте прописать его с www или без www,
К слову сказать, с помощью произвольных полей можно выводить не только картинки. Например

Указанный элемент тоже выводится с помощью произвольных полей, которые я настроил таким образом, чтобы они выводили не картинку, а текст, в данном случае – запись о том, какую музыку я слушаю в момент публикации….
Как видите, все просто. Берете из описания шаблона Ключ, вписываетет его в произвольные поля, там уже прописываете путь к загруженной картинке, и сохраняете.
Если будут вопросы – спрашивайте.
Спонсоры публикации:
Если Вас интересует определение кризиса, узнайте его на нашем сайте.
Обратите внимание на наш качественный хостинг – интересные тарифные планы.
Найдите свою любимую машину за хорошую цену в каталоге автосалоны города одесса
К записи "Работа с произвольными полями" оставлено 22 коммент.
Наверх






2 января, праздники, у кого есть деньги – гуляют истово, у кого нет – мучаются с бодуна. А Вы, Гудвин, статьи о произвольных полях крапаете. Да ещё и хорошо и понятно. Это как же изволите понимать? Что это за третья, не известная доселе, группа населения?
Ну, тогда ещё пару вопросов.
Вы пишете: “…если логика шаблона предполагает наличие графики, вставляемой при помощи произвольных полей…”
Что под этим подразумевается?
Можно ли использовать ПП не логично? К слову, а как это? Я в логике слабак.
Umclidet все просто – я поготовил несколько записей заранее до нового года и теперь они выходят постепенно на автомате ))) я сейчас в отъезде праздничном и могу только комментарии оставлять с мобильника, конечно )))
Чуть не в тему (или вообще не в тему!) но хочу задать обещанный вопрос.
Если точнее, то сразу три.
1. Поначалу настраивал для блога стандарную тему WordPress Default, создавал странички, категории; попутно искал такую же по колонкам, но с более приятным дизайном.
Нашёл, распаковал, залил, применил.
Но вылезла одна деталь. У меня создана страница Main (как статичная, с неизменным текстом приветствия). А после применения новой темы добавилась точно такая же (один в один), но с названием Home.
Где в шаблоне искать упоминание названия этой страницы, для того, чтобы её удалить/поменять?
2. Правее окна поиска есть RSS кнопка. Между ними хотел бы добавить кнопку подписки по имэйлу.
Как это проделать (что где сменять в шаблоне) и где взять готовую кнопку?
3. В подвале темы есть ссылки авторов. Их удалять не хочу, но желаю добавить свою запись относительно контента блога. Только вот использование поиска в Notepad++ и слов/ссылок на ссылки создателей не нахожу.
Мысль была в том, чтобы добавить видимую запись (сайт такой-то 2009) правее или ниже их ссылок.
Был бы очень благодарен за помощь.
Извиняюсь за несколько сумбурный текст, просто с блогами только-только начал знакомиться.
Вам это может сделать Goodwin, так как работы достаточно много и она не связана с этим шаблоном. Напишите ему лично на странице контакт или свяжитесь через icq. Обговорите условия.
Добре. Благодарю.
А то я что-то из головы выпустил, думал – он только на комменты отвечает.
ChinaTrader
как это ни странно, я действительно отвечаю на комменты, а еще я веду этот блог, локализую шаблоны и делаю еще много полезного. Обращайтесь. Обсудим условия
Еще одна очень ВАЖНАЯ причина, по которой картинка может не выводится, это размер картинки!!! Нужно знать какие параметры (разрешение) должны быть у загружаемых изображений!
Вот где посмотреть такие вещи в теме???
Goodwin, Здравствуйте.
Спасибо огромное за сей пост.
Очень доступно и понятно.
Хорошо, что Вы не забываете о тех, кто все еще в бронепоезде, но уже осознал, что нужно постоянно учиться и делает это.
Ваши блоги увлекательны.
Ваша работа – бесценна.
Спасибо Вам за то, что Вы делаете.
Александр, кланяюсь в пояс за лестный отзыв.
Что-то у тебя дружище путаница….
Я не гуру как ты, но в твоих словах (естле не быть опытным пользователям) чёрт не только ногу но и другие конечности искалечит…
Вот ты тут пишешь;
Где взять Ключ и Значение для Вашей темы?
Эти компоненты указываются в описании шаблона – ( В КОКОМ ОПИСАНИИ, КАКОГО ШАБЛОНА ????? )
по крайней мере, здесь, на wpbot.ru, я всегда указываю компоненты произвольных полей для шаблонов, которые я локализую. Если Вы используете шаблон, который взяли неизвестно где, и вы знаете, что в нем используются произвольные поля, загляните в файлы шаблона, как правило это index.php или home.php, и вы увидите примерно такой код:
ID, ‘thumbnail’, true); ?> (ТАМ СТОЛЬКО КОДОВ Я ЧАС ПЫТАЛСЯ НАЙТИ ЧТО – ТО ПОХОЖЕЕ – БЕЗ РЕЗУЛЬТАТНО)
где thumbnail и есть Ключ картинки. Он используется примерно в 60% случаев, однако многие авторы дают свои собственные названия ключей. Ищите название Ключа в описании темы. Но это к слову.
- итак, прокрутив к произвольным полям, вы пишете Ключ, как он дается в описании темы, например, lead_image . ( А НА ВЕРХУ БЫЛА ГАРАНТИЯ 60% ЧТО ЭТО – thumbnail )
Будте внимательны и пишите Ключ точь-в-точь как он указан в описании.
В значении напишите путь к картинке, например,
ваш_сайт.ru/images/test.ru .
Размещая директорию картинок прямо в корне, вы можете писать короче, чтобы экономить время: /images/test.jpg/
Звените за откровенность.
Уважаемый дружище Umed, я ничего не понял из Вашего комментария, кроме того, что Вы сами ничего не поняли из моей заметки.
Видимо, Вы действительно не очень хорошо ориентируетесь в таких вопросах, если часами ищите код, который можно найти за 2 секунды, воспользовавшись поиском по файлу, который есть в любом текстовом редакторе, используемом для работы с html или php – даже в Блокноте. :blush:
В итоге я делаю вывод, что Вы невнимательно прочли то, что написано. Совет на будущее – если Вы не поняли чего-то, это не означает, что это неправильно, ошибочно или противоречиво. Это означает лишь, что Вы не врубаетесь. Не более того.
Попробуйте понять еще раз. Не сдавайтесь.
Все четко:
если вы используете шаблон, в котором картинки вставляются через произвольные поля – вам понадобятся Ключ и Значение, вставляемые через специальные поля на странице записей в админке блога.
Где взять ключ и значение? Если шаблон, в котором есть такие функции, как произольные поля, вы берете у меня – я всегда указываю Ключ. Вам остается только скопировать его из моего описания и вставить, как описано в заметке.
В тех случаях, если у вас есть шаблон с такими функциями, но нет описания – попробуйте найти ключ сами. В заметке я указал, что именно искать. $image = get_post_meta и тп – так выглядит синтаксис данной функции. Это вам непонятно?
Значение – это путь к картинке. Что здесь непонятного для Вас?
Прошу Вас, прежде чем писать разгромные каменты, а потом за них извиняться – подумайте, пожалуйста, потому что Вы можете ввести в заблуждение других посетителей. Спасибо.
День добрый.
Хотел спросить существует ли плагин-виджет или способ выводить случайное видео в сайдбаре из категорий (постов)?
Вопрос в следующем- есть сайт на WP-фильмы, при написании поста и вставки фильма в Визуальном редакторе, хотелосьбы к фильму прикреплять Трейлер ссылку вида _http://wordpress.org/название.flv (через произвольные поля) и чтобы эти мувики выводились рандомно в сайдбаре.
Буду очень благодарен за ответ или подсказку.
P.S. Есть замечательный плагин Video widget, но к сожалению немного не то (
Пробовал , но не получается. Только учусь :blush:
<ul>
<?php
$rand_posts = get_posts('numberposts=5&orderby=rand');
foreach( $rand_posts as $post ) :
?>
<li><?php $key_treiler_values = get_post_meta(9, 'key_treiler'); ?></a></li>
<?php endforeach; ?>
</ul>
</li></ul>
Огромное спасибо!! очень просто обьяснили чайнику, как и что. Плохо, что я не додумался прочитать это – сэкономил бы время.
Спасибо огромное
Goodwin, огромное спасибо за статью :biggrin. Я не знаю, чего там не понятного… Может надо сначала прочесть у Уважаемой Соники – вот там реально “для продвинутых” , а вот для таких как я начинающих (еще не чайников) – самое оно! Практически сразу получилось – правда не уверен, что угадал с размером картинки… Но все работает, картинка не теряется.
Присоединяюсь к Александру – С моего бронепоезда – Респект Вам и Уважуха :biggrin:
Уважаемый, Goodwin!
Спасибо большое за ваши разъяснения, они очень лаконичны и внятны.
Вот сейчас я вдруг наткнулся на странную проблему и не могу понять причину, по которой произвольные поля вообще не хотят выводиться в записях ни под каким видом. Делаю всё как написано у WordPress в кодексе, вставляю обычный ключ и значение в запись, в цикле шаблона самое простое — , не появляется поле и всё…
Не подскаете случайно, по каким причинам этот механизм ещё может не срабатывать или где их ещё можно искать?
Спасибо!
Уважаемый мной автор, а подскажите, я просто хочу выводить в произвольном поле текст.
Какой код нужно разместить в основном шаблоне ( в моём случае)?
Я хочу выводить краткое описание новости под её названием.
Чтение блога Соники и Макса не помогло.
Заранее спасибо!
Xtwo, это несложно. например,
вы прописываете в нужном месте (под вашей картинкой) код
это будет код вызова функции произвольных полей. после этого вы в админке в произвольном поле ключ пишете text, а в значении – подпись к картинке или что угодно. после добавления поля текст появится на странице.
причем в самом коде я употребил “text” условно – это маркер произвольных полей, вы можете использовать любое свое слово.
Спасибо Goodwin !
Скажите, как можно вывести тэги?
К примеру
?Уважаемый Goodwin! Подскажите, как вывести несколько картинок в произвольных полях в одном посте и с одним ключом? Предложенный Вами вариант работает, но у меня выводит только одну, а нужно чтобы выводилось до пяти.
Настраиваю тему Ultra News но появилась проблема с ключём к произвольным полям.
У меня был уже сайт с темой другой, тема Ultra News вроде не понимает ключ Image и поэтому нет картинок на странице.
прочитал тему про произвольные поля и не понял я, Гудвин , как беря тему у тебя я получу в описании темы ключ?
каким способом?
а в файле index.php нет кода <?php echo get_post_meta
не могу справиться с полями помигите .
klionpsy, инструкция по настройке темы тут: goodwinpress.ru/?p=257, там все написано. в этой теме ключ image, то есть, с маленькой буквы.
чтобы не исправлять ключи во всех записях в админке, проще исправить их под вас в шаблоне. то есть, если вы прежде юзали ключи Image, откройте файлы index.php, search.php, archive.php и везде где прописано image (с маленькой буквы) исправьте как вам нужно – с большой, то есть, с заглавной.