Обновить
9.72

CMS *

Системы управления сайтом

Сначала показывать
Порог рейтинга
Уровень сложности

Wagtail — лучшая CMS на python в нашей галактике

Время на прочтение5 мин
Просмотры41K

Очень абстрактное описание, что такое Wagtail CMS и почему с ней стоит познакомиться разработчикам на Django. Вкратце, Wagtail позволяет в кратчайшие сроки сделать сложные проекты, CMS активно развивается, ее поддерживают настоящие профи.

Читать далее

MastermindCMS2 – Теги

Время на прочтение9 мин
Просмотры1.3K

В этой статье речь пойдет о специальных тегах, которые вы можете использовать для сборки динамических шаблонов в MastermindCMS2.

За свою карьеру программиста я видел множество разных технологий и фреймворков от гигантов индустрии, таких как Oracle, Microsoft, IBM и т. п. Но в каждом из них было какое-то неудобство. А конкретнее у них у всех было одно общее, это необходимость реализовывать серверную логику чтобы можно было использовать ее в шаблонах. И это мне сильно не нравилось, приходилось делать одну и ту же работу из проекта в проект.

Один из таких подходов разнесения логики был паттерн программирования MVVM(Model-View-ViewModel). Его активно продвигали во фреймворках для C#. Структурно с точки зрения разнесения логики, я считаю этот паттерн самым удобным.

Когда я поставил задачу себе разработать удобный фреймворк для работы, то у меня в голове был только один концепт реализации. Который содержал в основе именно MVVM, но я не считал, что это то, что я хочу получить в итоге. Так как проблема написания серверной логики оставалась открытой. И я поставил себе задачу спроектировать фреймворк так чтобы не нужно было каждый раз писать бэк для очередного проекта. Ведь грубо говоря, мы с вами коллеги, решаем одни и те же задачи для разных проектов. Авторизация, управление каталогом продуктов, отправка писем по электронной почте, чаты и прочая энтерпрайз муть. Соответственно опираясь на эти задачи, я начал думать, что нужно сделать чтобы напрямую оперировать с этим на бэке. В результате я решил писать логику парсинга шаблонов на беке, а фронтенд часть делать гибкой и независимой.

Читать далее

MastermindCMS2 — Как начать?

Время на прочтение4 мин
Просмотры1.8K

Как я и обещал, что в целях дальнейшего развития этой технологии я выпущу community-версию для общего скачивания. И вот это свершилось, тут вы сможете ее скачать.

В этой статье я начну рассказывать, как начать разрабатывать свои приложения с помощью MastermindCMS2. Я планирую создать как минимум 5 уроков, с полными объяснениями каждой функции данной технологии. Параллельно будет также YouTube канал с видео, где я также уже буду в виде стрима программировать приложения и рассказывать о своем опыте, и как я пришел к тому, что написал свой продукт для программной разработки. Обучающие видео будут на английском языке, стримы и прочая тематика будет на русском и английском языках.

Одно видео уже готово, но пока не было времени сделать пост-продакшн, анимашки всякие добавить, в общем сами понимаете, если делать продукт, то его надо делать качественно.

После небольшого вступления, давайте приступим именно к сабжу.

Читать далее

Разработка форм обратной связи для магазинов на Joomla

Время на прочтение10 мин
Просмотры5.8K

Небольшой туториал о создании форм обратной связи для интернет-магазинов на Joomla. Рассматриваются случаи, когда для форм обратной связи нужно отображать дополнительную информацию со страницы. Например, информацию о товаре или услуге.

Читать далее

«Предъявите паспорт» или добавляем поля «должность» и «цветовая схема» в профиль пользователя XWiki

Время на прочтение3 мин
Просмотры2.9K

В прошлой статье про XWiki я обещал не затягивать с публикацией новых материалов, но оказалось, что "не затягивать" это понятие растяжимое (простите за каламбур, не удержался). И перерыв вышел долгим.

В этот раз мы рванем сразу с места в карьер и попробуем расширить профиль пользователя в Xwiki.

Если быть точным, то сегодня мы добавим новое поле в профиль, включим возможность каждому пользователю устанавливать собственную тему, а также напишем небольшой скрипт, который выведет нам список сотрудников подразделения.

Читать далее

Доставить за 30 мс: 5 лучших плагинов для оптимизации работы WordPress в 2021 году

Время на прочтение4 мин
Просмотры7.8K

Вы и без нас знаете, что у WordPress есть проблемы. Да, при создании сайтов им пользуются в 40% случаев — на то он и простой, как трёхколёсный велосипед. Но проблема в том, что при желании из этого велосипеда легко можно собрать хоть Франкенштейна социальную сеть с экосистемой встроенных сервисов — достаточно установить десяток-другой, а то и сразу сотню плагинов на сайт. В результате возникают проблемы с безопасностью, совместимостью расширений и скоростью загрузки сайта. Хорошая новость в том, что есть как минимум пять способов заставить WordPress работать лучше — подробней о них в нашей подборке плагинов. О большинстве из них вы уже наверняка слышали, но в списке есть и одна новинка — вместе с другими решениями она позволит вашим пользователям забыть об ожидании загрузки контента на сайте.

