Продолжаю перенос всех своих наработок из своего блога на сайте разработчиков компании 1С-Битрикс. На этото раз пост про использование стандартной битриксовой библиотеки всплывающих окон PopupWindow
1C-БитриксПри проверке сайта в валидаторе w3c часто возникает ошибка The type attribute is unnecessary for JavaScript resources. Это значит, что атрибут type='text/javascript' для тега script не нужен. Он считается устаревшим.
Для скриптов, которые мы явно сами подключаем в коде убрать устаревший атрибут не является проблемой, но как же быть со скриптами, добавляемыми через api битрикса? Данный атрибут добавляется автоматически.
1C-БитриксПериодически, при сдаче проектов по программе монитора качества выплывает ошибка о том, что ядро модифицировано, хотя никаких модификаций никто и не делал (ну или делал, но нужно это все отменить). Для таких случаев в системе предусмотрено обнуление ядра - перезаливаются все файлы ядра заново.
Достаточно часто сео-специалисты в своих рекомендациях хотят видеть красивую пагинацию вместо стандартного битриксового ?PAGEN_X=Y.
Честно говоря, не совсем понятно, почему это до сих пор не сделали "из коробки", но, как говорится - "маемо, шо маемо".
Данный пост о том, как сделать пагинацию красивой и ничего не сломать.
1C-БитриксДостаточно частой задачей является расширение ключей кеширования, чтобы можно было значение этих ключей использовать в файле component_epilog.php шаблона компонента. Для этого, нужно эти дополнительные ключи явно указать в файле result_modifier.php
1C-БитриксПонадобилось одним постоянным клиентам сделать доработку - дать возможность массового изменения цены на заданный процент или на заданную величину с автоматическим округлением вверх до ближайшего числа, большего нуля.
Делюсь наработкой - может кому пригодится :)
1C-БитриксДостаточно распространенной задачей при импорте данных со сторонних ресурсов является обработка экселевских документов. Раньше для этих целей использовалось расширение PhpOffice, Но чтобы данное расширение корректно заработало с файлами xlsx - нужно было изрядно поплясать с бубном.
С некоторых пор перешел на PhpSpreadsheet. Данная библиотека является логичным продолжением библиотеки PHPExcel, которая уже несколько лет не поддерживается.
c 14-й версии модуля "Информационные блоки" появилась возможность автоматического создания мета-данных для элементов и разделов инфоблока на основании шаблонов.
Получение этих данных в типовых шаблонах компонентов уже достаточно давно реализовано, но если нужно реализовать получение собственными средствами, для этого можно воспользоваться API.
1C-Битрикс
Если в вашем шаблоне хлебных крошек нет (или они прописаны в устаревшем формате), то их нужно конечно же прописать...
Самым простым будет воспользоваться форматом JSON+LD
1C-Битрикс
При выполнении каких-либо аякс-запросов, стоит показывать пользователю, что система что-то делает, а не просто зависла. Для этих целей пользователю нужно показать прелоадер. в арсенале 1С-Битрикс есть соответствующие функции под данную задачу, вот только прелоадер, который данные функции показывают - слишком примитивный :( Поэтому достаточно распространенная задача менять данный прелоадер на что-то своё, более красивое.
В файлах компонентов доступны стандартные компоненты, благодаря которым можно строить, к примеру, относительные пути. Такие компоненты избавляют от необходимости прописания абсолютных величин в файлах компонента.
1C-БитриксПоступила тут интересная задача: у клиента на сайте выводятся статьи. И вот он захотел, чтобы на странице с полным текстом статьи выводился блок с другими статьями, которые будут похожи на данную. (Под похожими имеются ввиду статьи, в названии или поисковых тегах которых совпадают хотя бы одно слово).
1C-БитриксСтолкнулся с такой ситуацией, что типовой функционал битрикса не определял в механизме оформления заказа моего местоположения. При этом, через GeoIP информацию по городу выдавало корректно. Скорей всего причина в том, что сайт на Украинском языке, а в ядро битрикса залита база на русском и английском языках. К тому же и GeoIP также отдает информацию на русском языке.
D7Данный пост - маленькая шпаргалка для работы с highload-инфоблоками.
1C-БитриксСтолкнулся тут с проблемкой: как отсортировать все товары по цене, если каталог имеет торговые предложени?
При этом проблема даже не с решением того, как это реализовать, а с логикой: по какому полю сортировать? у товара может быть много торговых предложений, каждое со своей ценой ...
1C-БитриксНастройка кеширования с помощью memcache заключается в настройке memcache на стороне сервера (при использовании BitrixVM данный функционал включается в меню модуля "Масштабирование", либо через панель веб-окружения) и настройкой на стороне сайта.
1C-БитриксЕсли в списке товаров показываются торговые предложения, то при использовании умного фильтра отфильтровываются только товары, имеющие тот или иной параметр в торговых предложениях. При этом, у товара показываются все торговые предложения.
В данном посте рассмотрим, что нужно сделать, чтобы в списке показывались только те торговые предложения, которые соответствуют выбранным в умном фильтре параметрам.
1C-БитриксОчень часто сео-специалисты ставят задачу как можно сильнее упростить адрес до карточки товара и до карточки раздела и как результат мы получаем шаблон адреса вида: /раздел/ и /товар/. В таком случае типовой компонент catalog при включенном режиме отдачи 404-й ошибки, будет выдавать ошибку. Чтобы этого избежать, нужно вносить правки в логику отображения.
1C-БитриксПри работе с каталогами, с торговыми предложениями, достаточно распространенной задачей является получение информации о родительском товаре для торгового предложения, добавленного в корзину.
1C-БитриксДля выгрузки каталога товаров в различные площадки, в разных форматах на Marketplace можно подобрать подходящий модуль, и для непрограммиста это будет отличное решение!
Но для себя понял главное - все эти модули очень сложно кастомизировать, если нужно! Если вы программист - лучше сделайте себе свою заготовку, которую в дальнейшем можно расширять, или убедитесь, что вам достаточно того функционала, который предоставляет покупаемый вами модуль.
В данном посте я выложу свою заготовку создания xml-файла с актуальной версией небольшого каталога товаров.
1C-БитриксПодайте заявку на разработку сайта на базе готового решения от компании 1С-Битрикс или одного из партнеров компании. Максимально подробно опишите, чему будет посвящен сайт, если это интернет-магазин - что он будет продавать, нужна ли мультиязычность, будут ли разные типы цен (розница, опт, крупный опт), будет ли интеграция с 1С, будет ли выгрузка товаров на различные торговые площадки...
Вы можете подать заявку на сопровождение вашего сайта на базе 1С-Битрикс. Сопровождение включает в себя: проверка актуальности обновлений сайта, проверка актуальности резервной копии, консультации по сайту. Опишите в заявке, какие еще объемы планируются на сопровождении и на какой срок вы планируете заключить договор на сопровождение - мы подберем подходящий вам бюджет на сопровождение
Вы можете подать заявку на выполнение определенного объема работ по сайту. Опишите в заявке объем работ. Это может быть разработка какого-то нового функционала, доработки по имеющемуся функционалу, доработки под требования сео-специалистов. На основании заявки вам будет сформирован бюджет работ, а также названы сроки на выполнение тех или иных работ.