Как стать автором
Обновить

Комментарии 20

Это по битриксу вы не нашли материала? Да ладно?
В начале карьеры работы с битриксом любые поиски обычно начинаются тут (документация для разработчика и полезные ссылки)
Например, курс конкретно по теме:

Интеграция дизайна
А ваша статья, простите, поможет ну уж совсем начинающим, которым лень лазить по документации, и они решили так… потыкать битрикс.
ну собственно для таких и писал
Боже, какой кошмар =(
Рекомендую убрать в черновики и переписать в нормальную, читаемую статью.
Все это довольно подробно описано в курсе для разработчика dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43

Прочитав название ожидал увидеть как по человечески работать с шаблонами, например вместо последовательного вызова header — content — footer, гораздо практичнее content — layout, или что делать с сайдбарами если они появляются только в определенных разделах/страницах, без копипаста шаблонов и прописывания десятков правил, в общем, все что могло бы помоч как-то проще работать с этим куском.

З. Ы. Никто не в курсе когда зарелизят новое ядро?… очень хочится почитать.
Уже зарезили, скрины делал с 12ой версии.

З. Ы. Можно написать и про вашу проблему, не давно как раз делал сайт с разными сайбарами для разных разделов сайта.
Ребята, сайдбары делаются через bitrix:main.include с флагом AREA_FILE_RECURSIVE=«Y». Точка. Зачем писать об этом целую статью?
Катит только если содержимое сайдбара(при css верстке и правый и левый сайдбар оказываются в хидере) не зависит от контента, иначе приходится городить костыли. Выполнение лайаута вместе с сайдбаром после контента решило бы эту проблему и позволило бы отказаться от отложенных фукций.
Поясните, пожалуйста, что значит «зависит от контента»
Например если в сайдбаре выводятся похожие товары, или форма «задать вопрос менеджеру» с привязкой к товару, или в сайдбаре выводятся блоки анонсов из нескольких разделов, а бок текущего надо скрывать итд…

Да и с ajax проблема, пока доходит до выполнения компонента, уже выполнился header, хотя и пошел в буфер, конечно кеш, все дела, но зачем же так криво.

К реализации ajax у компонентов то же дофига претензий, но это к теме не относится…
В запросе карточки товара содержится его ID или код и ещё пачка служебной информации — раздел, код инфоблока и т.п.
Что мешает в подключаемый файл сайдбара поставить компонент «сопутствующие товары» с параметром "ID" => $_REQUEST["ELEMENT_ID"]? То же самое с формой «Задать вопрос». В крайнем случае, если в стандартной комплектации нет компонента, на 100% отвечающего Вашим требованиям — никто не мешает его самостоятельно написать. И написать с нормальным AJAX, раз уж стандартная реализация Вас не устраивает.
Вас не устраивает Битрикс? Вы просто не умеете его готовить.
Стандартный ajax компонентов обладает следущими «особенностями»:
1. компонент на основе trace до файла генерит ajax_id, предсказать его довольно сложно, задать в параметрах нельзя
2. даже если его «угадать» то html перелопачивается вставками вызова битриксовых js библиотек(не опционально)
3. компоненты(до необходимого) и header выполняется вне зависимости от их необходимости

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

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

За полгода плотной работы с битриксом я ни разу не смог написать рабочий с первых 5 попыток код, естественно речь не о hello world.
Я не говорю что битрикс как-то ограничивает, я лишь хочу сказать, все что выход за рамки стандартного функционала переносит в мир ужасного API, архитектуры и способствует написаю говнокода.

Если голова на плечах и руки из плеч, то всё путём =)
Если Вы в курсе всего этого, то извиняюсь. В начале сложилось ложное впечатление.
я делал не много проще, в разделе у которого мне необходим не шаблонный сайдбар создавал файлик (sidebar.php например) а уже в шаблоне проверял:

if(file_exists(/раздел/sidebar.php)) include(/раздел/sidebar.php);
else {какой то стандартный сайдбар}
В публичной 12.0.3 ядро старое(разве что компоненты стало возможно описывать в виде классов), новое ядро должно быть с костылями обратной совместимости и должно было отдельно зарелизиться до конца ноября.
Сегодня заметил, что в системе обновлений выкатили новое ядро.
Если не устраивают стандартные $APPLICATION->GetCurPage(), $APPLICATION->GetCurDir() и CSite::InDir(), можно использовать свойства страницы или раздела для отображения сайдбаров
Да что уж, тогда и данные из $_SERVER подойдут, и вообще всю логику можно в шаблон запихнуть, для лапши фреймворк не нужен!
Проблема с Битриксом не в том, что люди не хотят изучать новое, а в том, что люди не хотят изучать новое просто так.
Потому что пользоваться дорогой системой разработчик начального уровня не будет, он и за копейки не всегда может продать свое решение на бесплатном движке. А учиться «просто так» = отрывать реальную копейку от бюджета в пользу виртуальной, которая может будет, может — нет.

Поэтому, как правило, знакомство с Битриксом начинается, когда разработчик приходит в компанию, которая уже купила эту штуку, и теперь не знает, что с ней делать. Либо когда студии приходит подряд от жадного заказчика, требующего техподдержку продукта, стоящего под 60к за несколько сотен рублей. И таки да, после этого разработчик вполне может научиться нормально работать с системой.

Так что, либо ищите того, кто этот путь уже случайно прошел, и платите ему очень большие деньги, либо берите просто сообразительного и постарайтесь, чтобы когда он научится, Ваши деньги не показались ему слишком маленькими.
ваша правда, я и сам так начинал, пришел в компанию где уже работали с битриксом
У меня был несколько иной путь — постепенное изучение с маленьких оплачиваемых проектов на базовой редакции, которые подкидывал один знакомый.
Потом потребовалось срочно пройти сертификацию для работы над крупным проектом. Пересилил себя и сидел штудировал учебные курсы, прошёл сертификацию (и, кстати, не жалею). Закончили крупный проект, получил денег и бесценный экспириенс, плюс сохранил сертификаты.
А дальше с таким багажом знаний устроился уже в студию, где был простор для экспериментов т.к. 90% проектов студии были на битриксе.
Для досконального изучения системы потребовался год работы, после чего я уволился т.к. понял, что изучать больше нечего и я начинаю тупеть на такой работе. Да и денег там много не платили.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории