Записи с меткой «bitrix»

2

Битрикс, закоммить меня полностью

Андрей Шеванов
11 апреля 2016 года

Боль

С чем обычно сталкиваются Битрикс-разработчики, использующие в работе систему контроля версий GIT? А с тем, что у них развивается нездоровая реакция на попытки контент-менеджеров отредактировать (создать, удалить) страницы сайта в админке. Связано это с тем, что страницы в Битриксе — это физически существующие файлы и папки. Зачастую они подключены к GIT, и любое их изменение со стороны админки, во-первых, в GIT не сохраняется, а во-вторых, при выкладке очередного релиза влечёт лишние телодвижения по ручному сохранению в продакшн-ветку этих изменений, актуализации ветки релиза. И всё это желательно делать тогда, когда все спят, чтобы, не дай бог, за это время никто не успел еще что-нибудь отредактировать. К тому же нереально выяснить, какой контент-менеджер в какое время какой файл отредактировал. Бывает, что контент-менеджерам даже попросту отключают доступ к структуре сайта, и разрешают редактировать только инфоблоки, например. А чтобы отредактировать строчку на странице контактов или абзац на странице пользовательского соглашения, приходится привлекать разработчиков. Однако есть такие проекты, где большая часть контента — это именно статические страницы, причем необходимо обеспечить не только их редактирование, но и возможность создания страниц, создания папок, перемещение и т. п. И обязательно нужно сохранять все эти страницы в GIT. Как быть в таком случае?

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

Метки: ,

Оставить комментарий
0

Все на выборы. Голосование через социальные сети

Валерия Алексеева
11 апреля 2014 года

 

Последнее время я занимаюсь спецпроектами (промо-страницами или промо-сайтами, нацеленными на рекламу продукта, бренда, сервиса, etc.). Часто они реализуются в виде конкурса, где пользователи загружают свои фотографии или видео, а затем голосуют за понравившиеся работы. Зачастую участники голосования — пользователи социальных сетей.

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

Метки: , , ,

Оставить комментарий
0

Сначала была Фоторама

Сергей Смольников
28 марта 2014 года

Мы уже рассказали о некоторых решениях и особенностях работы с Маркетплейс Битрикс. Настало время восстановить историческую справедливость и рассказать о самом первом опубликованном нами решении — «Фотораме для Битрикс».

Когда мы приняли решение о публикации своих решений в Маркетплейс, сложнее всего было определить с чего начать. Используемые нами внутри компании решения масштабируемы и могут быть тиражированы, однако имеют достаточно узкую направленность, поэтому нам необходимо было выбрать простое и популярное решение, которое еще не опубликовано в Маркетплейс и которое можно будет «обернуть» в компонент Битрикс. Мне всегда нравилась JS-библиотека Fotorama от Артема Поликарпова, у нее есть реализация в виде плагина для WordPress и gem’а для RoR, и я сказал: «Почему бы не добавить реализацию для Битрикс (и, возможно, для других CMS)».

Сказано — сделано. Пара часов на определение функциональных возможностей, еще пара часов на сборку минимального функционала, и к утра компонент был готов. Следующими шагами было определение возможностей развития компонента (ведь неразвивающиеся проекты очень быстро уходят в небытие) и непосредственно проверка возможности публикации в Маркетплейс. Необходимые для развития пункты сразу оформились в виде Issue на GitHub: автономный режим работы без CDN Фоторамы, Twig-шаблон, ведь на многих Битрикс-проектах в компании в качестве движка шаблонизации уже используется Twig и другие.

При первой выкладке в Маркетплейс сразу выявился один недостаток платформы — даже если решение включает в себя всего один компонент, для его публикации необходимо собрать модуль. Это странно, ведь другие популярные CMS (Drupal, Joomla, WordPress, ModX) не вносят такой путаницы при публикации расширений. Однако Битрикс постарались упростить жизнь разработчикам и выпустили «Конструктор модулей». Используя пошаговый мастер, с помощью этого конструктора можно очень быстро создать модуль для публикации компонента, а также собрать обновления для него.

На текущий момент Фоторама — наиболее часто скачиваемое решением из опубликованных нами в Маркетплейс — это легко объясняется простотой и востребованностью функционала фотогалерей, а также регулярным выпуском обновлений. Если вы хотите оставить какие-то комментарии или пожелания по работе компонента, вы всегда можете сделать это на странице решения или здесь, в блоге.

 

Метки: ,

Оставить комментарий
0

Битрикс + Twig = Твигрикс

Дмитрий Кораблинов
5 марта 2014 года

Не Битриксом единым…

Когда я начинал свою карьеру веб-разработчика, на многих моих проектах использовалась CMS 1С-Битрикс. Можно долго спорить о ее достоинствах и недостатках, но факт остается фактом: Битрикс продолжает удерживать лидирующие позиции среди коммерческих CMS в рунете.

Но время шло, уровень задач неуклонно возрастал, и однажды я познакомился с платформой, которая определила мои дальнейшие технологические предпочтения и, во многом, сформировала подход к веб-разработке. Речь идет о замечательном фреймворке Symfony2 и всей окружающей инфраструктуре. В частности, одним из наиболее привлекательных инструментов из мира Symfony я считаю Twig — очень красивый, удобный, лаконичный, а главное, неограниченно расширяемый шаблонизатор вывода.

И вот, некоторое время назад, коллеги попросили меня помочь с разработкой одного небольшого, но интересного Битрикс-проекта. Я воспринял это как возможность посмотреть на свой прошлый опыт с новой точки зрения, применить накопленные знания и навыки в несколько ином контексте.

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

Метки: , ,

Оставить комментарий
1

Разработчику на заметку: создание и выкладка модулей для Bitrix Marketplace

Роман Матвеев
26 февраля 2014 года

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

  • Публичная переменная идентификатора модуля в классе модуля (/install/index.php) должна быть объявлена, следуя устаревшим правилам языка: var $MODULE_ID = «modulename»; . В случае объявления ее как «public» при загрузке архива модуля в Marketplace будет выведена ошибка «В файле /install/index.php не указан $MODULE_ID;»
  • При создании партнерского модуля к идентификатору необходимо добавить код партнера. Идентификатор должен будет состоять из префикса и названия модуля, разделенных точкой (например, так: var $MODULE_ID = «htc.modulename»). Название класса модуля и метода-конструктора в этом случае так же будет состоять из двух частей: префикса и названия модуля, разделенных знаком подчеркивания («_»). Так же возможно использование метода __construct().
  • В конструкторе модуля нужно указать его название($this->MODULE_NAME), описание($this->MODULE_DESCRIPTION). Название партнера ($this->PARTNER_NAME) и ссылка на сайт ($this->PARTNER_URI) указываются только в случае создания партнерского модуля и загрузке в Marketplace.
  • Все файлы модуля должны находиться в кодировке cp-1251. При установке на сайт с кодировкой utf-8, они будут автоматически переконвертированы.
  • В процессе тестирования партнерского модуля, загруженного из marketplace, модуль будет присутствовать в пункте «Marketplace -> Установленные решения». В списке «Настройки — Настройки продукта — Модули» его не будет.
  • При создания архива партнерского модуля для загрузки в Marketplace пользоваться инструкцией, расположенной по адресу: http://dev.1c-bitrix.ru/learning/course/index.php? COURSE_ID=43&LESSON_ID=3216&LESSON_PATH=3913.4609.4792.4793.3216

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

Метки: , , ,

Оставить комментарий