Рубрика «cms» - 29

Здравствуйте, хабрапользователи!
В этой публикации будем делиться новостями об очередном релизе нашей разработки: ImageCMS 4.3.
Релиз ImageCMS 4.3
Работа над этой версией стала рекордной по продолжительности за последние полгода — мы готовились к релизу полтора месяца; также впервые провели бета-тестирование. Больше всего внимания уделили таким аспектам, как быстродействие и удобство в управлении движком, взяты во внимание абсолютно все замечания и рекомендации от наших пользователей, клиентов и форумчан.
Основные моменты можно лаконично изложить в следующих пунктах.
Читать полностью »

Сначала, думаю, нужно представиться. Я не программист, программирование для меня скорее хобби, да и из современных языков на момент написания моего велосипеда я знал только Java Script (и немного Java). Так что делюсь не программистскими наработками, а взглядом на генераторы статических сайтов с пользовательской стороны.

Откуда есть пошла

У меня был сайтик, с небольшой посещаемостью и статьями в стиле “я и моя… славная кошка”, который я регулярно пополнял. И, конечно, пытался прикрутить к нему какую-нибудь CMS. Сначала это был wiki-движок, потом — нечто более блоговое. При небольшой посещаемости и слабеньких ресурсах хостинга я, конечно, задумался о переводе сайта на 100% статику.

И понеслась

Читать полностью »

CMS Koken для фотогалерей

Появилась надобность создать сайт с фотогалереей. И пошел искать CMS для сих утех. После некоторого поиска обнаружил неприятную тенденцию. Есть CMS для фотогалерей, но не с современной навигацией, без Lightbox и так далее. Есть красивые HTML шаблоны с всякими вкусностями (например, Gamma Gallery), но без системы управления контентом. Рассматривать WordPress и др. для сайта только с фотками — слишком накладно. Даже опечалился, но поиск натолкнул на одну новую CMS Koken. После небольшого рассмотрения понял, что это именно то, что мне нужно: первоклассная админка с множеством настроек, и современное отображение галерей. А с напильником так вообще красота получается.Читать полностью »

В общем, нигде не нагуглил почему bb3 не не отвечает на запрос HTTP_IF_MODIFIED_SINCE и не отдает заголовок Last-Modified.
А поисковики это дело любят, потому что время обработки страницы иногда сокращается в разы(не нужно сверять контент).
После изучения проблемы и копания в коде созрело решение.
Допилить самому.
Читать полностью »

image

В жизни любого хостинг-провайдера перенос клиентов между собственными серверами – задача достаточно обыденная. Для подобного переноса может быть множество причин: начиная с планового апгрейда оборудования или софта и планового «перераспределения» клиентов в связи с неравномерной загрузкой серверов, заканчивая срочным перемещением пользователей в случае аварий.

Реже в жизни провайдеров возникают задачи по переносу клиентов от другого провайдера shared-хостинга.
Причиной такого переноса может быть как «усталость» хостера-«донора» от подобного высокотехнологичного бизнеса, так и вынос услуг хостинга на аутсорсинг в более крупную хостинг-компанию в случае, если оказание этих услуг не является для решившейся на перемены организации профильным бизнесом (например, если речь идет о веб-студии, интернет-провайдере, провайдере сервис-услуг и т.д.).
Количество потенциальных проблем при переносе клиентов между разными провайдерами намного больше, нежели при переносе внутри одного хостинг-провайдера. Это связано с тем, что инфраструктура «старого» и «нового» провайдера может значительно отличаться:
Читать полностью »

В последнее время очень много говорится о схеме проектирования MVC, почти все популярные PHP-фреймворки уже давно перешли на эту схему. Что же касается Kohana, то начиная с версии 3, реализована иерархическая схема MVC – HMVC. Преимущества HMVC, всем понятны и мы не будем их здесь обсуждать.

Я, как желающий сменить статус «программиста-любителя» на «программиста-профессионала» решил, что уже достаточно изучил PHP и пора начинать работать с фреймворками, выбор моего самого первого фреймворка пал на именно Kohana, т.к. в нем реализуется HMVC, ну и вообще, его много хвалят за простоту.

В реальности все оказалось не просто, но особенно напрягало отсутствие изолированности триад MVC, триады разбивались на части и помещались в разные папки. В моем понимании, триада Model-View-Controller, должны быть изолированны от других триад, и находиться в одной папке, конечно, это можно было реализовать в Kohana, но все будет выглядеть очень «коряво» и запутанно. Еще было не понятно, почему не используется такая замечательная возможность PHP как пространство имен? Просмотрел еще несколько HMVC-фреймворков, но не к одному «душа не легла». Тогда я решил самостоятельно реализовать HMVC.

Сразу установил несколько директив:

  • Должно использоваться пространство имен
  • Автозагрузка классов работает на пространстве имен
  • В автозагрузку можно добавлять несколько папок
  • Каждое приложение имеет свою папку, на которую устанавливается автозагрузка
  • Каждая триада, в том числе и шаблоны, помещается в отдельную папку, соответственно, находятся в своем пространстве имен
  • По умолчанию, части MVC называются своими именами, Controller, Model и View, в каждой папке триады должна быть папка templates для шаблонов
  • Очень простой роутинг, URI просто разбивается в массив
  • Controller похож на Kohana_Controller
  • Controller получает информацию о том, что от него хотят в конструкторе, разбирает информацию URI-массива, после чего запускает метод action()
  • Метод action() проверяет методы объекта и запускает соответственно action_действие()
  • Генерация HTML, осуществляется методом контроллера render()

Потом добавил еще несколько:

  • Роутинг осуществляет расширенный контроллер, он разбивает URI в массив, сначала проверяет свои actions, если не находит, то ищет зарегистрированный контроллер
  • Результат работы модели сохраняется в контроллере, передается в View, при создании в методе контроллера render()
  • Метод action() публичный, созданный контроллер можно еще раз запустить и сгенерировать HTML
  • View похож на Kohana_View, для приложения, View необходимо «вытащить» в глобальное пространство имен при помощи наследования, заодно немного настроив, все остальные View должны быть наследниками глобального View
  • Контроллеры и View должны знать в какой папке и в каком пространстве имен они находятся, для этого они наследуются от специального класса NameSpaceAdapter, это нужно для правильного поиска View из контроллера, а так же папки templates из родительского View
  • Главный шаблон для каждой триады — template.php
  • Контроллеры автоматически передают в View свой action, на основании этой информации View из главного шаблона template.php самостоятельно ищет нужный шаблон action.php, поэтому не должно быть action_template(), это приведет к зацикливанию шаблонов
  • Для администрирования можно создать шаблоны с префиксом admin_action.php, которые можно вызвать только если установлена константа ADMIN

В итоге получилась небольшая HMVC структура, Model не играет роли, поэтому код не привожу, скажу только, что склоняюсь к статическому классу.
Читать полностью »

Обзор Особенности встроенного редактирования контента.

Что нового можно придумать в технологии редактирования контента? Все уже привыкли, что для редактирования приходится вначале искать нужный материал в недрах CMS, а потом искать в большой форме то поле, в котором меняется сам текст. И хорошо, если в этом поле он будет показан с таким же оформлением, как на сайте. Но часто эта форма для управления содержимым является не только очень мощной (когда позволяет внести изменения в метаинформацию), но и избыточной. Ведь если вы забыли поставить запятую, то придётся вновь проделывать все эти операции.
Вместо этого inplace-редакторы дают возможность сконцентрироваться на самом тексте без необходимости искать материал в недрах админки.Читать полностью »

Корректная работа механизмов информационного обмена программ на базе 1С: Предприятие с сайтом PHPShop зависит от того, насколько верно выполнены настройки синхронизации в обработке обмена. Однако, именно выполнение первоначальных настроек чаще всего вызывает у пользователей наибольшие затруднения.

В качестве одного из решений в оказании технической помощи своим пользователям компания PHPShop включили в состав обработок обмена 1С помощник настроек, позволяющий последовательно заполнить и проверить настройки подключений к сайту и ftp-серверу, параметры выгрузки товаров на сайта и обратной загрузки заказов в 1С.
Читать полностью »

Сколько себя помню, всегда любил разные тусовки разработчиков и хороших специалистов разного ИТ-профиля. Из первых рук можно узнать множество интересной информации, а в кулуарах порой возникают уникальные договоренности или раскрываются разные секреты. К сожалению, мой родной Екатеринбург — не самый передовой город в этих вопросах. Попробуем исправить ситуацию?Читать полностью »

Начиная с сегодняшнего дня у HolyCMS 3 появилась онлайн-демо – теперь можно оценить возможности интерфейса администратора и редактора сайта без установки на собственный хостинг!

HolyCMS 3 — онлайн демо сайты
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js