Поехали!

Как устроены Advanced Custom Fields в Wordpress

Время на прочтение4 мин
Просмотры15K

Чаще всего в сети публикуются материалы по начальному уровню работы с Wordpress. В лучшем случае обсуждаются документированные возможности самого Wordpress и его различных плагинов. Я стою на позиции, что работа с документацией и использованием документированных возможностей — инструментами, которые вам предоставил разработчик — является приоритетной в разработке. Однако иногда документированных возможностей не хватает и как ответ на этот случай появилась эта статья.

Advance Customs Fields (ACF) – один из популярных плагинов Wordpress. Основная задача — создание блоков дополнительной информации к Постам, Страницам и Товарам. Плагин настолько популярен, что вопросы по нему входят в список MustKnow на различных собеседованиях.

Ничего не имею против самого плагина — это очень удобный инструмент, с широкими возможностями. Имеет встроенную возможность выводить редактирование статей во фронтенд. Позволяет создавать поля по условию и связывает поля с нужными постами. Например, для новостного сайта вы решили в блоке спортивных новостей создать дополнительный тег с указанием вида спорта, чтобы не забывать это делать, вы создаете поле типа select, которое будет появляться при выборе категории «Спорт» и требуете его обязательного заполнения.

Конечно, чтобы описать стандартные возможности ACF мало приведенного примера. Используют ACF в самых различных случаях, документацию плагина вы сможете найти на официальном сайте. Для тех, кто ещё не освоил иностранные языки есть неплохой сайт с документацией на русском языке.

Читать далее

Как мы SaaS решение переносили на сервера клиента. Стоит ли оно того?

Время на прочтение7 мин
Просмотры1.4K

Мы развиваем российскую платформу по управлению контентом дополненной реальности: в web-редакторе совмещается digital контент и маркер (как привило, это фотография реального объекта), а с помощью мобильного приложения, в AR режиме, digital контент накладывается на маркер. 

В данной статье хочу поделиться опытом с теми, кто начинает развивать свои B2B SaaS продукты и может столкнуться с вопросом переноса своего решения на внутренние ИТ мощности корпоративных заказчиков. Опишу, не столько технические нюансы, сколько организационные и архитектурные. Хочу акцентировать внимание на объеме дополнительных работ, которые необходимо учитывать при продаже внедрения Enterprise клиенту. Тем, кто работает изначально по модели внедрения ПО, читать будет не особо интересно, а SaaS проектам надеюсь, что будет полезно.

Заказчика не называю.

Читать далее

Создание внешних запросов с использованием HttpFactory (Joomla)

Время на прочтение4 мин
Просмотры2.7K

Обычно когда мы хотим сделать внешний запрос мы используем для этих целей cURL. Настройка cURL довольно громоздкая, да и в принципе проблематично держать в голове все необходимые настройки. Также есть сервера без поддержки cURL, а значит Ваш код не будет работать. В этих случаях нужен запасной вариант.

С использованием Joomla довольно легко настроить cURL и все необходимые резервные варианты подключений в одной строчке кода.

Читать далее

Дайджест Joomla за весну 2021

Время на прочтение8 мин
Просмотры4.5K

Все главные новости из мира Joomla за осень 2020 и весну 2021, в одной статье.

Традиционно наш дайджест обозревает новости, расширения, шаблоны и статьи из мира Joomla. Последний выпуск прошлого года вы можете прочитать здесь.

Читать далее

MastermindCMS – что это такое? Система управления контентом? Фреймворк?

Время на прочтение5 мин
Просмотры3.3K

Вот и пришло время подвести итоги нашей разработки. Эта статья станет заключительной в описании истории развития нашего проекта. Я постараюсь подробно рассказать о полученном опыте создания нового инструмента для построения веб-сайтов.

Миллионы web-проектов увидели свет, но изо дня в день программисты все еще пишут тонны исходного кода, решая похожие задачи на разных инструментах. Речь в этой статье пойдет о технологии, которую мы разрабатываем на протяжении 4-х лет. Я уже ранее рассказывал о том, какой была моя задумка и цель в создании данного продукта и чего именно я хотел добиться, программируя инструмент для повседневной рутинной разработки веб-приложений. Мне пришлось пройти свой путь от презентаций моего продукта на стартап-pitch'ах и хакатонах и до получения первого реального проекта в сети, где я смог успешно применить мою разработку.

Все началось в далеком 2017 году, когда мне пришла идея написать для себя сайт. Я, недолго думая, взял Drupal и настроил его как headless-cms. Мне хотелось написать отдельно фронтэнд и не копаться с темами от Drupal. Но что-то пошло не так! Я столкнулся с множеством ограничений в проектировании сущностей в административном интерфейсе. Тогда я решил попробовать это сделать на WordPress. Но я совсем не ожидал, что мне придется создавать отдельные контроллеры под каждый тип сущности. Но честно признаться - меня это расстроило. В Drupal хотя бы есть Views, которые относительно легко сконфигурировать в административной консоли и создать endpoint'ы для доступа через REST API, но тем не менее там есть свои ограничения. После этого я провел небольшой анализ существующих CMS и понял, что придется писать все под себя.

