Bitrix


23.01.2018

Буферизация Bitrix

В работе с одним и проектов столкнулся с проблемой, нужно было весть выводимый контент шаблона сохранить в pdf файл. Подробности разбора проблемы под катом.

07.10.2016

Сегодня столкнулся с проблемой, на решение которой убил больше часа. Суть проблемы, в компоненте sale.personal.order.detail кликнув по кнопке оплатить пользователя переводят не на шлюз оплаты, а просто обновляется страничка.

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

Clip2net_161007224034.png

В итоге проблема была в следующем, верстка страницы состояла из form внутри которого находился весь контент, заменив form на div все заработало.

По всей видимости на сайте лежит скрипт (так и не нашел его) который после загрузки пробегает по странице и обрезает ненужные теги form. Всем удачи в разработке и поменьше багов.

23.05.2016

валюты.jpg

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

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

20.05.2016

ОплатаЗаказа.jpg

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

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

Описание доработок в полной версии статьи. 

18.05.2016

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

АвтоматическаяОтменаЗаказа.jpg

Для таких клиентов "хитрецов" или "забывак", был разработан скрипт агент, который запускается раз в сутки, смотрит если заказ старше "N" дней (задается параметром), то отменяет его.

13.11.2015

nocaptcha.gif

Это уже вторая статья о том,как подключить reCaptcha к CMS Bitrix. Но время идет, уже вышла новая версия reCaptcha, с новыми алгоритмами и непробиваемостью от спам ботов. Подробности под катом, читаем...

05.06.2015

js.jpg

В новой версии Битрикс появилась новая опция Переместить весь Javascript в конец страницы. Данная настройка увеличивает скорость загрузки сайта. По умолчанию все скрипты помещаются в конец страницы, после запуска этой опции на сайте, заметил что вставляемые области с Pastebin съехали в самый низ. Данная проблема решается путем вставки специального атрибута.


17.02.2015

utf-8.png

По умолчанию CMS Bitrix устанавливает сайт в кодировке win-1251, но иногда требуется конвертировать сайт в кодировку utf-8. В статье будет изложена краткая инструкция и скрипт, который выполнит львиную долю операций за вас.

19.09.2014

auth-icon.png

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

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

ТаргетингПоГоруппам.png

Создаем группу Неавторизованные пользователи, данная группа будет динамической, такой же как группа с ID 2 Все пользователи (в том числе неавторизованные) но состав такой группы мы обозначим сами, через события.

19.09.2014

Как не затереть группы пользователя и рубрики подписки или функции Bitrix при работе с которыми нужно быть внимательными


Вот это название получилось :) Но оно передает всю суть и идеологию поста. Итак, на самом деле при работе с API Bitrix нужно быть внимательными со всеми функциями, но есть исключающие функции (это лишь некоторые), такие как:

Их особенность в том, что на вход нужно передавать весь набор массива. Давайте разберем пример. У нас есть пользователь Вася Пупкин с ID 138, данный пользователь состоит в двух группах:

  • 6 - Пользователи имеющие право голосовать и изменять рейтинг
  • 9 - Зарегистрированный пользователь

Нам необходимо включить данного пользователя в новую группу с ID 10 - Помощник администрации. Для установки группы будем использовать функцию CUser::SetUserGroup($USER_ID, $arGroups). Если мы используем конструкцию:

Мы сотрем все группы пользователя и будет установлена одна - 10.