Задать вопрос
  • Как сделать доступ к сайту через платную подписку?

    @anton99zel
    29а класс средней школы №7
    Надо сделать, если нет обычную регистрацию/авторизацию пользователя, затем определить пользователя в группу "Пользователи", а после оплаты нужно сменить группу на "Пользователи по подписке".
    Если подписка на месяц, то после оплаты прибавлять к оплаченным дням +30 дней. На cron каждый день проверять даты и переносить пользователя из одной группы в другую для отмены подписки.
    ---
    Вариант, как вы описываете, что авторизационные данные получает пользователь после оплаты - плохой. Что получается - продление = созданию нового аккаунта? Плохо.
    ---
    Самое простое подключить Юмани виджет, в него можно зашить номер аккаунта из вашей базы. После оплаты платежная система делает ответ, вам надо получить ответ, что сумма оплачена и сменить группу пользователя. Все автоматически и не требует особых навыков.
    ---
    Для разделов сайта необходимо настроить права доступа на уровни групп пользователей.
    ---
    Вариант, когда сначала оплата, потом регистрация тоже возможен, вернее не регистрация, а просто выдача доступа - логин и пароль (без ЛК). Тот же виджет с обязательным указанием email. Когда платеж проходит - в случае положительного ответа сгенерировать пару логин и пароль и выслать с помощью smtp сервера на адрес, указанный в платежной информации. Мне кажется, что при таком способе сложно продлевать подписку и объединять оплаченное время.
    ---
    Юмони есть апи и виджет, работает и для физлиц. Но лучше ИП или Самозанятость - меньше проблем будет и сможете выдавать чеки.
    ---
    Часа на 2 работы, включая регистрацию самозанятости)
    Ответ написан
    Комментировать
  • Права на доступ группы пользователей Битрикс?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Скрыть вкладки, которые не скрываются настройками модулей можно как написано в этом коде:
    https://tichiy.ru/wiki/administrativnoe-menyu-bitr...
    Но это не отменяет доступ по прямым ссылкам, а потому нужно выставить права для каждой группы для каждого модуля:
    63cfdef9e6952562269435.png
    Ответ написан
    Комментировать
  • Как для сайта сверстать защищенный режим браузера?

    @anton99zel
    29а класс средней школы №7
    Странно, что ни одного ответа про защищенный режим.
    Защищенный режим, когда строка браузере Зеленая, а не серая это работа Сертификата SSL.
    Нужен EV SSL
    https://habr.com/ru/company/globalsign/blog/469449/
    Ответ написан
  • На чем создать интернет-магазин в 2023?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Да, Битрикс идеально.
    Из спецов нужен тот, кто именно с Битриксом работал, чтобы мог настроить модули без костылей.
    Bitrix + МойСклад + 1С Бухгалтерия + СберЭквайринг.

    СберЭквайринг работает нормально - есть два модуля, один бесплатный официальный, второй коммерческий. Первый в ОФД может сам отправлять, либо на стороне Сбера можно настроить отправку.
    Заказы с Битрикса и контрагентов можно настроить штатной синхронизацией с 1С.
    Мой склад для обмена остатков, резервирования товаров можно настроить (написать) за пару вечеров. Может есть модуль, не знаю, мы сами писали.
    Битрикс работает быстро за счет кеширования, правильной настройки сервера, оптимизированных запросов и так далее....До момента пока руководство не начнет придумывать всякую фигню.
    Ответ написан
    3 комментария
  • Как отправить изменения в репозиторий на своём сервере через Kraken на Win 10?

    @anton99zel
    29а класс средней школы №7
    The remote disconnected. Check your Internet connection and try again

    Тоже много раз отваливалась синхронизация с этой ошибкой.
    Опытным путем выяснялось, что лучше данные отправлять частями. У меня было несколько тысяч мелких файлов, я стал синхронизировать частями.
    Ответ написан
    Комментировать
  • Съехал php код. Поможете исправить?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Страницы html, содержащие php код, нельзя править в визуальном редакторе Битрикс.
    Допускается правка, если в редакторе есть только html и стандартные компоненты Битрикс.
    Здесь принято выкладывать код в виде текста, а не картинкой.
    Откатитесь из backup или в режиме правки php кода исправьте код.
    Ответ написан
    Комментировать
  • Как можно реализовать навигацию по брендам с алфавитом?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    https://dev.1c-bitrix.ru/user_help/components/cont...
    Касстомизируйте шаблон компонента
    Ответ написан
    Комментировать
  • Какой 4G роутер посоветуете для максимальной скорости?

    @anton99zel
    29а класс средней школы №7
    Чтобы была хорошая скорость нужна агрегация частот, в городской среде можно получить свыше 100-150- мегабит.
    В сельской местности агрегации может не быть, но если есть, то отлично подошел бы модем с ali. См. скриншот.
    Далее: хорошие скорости можно ожидать на частоте Band 7, но в сельской местности чаще используется Band 20 и Band 3 с более худшей проницаемостью в помещения. В идеальных условиях последняя выдает не более 60 мегабит.
    Если есть возможность, то ставите спутниковую тарелку 90 см + облучатель на выбранную частоту, и через переходник втыкаете в модем.
    Антенну всегда надо брать именно под имеющиеся частоты.
    Роутер Кинетики норм с поддержкой usb модемов.
    Модем, что на фото, не со всеми старыми Кинетиками дружит.
    --
    Если надумаешь брать модем в наших ритейл сетях, то проверяй на возможность прошить под раздачу и подключения антенн.
    Вариант роутер со встроенным модемом подойдет в центре города, для сельской местности не вариант.
    Если вы живете Московской, Тверской или Ленинградской области, то посмотрите решения от Скайлинка.
    63987a0da3037991802392.png
    Ответ написан
    Комментировать
  • Как исправить ошибку "Не могу записать файл" при переносе 1С-Битрикс на виртуальный сервер через restore.php?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Если у вас хостинг и нет возможности сделать бэкап средствами хостинга, то сделайте бэкап средствами битрикс с пропуском логов и кеша без пароля.
    Из папки /bitrix/backup скачайте архив на компьютер, пересоберите архив: распакуйте архив, соберите все части в Тотал Коммандер, например, упакуйте в zip и залейте его в корень сайта, средствами админки Vesta распакуйте zip.
    Запустите restore.php, выберите, что архив уже распакован, и там же выберите импортировать БД.
    Инструмент бэкапа через restore.php иногда криво работает с файлами.
    Найти информацию про распаковку битриксовского архива можно тут
    https://qna.habr.com/q/373442
    Ответ написан
    Комментировать
  • 1c Битрикс как изменить ID свойства инфоблока?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    1. ID — уникальный номер. В переводе идентификатор.
    2. XML_ID - не предназначен для хранения пользовательский значений, в вашем случае "цвет". В этом поле уникальный идентификатор для обращения к значению свойства.
    3. Для работы с цветами используют свойство "Справочник".
    Переделывайте по нормальному.
    Прежнюю нумерацию не вернуть и более того, может это научит вас сразу делать правильно.
    Как вариант - откатитесь полностью/частично (для опытных пользователей).
    Ответ написан
  • Очистка файлов кеша по 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.
    Ответ написан