С этой статьи начну небольшой цикл записей о том как намного улучшить удобство и гибкость wordpress для упрощенного создания сайтов, которые имеют не блоговую структуру.
Большинство корпоративных сайтов, которые я в последнее время сделал на заказ — работают на еще одной замечательной cms MODX. Это потому что в ней мне нравится одна особенность — очень легко добавлять разные типы ввода данных и присваивать к разным категориям.
Для чего это нужно? К примеру, у большинства корпоративных сайтов часто есть потребность создания каталога их продукций. В этом каталоге должны быть выделены некоторые параметры продукции, например, цена или свойства и под эти параметры нужно выделить в админке дополнительные поля.
Так вот, в wordpress после 3 версий тоже появилась возможность создания произвольных типов данных, таксономии и т.д. — но создавать это все вручную — проблематично, много кода нужно писать. Но недавно я нашел целый ряд очень полезных плагинов, которые очень сильно упрощают подобные задачи. О них и поговорим.
Итак, первый плагин —
Он упрощает добавление произвольных полей, причем можно на выбор сделать, чтобы эти поля имели такие типы ввода данных: текст, текстовая область, визуальный редактор, изображение, файл, ссылка, селекты, чекбоксы, радиобаттоны и т.д. Хватает с головой для большинства целей.
У плагина есть .
Допустим мы хотим создать раздел на сайте, где будет каталог продукции. У каждого товара должно быть поле ввода «цена» и «изображение для каталога».
После установки плагина, открываем страницу настроек и добавляем новое поле.
В появившейся панельке вводим Field Label — это то название которое появится в админке, Field Name — название самого поля для базы данных (строго на латинице), Field Type — выбираете тип поля ввода данных (в моем случае, для цены — это будет text, для изображения image), Default Value — это то значение, которое будет установлено, если вы ничего не введете, Formatting — это формат самого текста (оставляйте html), Field Instructions — описание поля.
Ниже идет вкладка Location — здесь вы устанавливаете те страницы или категории, где будут показаны эти поля (можно даже указать конкретные записи). В моем случае, это выглядит так
После всего — нажимаете save.
Итак, я создал 2 поля — первое поле имеет Field Name «price», второе «image_cat». Когда создаете поле image, то будeт доступна еще опция Return Value — оставляйте Image URL — будет потом проще управлять отображением в шаблоне. Оба поля я приаттачил к рубрике «каталог»
Теперь, после настройки всех данных, когда вы публикуете запись и выбираете ту рубрику, которой присвоили поля, они появятся в админке. Вот так
Открываем нужный файл для редактирования — так как у меня рубрика «каталог» имеет ссылку katalog, то я создаю в папке темы файлик «category-katalog.php» — он будет шаблоном для рубрики «каталог». Теперь я добавляю к нему мои поля ввода, что я создал ранее.
Код добавления прост.
Для текстового поля в моем случае это
<?php the_field('price'); ?>
price — это мой Field Name созданного ранее поля «цена».
И по аналогии с этим, картинку я буду выводить так
<img src="<?php the_field('image_cat'); ?>" alt="" />
Вот и все. Все примеры кода вы можете увидеть в документации к плагину, которая очень подробно сделана + там даже есть всего процесса, что я описал.
Мониторинг сетки — если беспокоитесь, что wordpress положит ваш слабенький хостинг — просто переезжайте на выделенные сервера, никаких проблем с падением посещаемых сайтов не будет. Администрируемые VPS в Украине по невероятно низким ценам! ISP Manager + 30$ на счет в качестве бонуса (код ISP+30) + переезд БЕСПЛАТНО!
Понравилась статья? - Подпишись.
Или поделись полезным с миром
Похожие статьи:
Посмотри еще это:
по беглому описанию мне показалось, что это куда удобней 😉 .
этот плагин тоже хорош, но он для других целей. Он для создания произвольных типов записей. Плагин о котором статья — он для создания произвольных полей. Т.е. он будет хорошо работать в связке с вашим
Спасибо, это грандиозно. Давно хотел найти что-то подобное, обязательно буду пробовать. «Небольшой цикл записей […] создания сайтов, которые имеют не блоговую структуру» — нужно обязательно продолжить 🙂
интересная и полезная информация
Полезний плагин, я такой тоже использую. Всем советую.
Добрый день!
Надеюсь на вашу помощь!
Интернет магазин, когда посетитель заходит на сайт, он видит одну цену у товара (розничную), но когда он регистрируется, и когда просматривает товар, он уже видит товар со скидкой, как то просчитанный системой.
Что бы он мог видеть другую цену со скидкой, нам нужно в его профиле прописывать процент на скидку в спец.поле для этого.
Как это можно сделать?
sdklimov@gmail.com
ваша задача зависит от того как у вас реализован интернет-магазин. Нужно вообще создать доп поле в профиле, а потом выводить цену. Все зависит от темы и от плагина интернет-магазина, но универсальных решений нет, вам придется заказывать у кого-то доработку этой функции.
Здравствуйте, подскажите, как вывести, например, поля с ценой больше 1000?
о, это вам нужно изучить такой параметр как meta_compare — в кодексе об этом есть. Также есть интересный плагин , который создает формы на основе значений произвольных полей. Но платный, 600 р, зато не нужно будет ковыряться в коде
Спасибо, разобрался!
привет.
если изменить название сайта главной страницы-это скажется на его индексации?
на индексации — нет, но может сказаться на позициях
Подскажите, если пакетом загружать произвольные поля (есть 4 поля), как они обозначаются в БД?
Например, заголовок — post_title, дата — post_data.
А конкретные поля, если в ACF название testovoe_pole