Читать далее

CS Cart или через терни к черной дыре костылей и оптимизаций

Время на прочтение6 мин
Просмотры11K

Совсем недавно, я стал разработчиком модулей для CS Cart. Случилось это по воле случая: меня взяли на работу в Петербургскую сеть интернет магазинов, торгующих вейпами и всякими интересными штуками для удовлетворения потребностей физического характера страждущих пар и одиночек (кто не понял - еще не дорос ). Оба интернет магазина развернуты на двух витринах с разными доменами, но одной админкой и общей базой данных. Что же с ней не так? Думаю о CMS написано много, но я добавлю свою ложку дегтя в бочку с дегтем .

Читать далее

Пишем расширение для MediaWiki

Время на прочтение13 мин
Просмотры4.1K

В рунете я почти не встречал материалов о том, как писать расширения для MediaWIki. Основной стартовой точкой был и остается официальный сайт платформы, но там процесс расписан не очень дружелюбно по отношению к новичкам. Попробуем же это исправить!

В этой статье я покажу, как написать простейшее расширение для Медиавики, включающее в себя новый метод API, расширение парсера и немного js/css для фронтенда. А чтобы не было скучно, приплетем сюда работу с Google Knowledge Graph.

<?php explode( ' ', 'your mind' ); →

Ближайшие события

AEM Test Automation — Create Pages via HTTP Requests

Время на прочтение7 мин
Просмотры2K

"Автоматизированное тестирование AEM" или "Создание AEM страниц с помощью http запросов".

Чаще всего АЕМ тестируют с помощью моков или на страницах, взятых с продакшена.

А что если создавать AEM страницы на лету, не через UI? Создали пару страниц, пошли проверили функциональность, создали новые — проверили для новой конфигурации.

Читать далее

«Все на панель!» или несколько полезных приемов настройки панелей Xwiki

Время на прочтение6 мин
Просмотры9.5K

В прошлой статье я предложил рассмотреть Xwiki, как бесплатную замену Confluence и заодно пообещал поделиться несколькими советами по настройке.

Вот уже больше полугода я использую Xwiki в качестве базы знаний для небольшой команды разработчиков.

В процессе работы у меня возникали определенные трудности, документация не помогала, а ответов на англоязычном форуме приходилось ждать с большим вожделением, чем первого глотка пива в выходной.

Мне бы хотелось облегчить жизнь энтузиастам из волшебного мира документирования, поэтому я решил поделится своими наработками.

На текущий момент я планирую подготовить мини цикл из четырех - пяти статей.

В первой статье мы поговорим о простых приемах настройки панелей в Xwiki.

Читать далее

Сайт на Wordpress VS PageSpeed Insights

Время на прочтение9 мин
Просмотры17K
image

В это статье мы расскажем как оптимизировали конкретное Wordpress веб приложение. Какие действия были выполнены чтобы попасть из красной зоны оценки PageSpeed Insights в зеленую, тут будет мало общих рекомендаций универсальных для любых платформ и приложений, которыми пестрит поисковая выдача, a большe описание действий, которые повлияли на результат в рамках конкретной задачи.

Читать дальше →

Как документировать базы данных на MediaWiki и не свихнуться

Время на прочтение22 мин
Просмотры11K

В этой статье пойдет речь о том, как я подошел к документированию баз данных продуктов Veeam на MediaWiki движке. Сразу оговорюсь, что документация эта служит исключительно для внутреннего пользования, поэтому я много где позволял себе определенные вольности.

Хоть главной причиной выбора платформы MediaWiki и было нежелание плодить без необходимости сайты документации, это решение также позволило воспользоваться многими преимуществами MediaWiki: понятный и привычный интерфейс, удобство поиска, полуавтоматическое создание документации и многое-многое другое.

Ну что ж, рассказывай →

SEO-плагины пишутся шарлатанами?

Время на прочтение4 мин
Просмотры6.5K

Или лучше "Значительная часть SEO-плагинов под WordPress пишется шарлатанами?", если формулировать вопрос с доскональной точностью.

По ряду причин в последнее время я занимаюсь перебором SEO-плагинов на своем собственном сайте. Включаю то один, то другой ― от флагманов к малоизвестным. Смотрю, что как работает. И вот что увидела.

Читать далее

Сказ о том, как я с гидрой боролся

Время на прочтение6 мин
Просмотры16K

На Хабре принято рассказывать про красивое программирование... Увы, в суровой практике такой красоты пока не встретил. Зато ввязался в эпичную битву: адский легаси, shared-хостинг с кучей сайтов и старый Битрикс с вирусами против самописного сканера на PHP. Даже как-то неприлично про такое вслух... Но сканер наверняка кому-то пригодится!

Читать далее