Рабочий лытдыбр — плагин Custom Metabox Panels
Как я и обещал ранее, в этом посте я расскажу вам подробности своей новой работы. А так как она непосредственно связана с WordPress, то этот пост будет еще более интересный. Одной из первых моих задач было придумать что-то такое для WordPress, что могло бы упростить задачу ввода большого количества данных и их структуризации.
Для этого мной был придуман плагин, который позволяет добавлять custom fields в виде сэтов и отдельных панелек в админке при написании нового поста. Разумеется, прежде, чем изобретать велосипед, я погуглил вдоль и поперек. Видел аналогичные решения, но их главная проблема в том, что это в основном всем hardcoded в functions.php или реализовано посредством плагина с лимитацией на создание всего 1 панели.
Мой плагин, условное название «Custom Metabox Panels» позволяет добавлять в админку написания постов неограниченное количество таких панелей с неограниченным количеством полей для ввода. Все панели и поля создаются очень легко через административную часть плагина. Для наглядности скриншот ниже.
Это административная часть плагина. В ней можно добавлять новую панель с сэтом полей для custom field. Добавленные панели появляются в таком виде при написании поста:
Ссылка на скриншот 2 в полный размер.
Как видите, его предназначение весьма ясно. Допустим, вы делаете сайт для компании и используете WP в качестве CMS. У компании несколько линий продуктов, каждая из которых имеет свои особенные характеристики продуктов. Использовать custom fields в привычном стандартном виде просто задолбаешься и в конечном итоге будешь путаться. А наличие таких метабоксов для каждой линии продуктов заметно облегчает задачу ввода данных.
Технические данные плагина
Мой плагин «Custom Metabox Panels» немного особенный и я постарался сделать его как можно более простым в использовании. При его использовании нужно иметь в виду:
- Плагин для своей админки подключает последнюю версию jQuery (вместо текущей 1.3.2).
- Данные о метабоксах хранятся в специальной таблице wp_cfcmp, которая создается и удаляется при активировании и деактивировании плагина соотвественно.
- Доступ к администрированию метабоксов добавляется к меню «Записи» (мне так было удобнее).
- POST данных делается «грубо» а ля oldschool (не смог пока разобраться с AJAX-запросами из админки).
- Custom Fields хранятся там, где и положено в wp_postmeta. Поэтому при удалении метабокса можно опционально попросить WP удалить введенные ранее данные.
- Пока отсутствует опция редактирования метабокса (не вижу смысла ее пихать в данный момент).
Плагин пока что только на английском, но на следующей неделе скорее всего сделаю локализацию сразу на 3 языка.
Еще хочу избавиться от «грубого» сабмита данных и сделать его полностью ajax-совым.
Есть еще один нюанс, который я не смог пока решить — это как логически связать сэт данных из метабокса с типом продукта. Это может быть категория поста или метка — в моем проекте я использую категории. Но все равно, не могу логически связать сэт метабокса с конкретной категорией.
В идеале, конечно, было бы добавить возможность выбора категории при создании метабокса. В общем, пока думаю и готов выслушать предложения.
Вот. Пока все. Плагин еще в тестировании. Если кто-то заинтересован, то могу выслать в частном порядке архив для тестирования. Комментарии, пожелания, ретвиты и баззы приветствуются.
Постовые
Самые крутые ноутбуки Одесса с доставкой по Украине.Новости Одессы. Одесса важнейший экономический и туристический центр Украины.


Оч. интригующе :). А как записаться в тестеры?
(ЗЫ. Размер текста в поле комментария ОЧЕНЬ мелкий!!!)
Сегодня скину в почту архивчик :)
Можно меня тоже в тестеры? :)
и начиная с какой версии вордпресса этот плагин можно использовать?
А можно более полный кейс использования? Куда потом эти кастом феед вставлять? (Возможно очень ламерские вопросы, но WP пока в процессе изучения)
Custom fields крайне полезная штука. Их удобно использовать, когда нужно добавлять дополнительную информацию в пост. Или реализовать какую-то внештатную логическую схему, которую стандартными методами нельзя сделать. У меня на блоге custom fields используются в таких постах:
www.slaff.net/blog/2010/0... -world-expo.html
Проблема CF в том, что когда их много, то начинаешь путаться и становиться неудобно ими управлять. Мой плагин делает управление CF намного более комфортным.
Понятно, спасибо. Посмотрю, как возможно использовать.
Идея хорошая.
Я уже более года пользуюсь Custom Field Template. Очень удобный плагин. Можно настроить несколько шаблонов, использовать разные типы полей ввода, например SELECT, RADIO, CHECKBOX (для удобства автора поста).
Информация тут:
wpgogo.com/development/cu...ld-template.html
wordpress.org/extend/plug... -field-template/
Может пригодится.