• Почему такая гибкая система как Битрикс оказывается не лишена недостатков?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Желательно такое написать техподдержке и нам дать сюда от них ответ :-)
    И не слушайте нюней о том что битрикс отвратительная cms....сколько об этом уже можно писать? На хабре написали пост о том что битрикс там чуть новый год каким-то парням не дал отпраздновать. Полили нормально, хабр крут. Не думал что такое могут туда допустить.
    Ответ написан
    Комментировать
  • Битрикс, часть кодировки не отображается?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Вам нужно знать в какой кодировке работает ваш сайт. Далее файл скрипта нужно сконвертироват в нужную кодировку. В notepad++это делается в меню Кодировки.
    Ответ написан
    1 комментарий
  • Как реализовано живое редактирование в CMS?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Включаете технологию "Эрмитаж" (в публичной части сайта ползунок сверху справа), наводите мышкой на ту область которую хотите изменить и выбираете тот пункт который вам система предложит. Чтобы над информацией можно было проводить манипуляции - она (информация) должна быть вписана в какой нибудь компонент битрикса - то ли это Включаемая область, комплексные компоненты, обычные компоненты, область обычной страницы. Если в шаблоне что-то не редактируется через "Эрмитаж" - программист не адаптировал это под нужды живого редактирования.
    Ответ написан
  • Как убрать единицы измерения в каталоге торговых предложениий?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Поставьте в настройках комплексного компонента Каталог опцию Схема отображения: расширенный.
    Ответ написан
    4 комментария
  • Как реализовать показ банера в зависимости от IP?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Можете попробовать это решение https://marketplace.1c-bitrix.ru/solutions/altasib...
    Ответ написан
  • Как скрыть раздел контент и сервисы для менеджера интернет магазина в админке Битрикса?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Все верно, если чтение - то и будет читаться :)
    1. Включите Расширенное управление правами в настройке Инфоблока.
    2. Нажмите "Изменить" на нужном вам разделе в єтом инфоблоке.
    3. На вкладочке "Доступ" добавьте группу менеджера магазина и поставьте напротив него "Нет доступа".
    Ответ написан
    8 комментариев
  • Как задать тип свойства «привязка к элементу» в xml-выгрузке для 1С битрикс?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    В начале xml объявляются все свойства. Если у вас Привязка к элементу к другому инфоблоку вы увидите примерно такое содержимое:
    <Свойство>
    <Ид>246</Ид>
    ...
    <БитриксСвязанныйИнфоблок>82b1bdcf-be01-49ca-bba8-b57a6050ed06</БитриксСвязанныйИнфоблок>
    ...
    </Свойство>

    <БитриксСвязанныйИнфоблок> - это символьный код инфоблока "Автор".
    Ну и уже конкретно для элемента идет такое:
    <ЗначенияСвойства>
    <ЗначенияСвойства>
    <Ид>246</Ид>
    						<Значение>35175</Значение>
    						<ЗначениеСвойства>
    							<Значение>35175</Значение>
    							<Описание></Описание>
    						</ЗначениеСвойства>
    						<Значение>35173</Значение>
    						<ЗначениеСвойства>
    							<Значение>35173</Значение>
    							<Описание></Описание>
    						</ЗначениеСвойства>
    						<Значение>35178</Значение>
    						<ЗначениеСвойства>
    							<Значение>35178</Значение>
    							<Описание></Описание>
    </ЗначениеСвойства>

    Где Ид это иди свойства инфоблока ссылающееся на инфоблок с авторами.
    Лучше всего - создайте все нужные инфоблоки. Заполните один элемент так как он должен для вас быть на сайте. И сделайте экспорт данных в xml главного инфоблока. Вы получите такой код который нужен для программиста 1С.
    И удачи вам с настройкой обмена =)
    Ответ написан
    Комментировать
  • Как исправить ошибку "Got error -1 from storage engine"?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Got error -1 from storage engine - возможно исчерпывание лимита дискового пространства аккаунта. Попробуйте немного почистить диск.
    Ответ написан
    Комментировать
  • Настройка 404 в битриксе?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Добавьте этот код в /bitrix/php_interface/init.php
    define("PREFIX_PATH_404", "/404.php");
    
    AddEventHandler("main", "OnAfterEpilog", "Prefix_FunctionName");
    
    function Prefix_FunctionName() {
        global $APPLICATION;
    
        // Check if we need to show the content of the 404 page
        if (!defined('ERROR_404') || ERROR_404 != 'Y') {
            return;
        }
    
        // Display the 404 page unless it is already being displayed
        if ($APPLICATION->GetCurPage() != PREFIX_PATH_404) {
            header('X-Accel-Redirect: '.PREFIX_PATH_404);
            exit();
        }
    }

    Ваша 404.php должна иметь следующий вид:
    <?
    if ($_SERVER['DOCUMENT_URI'] == "/404.php") {
        $_SERVER['REQUEST_URI'] = $_SERVER['DOCUMENT_URI'];
    }
    include_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/urlrewrite.php');
    
    CHTTP::SetStatus("404 Not Found");
    @define("ERROR_404","Y");
    
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
    
    $APPLICATION->SetTitle("Страница не найдена");
    ?>
    <h1>Страница не найдена</h1><br>
    <p>Вы набрали неправильный адрес страницы. Пожалуйста, перейдите на главную страницу сайта или воспользуйтесь формой поиска.</p>
    <?
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>

    Для элементов каталога этого достаточно. Но для несуществующих разделов надо добавить еще в шаблон комплексного компонента Каталога /bitrix/templates/s1/components/bitrix/catalog/new_catalog/bitrix/catalog.section.list/.default/template.php после первой строчки:
    if(!$arResult["VARIABLES"]["SECTION_ID"]){
    CHTTP::SetStatus("404 Not Found");
    @define("ERROR_404","Y");
    }
    Ответ написан
  • Как сортировать элементы каталога по цене торговых предложений(bitrix)?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Была похожая ситуация.
    Использовал старый код Битрикса. Нужно в файл /bitrix/php_interface/init.php внести следующий код:
    /*Version 0.3 2011-04-25*/
    AddEventHandler("iblock", "OnAfterIBlockElementUpdate", "DoIBlockAfterSave");
    AddEventHandler("iblock", "OnAfterIBlockElementAdd", "DoIBlockAfterSave");
    AddEventHandler("catalog", "OnPriceAdd", "DoIBlockAfterSave");
    AddEventHandler("catalog", "OnPriceUpdate", "DoIBlockAfterSave");
    function DoIBlockAfterSave($arg1, $arg2 = false)
    {
     $ELEMENT_ID = false;
     $IBLOCK_ID = false;
     $OFFERS_IBLOCK_ID = false;
     $OFFERS_PROPERTY_ID = false;
     if (CModule::IncludeModule('currency'))
     $strDefaultCurrency = CCurrency::GetBaseCurrency();
    
     //Check for catalog event
     if(is_array($arg2) && $arg2["PRODUCT_ID"] > 0)
     {
     //Get iblock element
     $rsPriceElement = CIBlockElement::GetList(
     array(),
     array(
     "ID" => $arg2["PRODUCT_ID"],
     ),
     false,
     false,
     array("ID", "IBLOCK_ID")
     );
     if($arPriceElement = $rsPriceElement->Fetch())
     {
     $arCatalog = CCatalog::GetByID($arPriceElement["IBLOCK_ID"]);
     if(is_array($arCatalog))
     {
     //Check if it is offers iblock
     if($arCatalog["OFFERS"] == "Y")
     {
     //Find product element
     $rsElement = CIBlockElement::GetProperty(
     $arPriceElement["IBLOCK_ID"],
     $arPriceElement["ID"],
     "sort",
     "asc",
     array("ID" => $arCatalog["SKU_PROPERTY_ID"])
     );
     $arElement = $rsElement->Fetch();
     if($arElement && $arElement["VALUE"] > 0)
     {
     $ELEMENT_ID = $arElement["VALUE"];
     $IBLOCK_ID = $arCatalog["PRODUCT_IBLOCK_ID"];
     $OFFERS_IBLOCK_ID = $arCatalog["IBLOCK_ID"];
     $OFFERS_PROPERTY_ID = $arCatalog["SKU_PROPERTY_ID"];
     }
     }
     //or iblock which has offers
     elseif($arCatalog["OFFERS_IBLOCK_ID"] > 0)
     {
     $ELEMENT_ID = $arPriceElement["ID"];
     $IBLOCK_ID = $arPriceElement["IBLOCK_ID"];
     $OFFERS_IBLOCK_ID = $arCatalog["OFFERS_IBLOCK_ID"];
     $OFFERS_PROPERTY_ID = $arCatalog["OFFERS_PROPERTY_ID"];
     }
     //or it's regular catalog
     else
     {
     $ELEMENT_ID = $arPriceElement["ID"];
     $IBLOCK_ID = $arPriceElement["IBLOCK_ID"];
     $OFFERS_IBLOCK_ID = false;
     $OFFERS_PROPERTY_ID = false;
     }
     }
     }
     }
     //Check for iblock event
     elseif(is_array($arg1) && $arg1["ID"] > 0 && $arg1["IBLOCK_ID"] > 0)
     {
     //Check if iblock has offers
     $arOffers = CIBlockPriceTools::GetOffersIBlock($arg1["IBLOCK_ID"]);
     if(is_array($arOffers))
     {
     $ELEMENT_ID = $arg1["ID"];
     $IBLOCK_ID = $arg1["IBLOCK_ID"];
     $OFFERS_IBLOCK_ID = $arOffers["OFFERS_IBLOCK_ID"];
     $OFFERS_PROPERTY_ID = $arOffers["OFFERS_PROPERTY_ID"];
     }
     }
    
     if($ELEMENT_ID)
     {
     static $arPropCache = array();
     if(!array_key_exists($IBLOCK_ID, $arPropCache))
     {
     //Check for MINIMAL_PRICE property
     $rsProperty = CIBlockProperty::GetByID("MINIMUM_PRICE", $IBLOCK_ID);
     $arProperty = $rsProperty->Fetch();
     if($arProperty)
     $arPropCache[$IBLOCK_ID] = $arProperty["ID"];
     else
     $arPropCache[$IBLOCK_ID] = false;
     }
    
     if($arPropCache[$IBLOCK_ID])
     {
     //Compose elements filter
     if($OFFERS_IBLOCK_ID)
     {
     $rsOffers = CIBlockElement::GetList(
     array(),
     array(
     "IBLOCK_ID" => $OFFERS_IBLOCK_ID,
     "PROPERTY_".$OFFERS_PROPERTY_ID => $ELEMENT_ID,
     ),
     false,
     false,
     array("ID")
     );
     while($arOffer = $rsOffers->Fetch())
     $arProductID[] = $arOffer["ID"];
    
     if (!is_array($arProductID))
     $arProductID = array($ELEMENT_ID);
     }
     else
     $arProductID = array($ELEMENT_ID);
    
     $minPrice = false;
     $maxPrice = false;
     //Get prices
     $rsPrices = CPrice::GetList(
     array(),
     array(
     "PRODUCT_ID" => $arProductID,
     )
     );
     while($arPrice = $rsPrices->Fetch())
     {
     if (CModule::IncludeModule('currency') && $strDefaultCurrency != $arPrice['CURRENCY'])
     $arPrice["PRICE"] = CCurrencyRates::ConvertCurrency($arPrice["PRICE"], $arPrice["CURRENCY"], $strDefaultCurrency);
    
     $PRICE = $arPrice["PRICE"];
    
     if($minPrice === false || $minPrice > $PRICE)
     $minPrice = $PRICE;
    
     if($maxPrice === false || $maxPrice < $PRICE)
     $maxPrice = $PRICE;
     }
    
     //Save found minimal price into property
     if($minPrice !== false)
     {
     CIBlockElement::SetPropertyValuesEx(
     $ELEMENT_ID,
     $IBLOCK_ID,
     array(
     "MINIMUM_PRICE" => $minPrice,
     "MAXIMUM_PRICE" => $maxPrice,
     )
     );
     }
     }
     }
    }


    У вас появятся два свойства товара: Минимальная цена и Максимальная цена. Чтобы у этих полях появились данные нужно зайти в карточку товара и нажать Сохранить или они сами заполнятся при создании нового товара с торговыми предложениями.

    Дальше делаете стандартную сортировку кодом по этим двум свойствам в section.php комплексного компонента Каталог и выводите визуалом в шаблоне section.php этого же компонента. Читайте о создании сортировки в Битриксе. Вот и все.
    Ответ написан
    3 комментария
  • Возможно ли изменить пароль учетной записи имея доступ к файлам 1С-Bitrix на FTP?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Логин и пароль к учетным записям CMS 1C-Битрикс хранятся в БД таблицы b_user.
    Пароли хранятся в MD5 и расшифровать его не удастся.

    Как вариант - можете сгенерировать новый на этом сервисе www.md5.cz и заменить в базе.
    Также можете запросить у хостера бекап и восстановить сайт со старыми данными.
    Ответ написан
  • Можно ли/как в bitrix сделать настраиваемый css?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Я могу быть не компетентным со стороны css так как я больше по php. Поэтому скажу от php: сделайте ссылки с параметром, проверяйте урл на эти параметры и проверкой подставляйте имя стиля в код верстки. Все это хранится в одном css что вам и нужно.
    Ответ написан
    Комментировать
  • Какие расширения входят в ваши "джентельменские" наборы для Битрикс, Joomla и WordPress?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Не знаю как по другим CMS, но по Битриксу старайтесь все реализовать штатными компонентами. Но если долго делать - ищите в Маркетплейсе подходящее решение.
    И помните - любое решение может иметь брешь в безопасности.
    Ответ написан
  • Как сделать дубликат шаблона компонента новостей?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Включаете живое редактирование сайта (Эрмитаж). Наводите на компонент новостей (именно тот из которого вам надо сделать копию шаблона). И делаете вот это: LmG7yOjc6xMdml.jpg
    Вам будет скопирован этот же шаблон.
    Ответ написан
  • Левое меню битрикс?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Разделяйте включаемую область на две. Режте WORKAREA после элементов слева. Ну а после WORKAREA пишите правые элементы.
    Ответ написан
    4 комментария
  • Ошибка сохранения настроек торгового каталога: не указано, является инфоблок торговым каталогом как исправить?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Стандартная схема в магазинах: один инфоблок является торговым каталогом, второй является торговыми предложениями первого инфоблока. Во втором инфоблоке вы не можете снять галочку 82QWeJqUnRKard.jpg потому что эта галочка снимается в первом инфоблоке p27gRpoca59l27.jpgОшибка удаления. Возможно есть ссылающиеся объекты. - эта ошибка возникает в таких случаях если вы делали заказа и они не удалены, если есть связка товаров по инфоблокам и т.д. Вам придется полазить и просмотреть все возможные варианты, поудалять эти данные а потом уже удалить инфоблоки если вам это нужно.
    Ответ написан
  • Как можно добавить веб-месенджер на Битриксе?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Веб-мессенджер будет полезен только зарегистрированным пользователям на сайте.
    Ответ написан
    Комментировать
  • Что не так с кодировкой письма?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Не понятно как вы разбиваете разрядность итога. Тут не подскажешь вам.
    Ответ написан
    Комментировать
  • Как вывести значение свойства в публичную часть битрикса?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Нужно так:
    1) создаете инфоблок для хранения информацию по слайдеру (фото, заголовок слайда, ссылка);
    2) выводите в том месте где нужен слайдер комопнент bitrix:news.list
    3) указываете в настройках компонента инфоблок который хранит информацию, указываете в нем доп. свойства которые вам нужны
    4) копируете шаблон компонента и приводите его к вашему виду.
    Ответ написан
    Комментировать
  • Как в битриксе организовать шаблоны?

    Logic87
    @Logic87
    Программист/администратор сайтов на 1С-Битрикс.
    Делать это нужно с помощью включаемой области. Хотя и ее нужно где-то определять. Если боковое меню не относится ни к футеру ни к хедеру - тогда размещайте где угодно.
    Ответ написан
    Комментировать