Ответы пользователя по тегу 1С-Битрикс
  • Как бы вы реализовали данную задачу?

    @jasper-blondin
    Правильно подметили в комментариях, что все зависит от уникальности и ожидаемой гибкости.
    Я всегда стараюсь в первую очередь отталкиваться от правила "сделать максимально удобное редактирование для самого тупого котентщика". Исходя из этого, в подобных задачах поступал следующим образом.

    Нам нужно, чтобы контентщик мог самостоятельно создать новую страницу. Значит, будет 1 инфоблок, а страница -- это элемент инфоблока. Т.е. при создании страница автоматом получит динамический адрес.
    Вся информация в блоки на странице будет выводиться через свойства инфоблока. Их нужно будет красиво сгруппировать. Каждая группа свойств -- отдельный блок. У каждой такой группы будет 2 обязательных свойства: активность блока и сортировка блока. Галочка активности будет отвечать за показ блока на странице. А сортировка будет указывать положение блока относительно остальных блоков (т.е. устанавливать порядок блоков). Остальные свойства в группе -- индивидуальны для каждого блока.
    Вам останется только разместить на физической странице комплексный компонент Новостей (чтобы включить ЧПУ) и переписать шаблон детальной страницы (реализовать группировку свойств, вывод и сортировку блоков).
    В результате получится небольшой конструктор страниц, с которым справится даже ребенок.
    Ответ написан
    Комментировать
  • Как в bitrix news вывести название раздела?

    @jasper-blondin
    можно как-то без костылей

    Нет, придется поработать ручками.
    Можете воспользоваться методом CIBlockSection::GetMixedList. Подробнее здесь: https://dev.1c-bitrix.ru/api_help/iblock/classes/c...
    Ответ написан
    Комментировать
  • Битрикс. Не выводится картинка из привязки к элементам?

    @jasper-blondin
    Но картинку таким образом вывести не получается

    Каким "таким" образом? Где Вы выводите картинку? Код покажите.
    Ответ написан
    3 комментария
  • Как сделать чтобы ответ сервера был 404 по условию?

    @jasper-blondin
    ?PAGEN_1=2 -- это обычные GET-параметры запроса. Там может быть что угодно (?NAME=WASYA&AGE=12).
    Из чего вытекает резонный вопрос: Вы хотите запретить использование GET-параметров в URL? Тогда Битрикс тут не при чем. Вряд ли разработчики предусмотрели возможность для реализации такой удивительной причуды.
    Ответ написан
  • Как вывести сумму с учетом скидки Битрикс?

    @jasper-blondin
    // это цена
    $dbPrice = \CPrice::GetList(
    	array(),
    	array(
    		"PRODUCT_ID" => $PRODUCT_ID,
    		"CATALOG_GROUP_ID" => $PERSON_TYPE_ID
    	)
    );
    $arPrice = $dbPrice->Fetch();
    $price = $arPrice["PRICE"];
    
    // это список доступных скидок
    $arDiscounts = \CCatalogDiscount::GetDiscountByProduct(
        $PRODUCT_ID,
        $USER->GetUserGroupArray(),
        "N",
        $PERSON_TYPE_ID,
        SITE_ID
    );
    if($arDiscounts !== false) {
    	$price = \CCatalogProduct::CountPriceWithDiscount(
    	    $arPrice["PRICE"],
    	    $arPrice["CURRENCY"],
    	    $arDiscounts
    	);
    }
    
    // в переменной $price будет цена с учетом скидок
    Ответ написан
    1 комментарий
  • Не работает кнопка покупки 1c bitrix?

    @jasper-blondin
    Судя по всему, у Вас используются торговые предложения. При покупке нужно передавать ID торгового предложения, а не товара, в состав которого входит торговое предложение.
    Ответ написан
    2 комментария
  • 1С-Битрикс. Как массово и достаточно быстро удалить все разделы в инфоблоке?

    @jasper-blondin
    Скрипт уже закончил работу?
    Я так понимаю, Вы запустили скрипт, а потом написали вопрос.

    Оптимизировать можно следующим образом:
    - в метод GetList добавить массив с полями выборки array("ID"), чтобы не тянуть из базы значения, которые не нужны
    - выполнять метод Delete прямо в теле цикла while, чтобы не собирать без надобности массив

    Если все еще не хватает времени на выполнение, написать простенькую клиентскую часть с AJAX-запросом. Будет работать медленно, но гарантировано выполнит задачу и не уйдет в таймаут.
    Ответ написан
    Комментировать
  • Какой тактикой вы руководствуетесь при верстке под битрикс? Что быстрее?

    @jasper-blondin
    APELSINKA_GIRL, а Вам могу сказать только одно: при работе в команде должны учитываться интересы всех (подчеркиваю) участников. Включая Вас. Только тогда работа может выйти на качественно новый уровень.
    Это я к тому, что разбивание верстки на компоненты (те самые папки) -- это работа интегратора (т.е. программиста). Верстальщик не должен этим заниматься. И не должен углубляться в познания архитектуры БУС.
    Разбиение на папки оправдано только при создании тиражных решений. Во всех остальных случаях (т.е. 90%) -- все стили можно хранить в сжатом виде в одном CSS-файле. То же самое с JS. Никаких проблем с этим нет.
    Так что отстаивайте свою позицию верстальщика. И донесите до этой "команды", что Ваш комфорт пойдет на пользу общему делу.
    Ответ написан
    Комментировать
  • Как получить список населенных пунктов из карты Яндекса - из определ. Зоны?

    @jasper-blondin
    Может попробовать решить математически?
    Взять перечень населенных пунктов, координаты которых находятся в пределах большой зоны (внешняя фигура). И исключить из списка перечень населенных пунктов, координаты которых находятся в пределах малой зоны (внутренняя фигура). Затем по координатам вытащить информацию о населенных пунктах.
    Как вариант. Но лучше сначала уточнить в ТП Яндекса.
    Ответ написан
    3 комментария
  • Как выводить через умный фильтр товары, если параметр "Доступное количество" больше 0?

    @jasper-blondin
    Во-первых, "выводить через умный фильтр товары" нельзя. Товары выводятся списочными компонентами (по отдельности или в составе комплексных). Фильтр только лишь изменяет список товаров перед выводом.

    Во-вторых, решение вашей задачи зависит от модели каталога. А именно: размер является характеристикой товара или торгового предложения?

    Посмотрите здесь: https://dev.1c-bitrix.ru/user_help/components/cont...
    Вас должен интересовать параметр HIDE_NOT_AVAILABLE. Зачастую, при правильной настройке, этого достаточно.
    Ответ написан
    1 комментарий
  • Как настроить e-commerce через модуль?

    @jasper-blondin
    Настоятельно рекомендую задать вопрос разработчику решения и получить компетентный ответ.
    Посмотрите информацию на вкладке "Поддержка".


    По вопросам поддержки пишите на info@intervolga.ru
    Информационная поддержка и проверка корректности настроек выполняются бесплатно.
    Ответ написан
    Комментировать
  • Битрикс - куда пропали ошибки авторизации?

    @jasper-blondin
    Если на дефолтном шаблоне работа некорректная -- Вы сломали ядро ))
    Причина может быть в чем-угодно: удалили/изменили языковые переменные, удалили/изменили JS-код ядра, причина может быть даже в правилах обработки URL-адресов. Вариантов масса. Легче переустановить систему или обновить все модули.
    Ответ написан
  • Как добавить файл к задаче в Битрикс?

    @jasper-blondin
    Файл нужно предварительно загрузить.
    В документации есть пример: https://dev.1c-bitrix.ru/api_help/tasks/classes/ct...

    CModule::IncludeModule('tasks');
    
    $storage = Bitrix\Disk\Driver::getInstance()->getStorageByUserId($USER_ID);
    $folder = $storage->getFolderForUploadedFiles();
    $arFile = CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"]."/upload/wlog.txt");
    $file = $folder->uploadFile($arFile, array(
       'NAME' => $arFile["name"],
       'CREATED_BY' => $USER_ID
    ), array(), true);
    $FILE_ID = $file->getId();
    
    $oTaskItem = new CTaskItem($taskId, $userId);
    $rs = $oTaskItem->Update(array("UF_TASK_WEBDAV_FILES" => Array("n$FILE_ID")));
    Ответ написан
    9 комментариев