1

Свои условия в скидках Битрикса

В 1С-Битрикс:Управление сайтом (БУС) есть шикарный редактор условий для скидок. Он действительно очень крутой и гибкий. И всё там делается мышью, для простых людей.

Несколько примеров:

metla

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

Например, нужно применить скидку для пользователя, дополнительное поле которого равняется заданному значению.

Как это сделать?

discount

Там, где я стыдливо закрасил строку, должно быть UF_USER_FIELD.
Continue Reading

0

Битрикс показывает пустое окно вместо свойств компонента

При нажатии на свойства компонента, вместо привычного диалога с настройками компоненты Битрикс показывает пустой диалог.

Проблема в том, что переменная pcre.recursion_limit в php.ini стоит больше 1000 и php валится с переполнением стека.

Эта же проблема не дает пройти тест «Проверка системы», проверка валится на тесте «Размер стека и pcre.recursion_limit» (или на предыдущем «Передача объектов по ссылке»).

Решение: установить значение переменной pcre.recursion_limit в рекомендованное Битриксом — 1000.

Если не помогло, уменьшать пока не поможет 🙂 У меня завелось со значением 500.

Ссылки по теме: http://max22.ru/pitfalls/site-checker/

0

Название новости в цепочку навигации

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

Сейчас речь о news — комплексный компонент для работы с «новостями».

Этот компонент обладает одним недостатком, если мы просматриваем конкретную новость, он не заносит её название в «хлебную крошку».

И сделать это можно только 2 способами, либо сделать свой компонент, взяв за основу стандартный, либо воспользоваться вот таким хаком. То есть костылём.

В шаблоне news.detail (напомню, что мы работает с компонентом news, потому news.detail берем вот тут: /bitrix/templates/template-name/components/bitrix/news/.default/bitrix/news.detail. Уфф, наконец-то.) добавим файл result_modifier.php. В него добавим следующие строчки:

if($arParams['ADD_SECTIONS_CHAIN'] && !empty($arResult['NAME']))
{

    $arResult['SECTION']['PATH'][] = array(

        'NAME' => $arResult['NAME'],
        'PATH' => ''
    );

}

Этим кодом мы добавляем 1 лишнюю секцию в цепочку навигации. На основе этого пути компонент news уже и строит «хлебную крошку». Он, правда, думает, что добавляет секцию (добавлять конкретную новость он не умеет). Но кого волнуют детали, если задача решена?

0

Битрикс не дружит с IE9?

Админка Битрикса не дружит с IE9?

Вот так новости. Не то чтобы я уж очень злорадствовал и всё-такое. Просто когда видишь, что и у «мега-корпораций» не всё гладко, сразу отчего-то становится легче воспринимать косяки у себя.

Мне одно не нравится у Битрикса: могли хотя бы справку по-внятней сделать. Нет, не нравится многое чего, но вот это особенно. 🙂

0

Черные квадраты вместо фотографий при импорте из 1С в Битрикс

При выгрузке из 1С на сайте получаем вместо фотографий черные квадраты. Как быть и что же делать? Самое главное: кто виноват?

Это связано с тем, что в настройках инфоблока стоит опция «уменьшать изображения». И инфоблок честно пытается их уменьшить.

Но бывают не совсем корректно сформированные изображения (у меня jpeg). По разным причинам: битая флэшка, глупый фотоаппарат, глупый фотограф. Из-за этого библиотка GD (которую использует Битрикс) не может их открыть и отправляет Warning. Но так как Warning’и подавлены, лога импорта нет (о, как бы хотелось его получить) и нет проверки на валидность открытого файла, в итоге получаются черные квадраты.

Для того чтобы инфоблок пропускал «неправильные» картинки, нужно в файл /bitrix/modules/iblock/classes/general/iblock.php добавить проверку: смогла ли GD открыть наше изображение? В строке 2595 добавим строчки:


if ($image === false)
     return GetMessage("IBLOCK_BAD_FILE_UNSUPPORTED");

И система будет просто пропускать проблемные файлы.