• Bitrix есть ли событие на сохранение профиля покупателя?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Можно было бы, если бы они были.
    В реальности там есть 2 механики: создание "группы" пользовательских свойств и редактирование "группы" пользовательских свойств.
    По факту "группа" пользовательских свойст и есть профиль покупателя.

    Вот только заполнение идет прямыми запросами в базу данных, поэтому вклиниться можно только в компоненты и события оформления заказа
    Ответ написан
  • Какую сделать структуру и запросы для каталога?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Для начала читаем как можно хранить деревья: https://habr.com/ru/post/153861/

    Я бы сделал по-другому:

    1) Таблица с иерархией категорий tbl_category по методу Nested Sets

    2) Таблица товаров tbl_product
    - id,
    - name,
    - art,
    - price

    3) Таблица связи товара с категорией tbl_product_category
    - product_id
    - category_id
    Ответ написан
    3 комментария
  • Как работает Битрикс с memcached?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Подскажите работает ли Битрикс с memcached.


    Да, работает. Но для последних версий битрикса рекомендуется использовать Redis.
    https://dev.1c-bitrix.ru/learning/course/index.php...

    Второй вопрос сильно ли может помочь memcached для ускорения работы сайта?


    Все относительно. Кеш memcached/redis работает однозначно быстрее чем файловый кеш.
    Но проблема у вас может быть совсем не в кешировании.

    Например если ни один компонент не складывает данные в кеш и постоянно обращается к базе то изменение механизма хранения кеша не поможет. А если под кеш выделить мало оперативной памяти (по умолчанию в bitrix env идет вроде как либо 64MB либо 1GB), а кеш большой то он может еще и замедлить работу.

    Возможно у вас есть подключение внешиних скриптов или некешируемые запросы или верстка вашего сайта слишком огромная и сам парсинг занимает достаточно много времени.
    Ответ написан
    5 комментариев
  • Как связать форму обратной связи с Битрикс 24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Все достаточно просто:
    - Находите endpoint куда отправляются эти формы (отправка же формы происходит куда-то?)
    - В Битрикс24 создаете входящий веб-хук с правами на создание лидов в CRM
    - В найденном endpoint прописываете отправку crm.lead.add

    Дя того чтобы это было еще и максимально безопасно лучше дополнить это решение: в битрикс24 создать отдельного пользователя с правами на создание лидов (другого доступа быть не должно) и уже от него создать входящий веб-хук.

    При этом ни внешний вид, ни механика существующих форм не пострадает
    Ответ написан
  • Можно ли сделать наблюдателя на тег в Bitrix24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Штатно такой возможности нет.

    Теоретически существует возможность написания модуля или кода который бы это делал, но штатно такого не предусмотрено.
    Ответ написан
  • Как в DealTable::getList включить проверку прав CRM?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Вы неверно трактуете исходную точку.

    DataMapper'ы это низкоуровневая прослойка между данными и вашим кодом. Там не должно быть никакой проверки прав и соответственно ее там нет.

    Для получения списка сделок с правами и сохранением обратной совместимости вы обязаны использовать методы:
    CCrmDeal::GetList($arOrder = Array('DATE_CREATE' => 'DESC'), $arFilter = Array(), $arSelect = Array(), $nPageTop = false)
    CCrmDeal::GetListEx($arOrder = array(), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array(), $arOptions = array())


    Официально нового API (как принято говорить D7) для CRM нет.
    Ответ написан
    Комментировать
  • Не подгружаются стили и скрипты в слайдере Битрикс?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Для вывода своего компонента используйте bitrix:ui.sidepanel.wrapper

    Ваша ошибка следует из того, что вы не знаете как именно работает слайдер в режите iframe
    Ответ написан
    Комментировать
  • Не добавляется пункт меню в профиле пользователя Битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Когда готовили новую карточку пользователя (sidebar) механизм непосредственно выводящий ссылки в верхнее меню был изменен в связи с чем эта механика перестала работать.

    Можете присоединиться к коллективному тикету (2623832) и писать что вам тоже нужна эта механика.
    Для этого напишите ваше сообщение в техподдерку и укажите что подобная проблема поднималась уже поднималась (номер тикета в helpdesk битрикса).
    Ответ написан
  • Как сделать редирект в другой каталог?

    gromdron
    @gromdron
    Работаю с Bitrix24
    nginx тут вам особо не поможет: пересматривайте подключение скриптов на странице.
    ЕСЛИ скрипты подключены по относительному пути и начинаются с символа слеш (/src.js), то такие пути будут искаться от корня сайта, а не вашей директории.
    Конечно можно попробовать использовать тег base, но он тут вряд ли поможет.
    Ответ написан
  • Как в битрикс бизнес Создать скидку только для неавторизованных пользователей.?

    gromdron
    @gromdron
    Работаю с Bitrix24
    У блоке "Дополнительные условия" в подмножестве "Пользователи" выбрать пункт "Группа".
    Переключить режим из "состоит в группе(ах)" в "не состоит в группе(ах)".
    В списке групп отметить все, кроме "Все пользователи (в том числе неавторизованные) [2]".
    Неавторизированный пользователь будет состоять только в этой группе.
    Ответ написан
  • Как настроить чпу в Битрикс когда большая вложенность разделов?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Вообще как уже сказал VicTHOR можете использовать такой параметр как SECTION_CODE_PATH (подробнее о ЧПУ вы можете почитать в документации)

    Что касается вашей структуры:
    Раздел1/Раздел2/Раздел3/Элемент


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

    Используйте макет для разделов:
    /catalog/#SECTION_CODE_PATH#/
    И для элементов:
    /product/#ELEMENT_CODE#/

    Это позволит вам включать один товар в несколько разделов, но при этом не будет проблем ни с ЧПУ ни с canonical ни с поиском.
    Ответ написан
    Комментировать
  • Где находится в коде этот счётчик (коробочная версия)?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Перед началом: да, можно вывести счетчик, но если вы хотите сделать обновление данных через push-сервер нужно немного модифицировать шаблон меню.
    И под счетчиками, я понимаю стандартный механизм использующий API: CUserCounter (таблица b_user_counter)

    Чтобы вывести цифру нужно сделать следующее: при описании меню (.left.menu.php) в 3-й параметр пункта нужно добавить параметр counter_num.
    Array(
    	'Test menu',
    	"/test", 
    	Array(), 
    	Array(
    		'counter_num' => 7,
    	), 
    	"" 
    ),


    В данном случае 7 - цифра, которая будет отображаться около номера.
    Сам же счетчик можно наполнять данными откуда угодно.

    Однако если вы хотите добавить обновляемый через push-сервер счетчик то нужно добавить еще один параметр counter_id (это идентификатор стандартного счетчика битрикса):
    Array(
    	'Test menu',
    	"/test", 
    	Array(), 
    	Array(
    		"counter_id" => "test-counter-menu",
    		'counter_num' => 7,
    	), 
    	"" 
    ),


    Далее, в шаблоне компонента меню (/bitrix/templates/bitrix24/components/bitrix/menu/top_horizontal/template.php) нужно перед кодом:
    $items[] = $newItem;

    добавить:
    if ( isset($item["PARAMS"]["counter_id"]) )
    {
    	$newItem['COUNTER_ID'] = $item["PARAMS"]["counter_id"];
    }


    Теперь когда вы будете обновлять счетчик, он будет автоматически обновляться у пользователей.
    Ответ написан
    1 комментарий
  • Как сделать отчет в битрикс-24 с контактами?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Штатная механика отчетов сильно ограничена.
    Вы можете использовать отчеты только в рамках той сущности, к которой создаете отчет. Поля связанных сущностей по большей части не доступны.

    Для того чтобы получить данный отчет можно воспользоваться возможностью системы и расширить ее при помощи REST-методов или API коробочной версии
    Ответ написан
    Комментировать
  • Как создать лид + контакт, но чтобы лид не помечался как повторный?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    В облаке - никак.
    Любой лид к уже существующему клиенту будет повторным.
    Ответ написан
  • Как подсчитать кол-во звонков?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Подсчет придется реализовать на стороне выполняющий запросы в REST-сервису битрикс24.

    Для получения списка звонков можно воспользоваться методом voximplant.statistic.get
    Ответ написан
    Комментировать
  • При импорте пользователей из AD в Битрикс не импортируются пароли, что нужно сделать для импорта паролей?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Пароли пользователей не синхронизируются, так как в случае NTLM авторизации проверка пароля происходит не на стороне Битрикс24, а на стороне серера AD.

    Алгоритм (без SSO) следующий:
    1) Пользователь открывает в браузере портал
    2) Портал проверяет наличие сохраненной действующей авторизации Если она есть то показывает ему портал. Если нет - форму входа
    3) Пользователь вводить логин и пароль
    4) Портал ищет пользователя по логину. Если тип пользователя внутренний, проводит проверку по логину и хранимому паролю. Если тип пользователя внешний (NTLM, соц.сети и т.п.) отдает логин и пароль контроллеру внешней авторизации.
    5) Если контроллер ответил разрешением, показывает пользователю портал.

    Таким образом при интеграции с AD пароль, находящийся в AD не попадает на портал
    Ответ написан
    Комментировать
  • Как интегрировать 2 Битрикса не перенося общих пользователей и БП, только отправлять задачи?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Прежде всего разберемся с терминологией: Задача и задание это разные сущности в системе.
    Задание это определенный шаг бизнес-процесса, генерируемый при запуске бизнес-процесса, т.е. в отрыве от бизнес-процесса задания не существует. Два даже одинаковых бизнес-процесса не генерируют одинаковое задание. Следовательно "шарить" задания между порталами нельзя.

    С точки зрения решаемой задачи есть следующие способы ее достижения:

    В облачном битрикс24 Вы можете попробовать воспользоваться межпортальными задачами, т.е. если пользователи порталов будут внешними пользователями. В таком случае между двумя облачными порталами эта схема может сработать.

    В продукте Битрикс24 (коробочная версия) такие возможности не предусмотрены. То есть: вы не можете ставить межпортальные задачи если хотя бы один из порталов коробочный. Для реализации "шаринга" задач вы можете воспользоваться API, но с ограничениями:
    - В REST-апи нельзя передавать файлы и на одной из коробочных сторон придется поддерживать таблицы маппинга
    - Если мы говорим про php код то реализовать там можно вообще все, но механик придется реализовать достаточно большое количество.

    Мы пробовали сделать синхронизацию задач между коробкой и облаком, но ничего хорошего из этого не вышло. Слишком мало возможностей api и слишком много подводных камней и механик.
    Ответ написан
    4 комментария
  • Как настроить левое меню в коробке б24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Кумуляционный ответ на вопрос.

    В каждом конкретном случае необходимо рассматривать код и настройки соответствующего портала.
    В общем и целом такая проблема может наблюдаться в следующих случаях:

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

    Как лечить?
    - Поставить дефолтную коробку, посмотреть права и выставить аналогичные (не копировать)
    - Включить пользователей в соотвутствующие группы
    - Добавить пользователей в подразделения

    2) Проект дорабатывался или обновлялся со старых версий (до 16)
    Дело в том, что ранее механики левого меню отличались и в случае когда портал дорабатывался, код его может быть изменен.
    Как лечить? Проверить код меню-файлов

    3) Некорректные права на продукте и экстранет-пользователь
    Собственно это частный случай номера 1, кто-то поправил права или index.php страницу и пользователь не редиректится в экстранет.
    Соответственно пунктов меню не прибавляется и редиректа не происходит.
    Как лечить? Смотреть код страницы и права

    Ну и конечно же, перед тем как приступать необходимо очищать кеш продукта (в частности меню), чтобы убедиться в существовании проблемы
    Ответ написан
    Комментировать
  • Как создать поле файл у сущности?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Другой способ есть и он довольно простой: вы пишете что сущность работает с свойствами и добавляете UF_* свойство типа файл (или файл на диске) и битрикс делает все за вас. Единственное есть несколько ограничений:

    - Поле называется с UF_ префиксом
    - Валидация согласно настройкам поля
    - Добавлять uf нужно отдельно
    Ответ написан
    1 комментарий
  • Как убрать блоки в sidebar?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    За отображение этих блоков отвечает компонент bitrix:intranet.bitrix24.banner расположенный на странице /stream/index.php

    Удалите компонент со страницы или деактивируйте его и поля исчезнут
    Ответ написан
    1 комментарий