140x140

Система Автоматизированной Разработки

Bitrix vs Contento часть 1

Bitrix vs Contento часть 1

2018-03-14

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

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

Шаблон сайта для bitrix обязательно должен включать в себя два файла footer.php и header.php. По желанию можно добавить файл template_styles.css . Соответственно, рендер страниц происходит следующим образом: вы через админ-панель или вручную создаете файл, например: index.php . В начале файла вы должны includить header.php

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");

В конце файла, соответственно, нужно по похожему принципу includить футер

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php")

Между этими двумя командами соответственно вам нужно прописывать контент. Стоит сказать, что механизм инклуда двух файлов можно избежать, если вы будете создавать страницу и прописывать там только html. Окей, перейдем к самому главному. Посмотрим каким образом можно работать с меню.

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

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

Все догадались, что этот код вызывает меню? Я, например - не робот, поэтому я не догадался. Ну да ладно, возможно я придираюсь по мелочам. Окей. Для того, чтобы нам вывести top меню, надо просто посмотреть шаблон Bitrixа по умолчанию и найти в нем шаблон отвечающий за меню.

Окей, копируем папку components в папку нашего шаблона.Открываем файл /components/bitrix/menu/left/template.php / И вот что мы видим в этом файле

Чуть рихтуем файл под наш новый супер шаблон и получается вот что.

Открываем наш веб-сайт для тестов и втайне надеемся, что все должно отображаться вот так:

Но удача не улыбнулась нам. И вместо всего этого мы видим вот это.

В ходе поисков причин: почему это происходит, были проверены все вероятные и невероятные теории. В эти моменты ощущаешь себя детективом. Вместо того, чтобы посадить верстку проводишь детективное расследование. Но причина оказалась настолько банальной, как изначально мне казалось - у разработчиков Bitrix не все в порядке с логикой. Потому что в шаблоне по умолчанию выяснилось, что шаблон меню horizontal_multilevel находился знаете где? В совершенно другом месте. Преступление раскрыто и меню заработало!

Теперь рассмотрим как бы это выглядело в Contento.

Список меню выглядит как-то так.

Добавим нужные ссылки и посмотрим, что у нас получится.

Откроем вкладку шаблон и увидим

Итого, все что нам нужно для интеграции меню - это создать файл в нужном месте, а именно /home/admin/web/contento-cap.ru/public_html/themefrontend/plugin/menu/menu4.php . Написать интеграцию просто,так как пример того как это выглядит находится прямо в админ.панели - не нужно искать, что где находится. И так мы написали шаблон нашего меню. Вот что получилось.

Все самое основное мы сделали,нам остается только вставить меню в наш основной шаблон веб-сайта. Любители битрикса в данный момент будут разочарованы, так как все что нам нужно для вызова меню - это вставить этот короткий код.

И все работает!! На этом у нас пока все. В следующей части мы поговорим про bitrix highloadblock .