Новый Cherry Framework 4 | Вишенки созрели
Привет, Хабр! На этой неделе появилось обновление довольно полезного и интересного фреймворка »Cherry Framework» — периодически поглядываю за ним, так как ранее принимала участие в его разработке и мне как минимум интересно, в каком направлении он развивается сейчас. Внутри поста поговорим о том, что это за фреймфорк и что же такого натворили в новой версии.
Что такое Cherry Framework?
Для тех, кто не в курсе, Cherry Framework — фреймворк для CMS Wordpress. Он работает посредством дочерних тем и подходит как для обычных пользователей Wordpress, так и для разработчиков. Также в фреймворк входят плагины, которые могут расширить возможности темы для WordPress. Он упрощает работу по созданию тем, так как в нём уже реализовано много опций.
Возможности фреймворка позволяют создать любой сайт, от персонального блога до интернет-магазина. Ограничений в дизайне, начиная с версии 4, нет. Cherry Framework бесплатный, выпускается под GPL-лицензией.
На основе Cherry Framework выпускаются бесплатные и платные темы, а также плагины. Монополистом по темам для Cherry Framework на данный момент является площадка продажи шаблонов TemplateMonster.
Стили фреймворка созданы на основе стилей Bootstrap 3. Хоть разработчики уже ушли далеко от Bootstrap 3, сетка сохранилась. Из приятного — фреймворк полностью адаптирован под мобильные устройства.
Обновление Cherry Framework 4
В данном обновлении разработчики перекроили много кода, изменили некоторые подходы и админку, дизайн которой стал приятнее и удобнее.
Для ознакомления к обновлению прилагается бесплатная тема — посмотреть и скачать можно на этой страничке.
Авторы фреймворка попытались сделать структуру кода объектно-ориентированной. Конечно, это правильное решение, учитывая специфику проекта — надеюсь, в дальнейшем мы увидим продвижение в данном вопросе.
В фреймворке появилась модульная система. Для примера, это отрывок из index.php:
if ( have_posts() ) :
/**
* Hook fires immediately before posts loop output start
* @since 4.0.0
* @hooked 10 cherry_paging_nav lib/functions/template-tags.php
*/
do_action( 'cherry_loop_before' );
while ( have_posts() ) : the_post();
do_action( 'cherry_entry_before' );
do_action( 'cherry_entry' );
do_action( 'cherry_entry_after' );
endwhile;
По этому принципу сейчас сделаны все .php-файлы, которые отвечают за формирование страницы.
Как мы видим, модули вызываются через do_action (); . Таким образом, настраивая отдельные модули, мы можем менять дизайн, не переживая, что остальные элементы поломаются. К тому же легко добавлять свои модули в код. Хотелось бы в дальнейшем увидеть модульность ещё и в css-коде, а не только в php.
Улучшилась эффективность и быстродействие. Настройки темы работают очень быстро, все изменения сохраняются моментально — в прошлом эти функции работали намного медленнее.
Удобная панель настроек радует своим объёмом опций. Начиная от таких банальных настроек как выбор favicon и заканчивая настройкой стилей элементов форм (radio, checkbox и т.п.). Данный набор опций должен быть очень полезен и удобен для любителей кастомизации.
Также в теме имеются такие опции, которые обычно идут только с плагинами, и зачастую эти плагины платные. Например, Maintenance mode, который незаменим при запуске и разработке сайта.
Для пользователей плюсом будет возможность чуткой настройки внешнего вида постов и страниц.
Настройки «Grid Type» устанавливают на шапку, основную часть и подвал CSS-класс в зависимости от выбора опции. Таким образом можно создать 3 варианта внешнего вида каждого из блоков посредством стилизации блоков через эти классы, благодаря чему разнообразить дизайн сайта.
Скомпилировать и сжать все CSS-файлы можно через настройки фреймворка.
Имеется масса плагинов, которые сделали специально для фреймворка. Разработчики уверяют, что данные плагины не зависят друг от друга и их можно использовать с Cherry по отдельности.
Список плагинов:
- Cherry Wizard — быстрая установка тем на Cherry;
- Cherry Social — использование социальных сетей в теме;
- Cherry Charts — плагин для создания диаграмм;
- MotoPress — редактирование контента, структуры страницы непосредственно в админке;
- Shortcode Template Editor — при помощи данного плагина можно редактировать шорткоды;
- Cherry Shortcodes — большой набор шорткодов для страниц и постов;
- Cherry Services — плагин, который добавляет новый тип постов «Услуги» — эти посты отличаются от обычных, в них есть специальные поля и стилизация;
- Charts — еще один плагин для создания диаграмм;
- Cherry Data Manager — плагин, который осуществляет импорт и экспорт данных сайта, будет полезен при переносе сайта на другой хостинг и/или домен;
- Cherry Team — плагин, который добавляет новый тип постов, на этот раз для описания работников; в данном случае тоже есть необходимые поля, например, поле «Должность»; соответствующее оформление также прилагается;
- Cherry Testimonials — плагин работает по тому же принципу, что Cherry Services и Cherry Team, только добавляет «Отзывы»;
- Cherry Portfolio — этот плагин создаёт тип постов «Портфолио» со специальными настройками и оформлением;
- Portfolio Plugin — ещё один плагин, при помощи которого можно создать галерею и портфолио;
- Simple Slider — плагин для размещения на сайте слайдера;
- Custom Sidebars — плагин, который поможет создаться дополнительные сайдбары.
Также фреймворк интегрировали с плагинами WooCommerce и BuddyPress, а это одни из самых популярных плагинов на данный момент.
Расширений очень много и у каждого своя задача. Есть более общие плагины, например, Cherry Shortcodes, а есть и узконаправленные, такие как Cherry Team, Cherry Testimonials, Cherry Services и т.п. Такая градация сделана для того, чтобы при разработке можно было сформировать необходимое количество функций. Неподготовленного человека может испугать и ввести в заблуждение такое количество плагинов, но, если разобраться, какой для чего, в дальнейшем проще и быстрее собирать тему.
У меня сложилось двоякое мнение, так как плагинов, возможно, больше, чем нужно, и некоторые можно было бы объединить, но также я понимаю, что во время разработки проще взять, что нужно, и не делать лишнюю работу.
Хочу обратить ваше внимание на плагин для легкой установки темы — Cherry Wizard. С его помощью можно поставить Wordpress-тему за несколько кликов, при этом не заходя ни на сервер, ни в phpMyAdmin. Это делает установку намного удобнее, доступнее и легче.
Ограничения в дизайне, которые были в предыдущих версиях, сняты, теперь их нет вообще. Видимо, это достигается за счёт гибкости фреймворка, огромного количества функций, шорткодов. Насколько разнообразными могут быть сайты, созданные на этом фреймворке, Вы можете оценить, просмотрев хотя бы эти темы: бизнес, фотосайт, интерьер, еще один бизнес и сайт для образовательных компаний.
Для примера, так выглядит набор шорткодов, которые мы получаем из плагина Cherry Shortcodes. Думаю, достаточно большое количество для воплощения идей дизайнера. Но разобраться в них с первого раза непросто, неплохо было бы увидеть еще какое-то более-менее подробное описание, возможно, в виде всплывающей подсказки.
Подводя итоги, хочу сказать, что мне обновление понравилось, разработчики приятно удивили — чувствуется, что было вложено много сил, но всё равно есть куда дальше двигаться и развиваться. Спасибо за внимание!