• Очистка файлов кеша по API?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    BXClearCache(true);
    
            if (class_exists('\Bitrix\Main\Data\ManagedCache')) {
                (new \Bitrix\Main\Data\ManagedCache())->cleanAll();
            }
    
            if (class_exists('\CStackCacheManager')) {
                (new \CStackCacheManager())->CleanAll();
            }
    
            if (class_exists('\Bitrix\Main\Composite\Page')) {
                \Bitrix\Main\Composite\Page::getInstance()->deleteAll();
            }
    Ответ написан
    Комментировать
  • Как вывести в основном разделе под раздел с товарами 1С Bitrix?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Не понятно, что конкретно не получается.
    Используйте catalog.section.list, где укажите ID дочернего раздела
    https://dev.1c-bitrix.ru/user_help/components/cont...
    Ответ написан
  • Почему могла упасть производительность, при включении memcached в BitrixVM и сайта на Битрикс?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    В php7 и выше уже есть opcache. Используйте его. Хранение сделайте файлами.
    Покажите, что у вас в Монитор производительности: сервер БД
    638df7fc2ff9b317967280.png
    638df8034b8f9685986838.png
    BitrixVM если нет нужды, то зачем она вам?
    Какая версия у вас - Битрикс Бизнес?
    Настройте сервер и ставьте Битрикс.
    Ответ написан
  • Можно ли конвертировать картинку в формат webp при сохранении её через админку, чтобы она сохранялась в ту же папку, что и оригинальная?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Поставьте бесплатный модуль с маркета, он делает то, что нужно вам. Ищите по "Webp"
    Ответ написан
    Комментировать
  • Как задать разные шаблоны детальной страницы товаров находящихся в разных разделах?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    в файл element.php
    например, bitrix/templates/шаблон сайта/components/bitrix/catalog.default/element.php
    или
    например, bitrix/templates/шаблон сайта/components/bitrix/news.default/element.php
    добавь условие, предварительно создав шаблоны детальной страницы.
    добавь до компонента условие
    if (strstr($APPLICATION->GetCurPage(true), 'products/1/') !== false) {$SP = 'название шаблона1';};
    if (какое то другое условие)  {$SP = 'название шаблона2';};
    if (еще условие)  {$SP = 'название шаблона3';};
    if (и еще условие) {$SP = 'название шаблона4';};

    и в компоненте, где шаблон указан, замени на переменную $SP
    $APPLICATION->IncludeComponent(
    	"bitrix:catalog.element",
    	$SP, //подставится шаблон согласно условию
    	array(
    		"IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"],
    		"IBLOCK_ID" => $arParams["IBLOCK_ID"],
    .......................

    В зависимости от условия будет задействован нужный шаблон
    Ответ написан
    3 комментария
  • Можно ли в Яндекс метрике сделать показ номеров заказов из CMS Битрикс?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Настроить электронную коммерцию на всех этапах
    62b437a512466727307441.png
    62b437af9596e926867816.png
    Конечный этап после фактической оплаты выглядит как то так:
    <script>
    window.dataLayer = window.dataLayer || [];
    dataLayer.push({
     'ecommerce': {
       'currencyCode': 'RUB',
       'purchase': {
         'actionField': {'list': 'Detail',
           'id': '<?=$orderid?>',
           'affiliation': 'Мой магазин'
         },
         'products': <?=$json?>
       }
     },
     'event': 'gtm-ee-event',
     'gtm-ee-event-category': 'Enhanced Ecommerce',
     'gtm-ee-event-action': 'Purchase',
     'gtm-ee-event-non-interaction': 'False',
    });
    </script>

    $json содержит список товаров, кол-во, цены, бренд, id товара
    Можно собирать заказы и клиентов еще так:
    https://yandex.ru/dev/metrika/doc/api2/crm/data/up...
    62b437b5a34f4402358147.png
    Оставлю ссылку на мануал, по которому я настраиваю
    https://seoproddev.pro/read/how-to-set-ecommerce-g...
    Оно и в гугл и в метрику идет одинаково
    ---
    Рекламную кампанию надо отслеживать по utm меткам, а сопоставлять по clientid
    Для этого в заказе clientid собирайте и передавайте обратно
    62b4399238c5c122799103.png
    {
        "orders": [
            {
                "id" : "32152",
                "client_uniq_id" : "1650537115120XXXXXXX", //обратно отправляем clientid 
                "client_type" : "CONTACT",
                "create_date_time" : "2020-04-14 13:17:00",
                "update_date_time" : "2020-04-17 16:12:21",
                "finish_date_time" : "2020-04-17 11:59:00",
                "revenue" : 1000,
                "order_status" : "id123",
                "cost" : 500,
                "products" : {"Товар А" : 173, "Товар Б" : 146},
                "attribute_values" : {
                    "channel" : "online",
                }
            }
        ]
    }
    Ответ написан
    3 комментария
  • Как сделать региональность сайта без поддоменов?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    https://www.dns-shop.ru/?city=spb
    if(!isset($_COOKIE['city'])) {setcookie("city", $_GET[city], time()+31556926 ,'/');};
    echo $_COOKIE['city'];  //spb

    if ($_COOKIE['city'] == 'spb') echo 'Питер'; else echo 'Россия'; //Питер

    Далее разработать систему шаблонов, включая сео.
    Ответ написан
    Комментировать
  • Как настроен сервер для работы с несколькими версиям php?

    @anton99zel
    29а класс средней школы №7
    Не совсем понял, что хотите сделать.
    Если нужен выбор версий для хоста, то примерно так:
    Внутри файла php и php.ini для хоста по пути /var/www/юзер/data/php-bin/домен.ru
    php
    #!/opt/php80/bin/php-cgi
    например использовать версию 8.0
    ---
    в php.ini только изменяемые параметры
    например,
    post_max_size = "100M"
    ---
    строку
    FCGIWrapper /var/www/php-bin-isp-php73/siteru/php
    заменить на
    FcgidWrapper "/var/www/юзер/data/php-bin/домен.ru/php"

    вернее на путь к этому самому файлу php (без ini).
    В вашем случае, видимо:
    FCGIWrapper "/var/www/php-bin/siteru/php"
    который указывает на файл с содержимым:
    #!/opt/php73/bin/php-cgi
    --
    Затем рестарт nginx, apache
    Не нужные версии php деинсталлировать
    PS: FcgidWrapper "это в кавычках надо писать"
    Ответ написан
  • Какой впн-софт посоветуете для линукс?

    @anton99zel
    29а класс средней школы №7
    Wireguard в отличие от OpenVPN имеет отличное приложение для ios и android и windows. OpenVPN на ios вообще не смог завести на этапе добавления конфига. Wireguard не режет скорость в отличии от OpenVPN.
    Завести Wireguard на Микротике не смог, не хватило терпения и опыта.
    Wireguard после установки ОС можно установить одной командой с выбором днс:
    wget https://git.io/wireguard -O wireguard-install.sh && bash wireguard-install.sh
    Ответ написан
    5 комментариев
  • Как снять ограничение 1000 в mysql REPLACE INTO?

    @anton99zel Автор вопроса
    29а класс средней школы №7
    Опытным путем установил, что в конце запроса нужно явно указывать LIMIT 10000 , иначе лимит будет 1000.
    Ответ написан
  • Импорт 1с-битрикс. Как не изменять изображения?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    /bitrix/admin/settings.php
    Контролировать загрузку дубликатов файлов: V
    Работает в относительно новых версиях Битркис.
    Ответ написан
    Комментировать
  • Как отключить защитник Windows в 2022 году на Windows 10?

    @anton99zel
    29а класс средней школы №7
    Как отключить защитник Windows в 2022 году на Windows 10

    Установить сторонний антивирусник, хоть платный, хоть бесплатный и не мешать системе контролировать безопасность персонального компьютера
    Ответ написан
  • Почему не работает urlrewrite на втором домене?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    urlrewrite должно быть два, каждый на свой домен.
    Ответ написан
  • Как загрузить текст из инфоблока битрикс через sftp?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Текст хранится в базе данных mysql, через файловый менеджер никак.
    Если у вас есть вход к файлам, то в чем сложность получить доступ в админку и оттуда уже работать с инфоблоком, да хоть даже выгрузив данные в csv прямо из списка элементов раздела?
    Ответ написан
    Комментировать
  • Как найти программистов и сделать свой штат программистов?

    @anton99zel
    29а класс средней школы №7
    Эта проблема характерно для многих бизнес управленцев. Оно и понятно, каждый должен заниматься тем, в чем разбирается. В моей микрокомпании также: шеф находит человека, будь то программист, дизайнер, сеошник, но совсем не ставит им какие-либо тестовые задачи. Второй момент это деньги. Шеф ищет тех, кому можно платить меньше. При все при этом, многие кандидаты с которыми приходилось сталкиваться - либо переоценивают свои знания и возможности, либо совершенно зря учились. Множество дизайнеров, например, не разбираются в форматах изображений и не имеют навыков в работе графических программ.
    Происходит "слепой найм" сотрудников по ключевым фразам - "программист, 30 тр." - пойдет)
    К сожалению, такой подход не является верным для компаний с большими амбициями. Такой подход работает только, если вы хотите вырастить специалиста и у вас есть сотрудники, которые могли бы быть наставниками. И конечно у самих претендентов должно быть желание учиться и расти.
    Потому верным решением для вашей ситуации является написание планов и стратегий согласно вашим проектам, определить точки роста и развития и делегировать работу профессионалам. Условно говоря, вам нужен технический директор, который будет уже собирать штат под цели вашей компании, проводить тестирование, собеседования и прочий отбор. Естественно бюджет должен быть справедливым для вашего региона, опыта сотрудников.
    Самое плохое, что может быть - это зациклить все процессы на одном человеке (еще хуже, если он человек-оркестр).
    Во-первых в один момент его не станет и ваши сервисы остановятся, во-вторых - вы уверены, что программист придерживается правил и стандартов, ведь ему некому подсказать, проверить его работу. Ведь доходит до того, что некоторые годами пишут кривой код и не делают даже бэкапов.
    Собственно говоря, не нужно искать проблему в людях, скорее нужно пересмотреть свое отношение к ведению бизнеса. Создавайте отделы и команду под задачу, постепенно наращивая необходимый штат сотрудников.
    Ответ написан
    1 комментарий
  • Не зрузится сайт на битриксе, в чем может быть проблема?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Необходимо использовать Bitrix Push server 2.0
    https://helpdesk.bitrix24.ru/open/12803800/
    Ответ написан
    Комментировать
  • Как получить все товары в формате JSON 1С Битрикс?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Получаем записи
    <?
    $arSelect = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM","PROPERTY_*");
    $arFilter = Array("IBLOCK_ID"=>IntVal($yvalue), "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");
    $res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>50), $arSelect);
    while($ob = $res->GetNextElement()){ 
     $arFields = $ob->GetFields();  
    print_r($arFields);
     $arProps = $ob->GetProperties();
    print_r($arProps);
    }
    ?>

    Формируем нужное в массив и делаем из него json
    json_encode($data)
    Ответ написан
    Комментировать
  • Как отправлять заявку с сайта в Telegram?

    @anton99zel
    29а класс средней школы №7
    Я вообще не питонщик) Но разве это делается не так?!
    import requests
    
    def send_msg(text):
       token = "your_token"
       chat_id = "your_chatId"
       url_req = "https://api.telegram.org/bot" + token + "/sendMessage" + "?chat_id=" + chat_id + "&text=" + text 
       results = requests.get(url_req)
       print(results.json())
    
    send_msg("Hello there!")
    Ответ написан
  • Как получить свойства элемента инфоблока?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    $arFilter = Array(
      "ID" => УКАЖИ, 
      "IBLOCK_ID"=>УКАЖИ, 
      "IBLOCK_SECTION_ID" => $arResult["ID"],
      );
    $arSelect = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM","PROPERTY_CODE");
    $res = CIBlockElement::GetList(Array("SORT"=>"ASC"), $arFilter, false, Array("nPageSize"=>50), $arSelect);
    while($ob = $res->GetNextElement()){ 
     $arFields = $ob->GetFields();  
    print_r($arFields);
     $arProps = $ob->GetProperties();
    print_r($arProps);
    }

    PROPERTY_CODE, например PROPERTY_COLOR
    https://dev.1c-bitrix.ru/api_help/iblock/classes/c...
    Сортировку переделай сам
    Ответ написан
    Комментировать
  • Как администратору войти в административную часть сайта под другим пользователем?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Создать нового пользователя с правами админа
    Авторизоваться под этим новым пользователем
    )))
    Ответ написан
    Комментировать