Я сейчас занимаюсь одним из своих проектов, на WopdPress и мне пришлось немного дорабатывать функционал своего проекта, о том как я это делал, я и хочу рассказать.
В первую очередь мне понадобилось использовать произвольные поля, так как я делаю каталог авторских статей, то мне в начале и в конце каждого поста необходимо выводить ссылку на источник и именем автора. Причем нижняя ссылка у меня стоит с атрибутом nofollow и noindex, естественно ставить ссылки в ручную не очень удобно, а с использованием произвольных полей задача существенно облегчается.
Итак на странице создания записей, внизу есть вкладка, где мы можем создавать произвольные поля.
Нам нужно заполнить два поля Имя и Значение. Мне для каталога статей понадобилось два Значения: имя автора и url, соответственно я дал им имена avtorname и avtorurl, это и есть имена наших полей, вы можете назвать их подругому, но писать имена полей нужно латиницей. Теперь в поле Имя я пишу avtorname, а в поле Значение например bratel или Вася Пупкин (в поле значение можно писать и кириллицей и хоть по арабски), далее нажимаю Добавить произвольное поле, и первое произвольное поле у нас готово.
Таким образом с этой статьей у меня связан автор bratel. В php коде эта связь выглядит вот так:
1 | <?php echo get_post_meta($post->ID, 'avtorname', true) ; ?> |
Этот код вставляется в шаблон в нужном нам месте, там где мы хотим видеть автора статьи, например в index.php в начало поста:
1 2 | <div class="postcontent"> Автор статьи: <?php echo get_post_meta($post->ID, 'avtorname', true) ; ?> |
Теперь создадим второе поле avtorurl. Для этого в поле Имя пишем avtorurl, в поле Значение пишем нужную нам ссылку, например url этого поста: http://peretyazhka-mebeli-v-novosibirske-154.ru/delaem-proizvolnye-polya-dlya-wordpress и нажимаем Добавить произвольное поле, мы получаем второе произвольное поле
В php связи с постом это выглядит вот так:
1 | <a title="<?php the_title(); ?>" href="<?php echo get_post_meta($post->ID, 'avtorurl', true) ; ?>">анкор ссылки </a> |
Теперь вместо анкора ссылки поставим функцию из нашего первого примера, и получим нужный нам полный код:
1 | Автор статьи: <a title="<?php the_title(); ?>" href="<?php echo get_post_meta($post->ID, 'avtorurl', true) ; ?>"><?php echo get_post_meta($post->ID, 'avtorname', true) ; ?> </a> |
или
1 | Автор статьи: <noindex> <a title="<?php the_title(); ?>" rel="nofollow" href="<?php echo get_post_meta($post->ID, 'avtorurl', true) ; ?>"><?php echo get_post_meta($post->ID, 'avtorname', true) ; ?> </a> </noindex> |
Вот так все просто. Не забываем ставить закрывающий тег /noindex . Нужно заметить что в дальнейшем вам больше не придется заполнять произвольные поля по новой, все данные сохраняться.
Если вам понравился этот сайт, вы можете подписаться на rss
Метки: WordPress
Отзывы: Ваш отзыв
Ваш отзыв