Задать вопрос
  • Как настроить умный фильтр bitrix?

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

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    //название товара не пишем
    Bitrix\Main\Loader::includeModule("catalog");
    $fields = [
        'PRODUCT_ID' => $item[offer_id], // ID товара, обязательно
            'QUANTITY' => $item[quantity],
            'CURRENCY' => Bitrix\Currency\CurrencyManager::getBaseCurrency(),
            'LID' => Bitrix\Main\Context::getCurrent()->getSite(),
            'PRICE' => $item[price], //твоя кастомная цена
            'CUSTOM_PRICE' => 'Y',
    ];
    $r = Bitrix\Catalog\Product\Basket::addProduct($fields);
    if (!$r->isSuccess()) {
        var_dump($r->getErrorMessages());
    }

    Для изменения существующего заказа нужно:
    $order = \Bitrix\Sale\Order::load(38); //загрузим заказ
    .....//добавляем товары или производим другие действия
    $order->save(); //сохраняем заказ

    В вашем коде я не увидел, что для каждого товара вы устанавливаете новую цену
    Ответ написан
    Комментировать
  • Определении геолокации в bitrix spro?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Ваш вопрос не совсем понятен.
    В битриксе d7 и так есть возможность определять город на основе ip адреса.
    Но более широкие возможности доступны при использовании сервиса dadata, особенно при подключении доставок.
    Что касается «вбивать города в инфоблок» , вероятно имелось ввиду, что элемент с названием города, может содержать прочую информацию для использования на сайте, например телефон, адрес... Ведь где то нужно хранить эту информацию для каждого города.
    Ответ написан
    Комментировать
  • Как сделать озвучивание выделенного текста?

    @anton99zel
    29а класс средней школы №7
    Комментировать
  • Почему в стандартном решении малый бизнес (интернет магазин) не работает фильтр по цене?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Действительно, есть такой баг, только что проверил на демо.
    Но после обновлений, баг пропал.
    Пофильтруйте
    https://1029lab.bitrixlabs.ru/catalog/pants/
    Можно после обновления пересоздать индексы /bitrix/admin/iblock_reindex_admin.php?lang=ru
    Ответ написан
  • Как лучше реализовать обмен данными между ПК и смартфоном?

    @anton99zel
    29а класс средней школы №7
    Я Юзаю чат Телеграм.
    С любого устройства, даже консольно, доступно и не надо ставить тяжелых программ, типа яндекс диска или еще хуже облако от майкрософт...
    Ответ написан
    Комментировать
  • Что делать с джуниор программистом, который самоучка и не с этой планеты?

    @anton99zel
    29а класс средней школы №7
    Во первых:
    Нужно разделять личные качества и профессиональные!!
    (Какая разница, что он бедный или хулиганил....)
    Второе:
    Если профессиональные качества вас устраивают, то пусть человек работает и не мешайте ему.
    Если не устраивают, то ищите другого специалиста
    Третье:
    Срыв сроков это не только его вина или еще чья то. Часто так бывает, что это общая вина: заказчик меняет ТЗ, менеджмент обещает сроки, лишь бы ухватить заказ, технический директор не вникает в процесс.... В итоге всё вешается на джуна.
    И еще:
    Программист это творческая профессия. Это не оператором работать по 8 часов по некому алгоритму. Тут и думать надо и вникать и прорабатывать отдельные моменты. Нужно создавать условия для комфортной работы, а не наседать и стоять над душой. Но чтобы релакс не затягивался, даже долги нужно планировать.
    Далее необходимо понять, почему возникают задержки:
    Если это плохая планировка времени, то пусть работает как ему удобно (в ночное время или вечернее), если задержки возникают из-за недостатка знаний, значит нужно их подтягивать, включая курсы или помощь наставников.
    И:
    Он склонен всю задачу целиком держать в своей голове и думать над ней один. И чтобы никто не отвлекал. Обсуждать с кем-либо задачу, даже просто общаться в корпоративном чатике среди рабочего дня - все это вроде не дает видимых проблем, но по нему видно, что это его сильно раздражает.

    Меня тоже раздражает отвлекаться каждые 5 минут на сообщения, которые вообще не относятся ко мне. А бесконечные обсуждения могут бесконечно обсуждаться.
    Взялись работать - работайте. Летучка 10 минут каждый день с утра. 60 минут в понедельник. И всё. Ибо нех.
    С ним же никогда не было начальника

    Начальник не команда. Начальник может и не быть наставником, советчиком, помощником.
    Более ценно, когда есть кому подсказать.
    ведь тогда порядка было бы в сто раз больше, а работы меньше

    Работы было бы меньше, если бы вы, там наверху, между собой всё порешали, а потом уже приходили со своими хотелками, а не переобувались каждый день со своим ТЗ "не знаю что хочу".
    Ответ написан
    Комментировать
  • Как модернизировать экспорт каталога в csv?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    в какую сторону смотреть?
    CIBlockElement::GetList с CATALOG_QUANTITY, для обмена XML вместо CSV (кмк оно проще и используется повсеместно).
    Ответ написан
    Комментировать
  • Существует ли в природе онлайн конструктор обоев для 1C Битрикс?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    А самим сделать сложно?
    Вариант 1: Создаем коллекцию (5-10...-1000) интерьеров, делаем прозрачный фон, кликом отправляем картинку (обои) на этот фон. CSS+JS
    Вариант 2: Галерея с заранее приготовленными вариантами комбинаций, но принцип такой же - внизу выбираем обои, а верхнем окне предпросмотр. В данном случае уже можно искать js-галереи, каких полно в интернетах.
    Вариант 3: Заказать индивидуальную разработку, но стоить будет много.
    Ответ написан
    1 комментарий
  • Как узнать откуда передается информация в СберБанк?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Новую цену можно хранить в свойствах.
    Если у Вас ecom2, то изменить передаваемые данные можно в окне сумма заказа.
    Если идет печать электронного чека, то в рублях должны быть товарные позиции.
    spoiler
    5f2d1db9cc541532027076.png
    Ответ написан
    Комментировать
  • Самопроизвольно включается сжатие содержимого в Windows 10. Как отключить?

    @anton99zel
    29а класс средней школы №7
    Под админом в командной строке powershell
    compact /compactos:never
    Ответ написан
    Комментировать
  • Как создать привязку к элементу инфоблока? Как получить SEO в старом ядре?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Какой аналог на старом ядре?

    CIBlockElement --> Update --> IPROPERTY_TEMPLATES
    spoiler
    "IPROPERTY_TEMPLATES" => array(
    "ELEMENT_META_TITLE" => $element["meta_title"], // title элемента
    "ELEMENT_META_KEYWORDS" => $element["meta_keywords"], // ключевые слова элемента
    "ELEMENT_META_DESCRIPTION" => $element["meta_description"], // сео-описание элемента
    "ELEMENT_PAGE_TITLE" => $element["name"], // title страницы
    "ELEMENT_PREVIEW_PICTURE_FILE_ALT" => $element["img"]["alt_text"], // альт для привью (маленькой) картинки
    "ELEMENT_PREVIEW_PICTURE_FILE_TITLE" => $element["img"]["title_text"], // тайтл для привью (маленькой) картинки
    "ELEMENT_PREVIEW_PICTURE_FILE_NAME" => $element["img"]["name"], // имя прьвью картинки
    "ELEMENT_DETAIL_PICTURE_FILE_ALT" => $element["img"]["alt_text"],
    "ELEMENT_DETAIL_PICTURE_FILE_TITLE" => $element["img"]["title_text"],
    "ELEMENT_DETAIL_PICTURE_FILE_NAME" => $element["img"]["name"],
    )

    К вопросу привязывается ответ через свойство элемента (ответов может быть несколько, поэтому это множественное поле)

    Иногда разумнее привязывать наоборот, в вашем случае к ответам вопросы.
    Что мешает вам аналогично сделать привязку ответа к вопросу?
    --
    И еще посмотрите на это https://dev.1c-bitrix.ru/user_help/service/learnin...
    Ответ написан
  • Как оптимизировать MySql для Битрикс?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Я правильно понимаю, что стоит увеличить RAM до 25 гигабайт

    Нет.
    Нужно начать с рекомендованных настроек для Битрикса, а затем тюнинговать каждую настройку, смотреть в течение какого то времени на поведение бд.
    А не менять все настройки разом.
    Кроме того, сьэкономить ресурсы и деньги можно путем оптимизации кода, кеша, запросов. Иначе, сколько памяти не добавляй - будет мало и тормознуто.
    Ответ написан
  • Битрикс как первая работа?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Стоит ли в качестве первого места работы выбирать компанию, специализирующуюся только на Битриксе?

    Я и мои сверстники в годы юности выбирали заводы и фабрики в качестве первой работы....
    Ответ: Да, но вам может не понравится или вы не сможете в нём разобраться, и будете потом на форумах писать, что Битрикс - Г.
    Заказчикам от Битрикс нужен не код, а решение задач по связкам 1с, оплаты, эквайринг, сдэки, маркеты....
    Тут думать надо! Ничего плохого не вижу, если вы пару лет посвятите Битриксу.
    Ответ написан
    Комментировать
  • Как уведомить работников на складе, что нужно собрать товар?

    @anton99zel
    29а класс средней школы №7
    Я бы прикупил домен, сделал бы простенькую html-страницу, прикрутил авторизацию.
    Каждого пользователя склада привязал бы к группам, где группа это один из складов.
    После авторизации в вебе пользователь видит заявки на сбор товара и ссылки на печать документа если надо. Тыкнул на ссылку - пошла печать.
    В 1С при оформлении заявки отправляйте на веб-сервер данные. Более того, этот вебсервер можно там же поднять, где 1с стоит.
    Для уведомлений о новых заявках использовать Бота в телеграм, где каждый id чата = складу. Ну, или тупо ajax-автообновление страницы сделать и пусть в своих компьютерах/планшетах/телефонах видят заявки вообще ничего не нажимая. (будет как в Макдональдсе)))
    --
    Когда заказ собран, сотрудник ставит галочку в таблице заказов, а в 1С попадет информация о статусе заказа "Собран/Собирается".
    --
    Это самый простой вариант. Можете пойти по второму пути - поставить на склад тоже 1С с другими правами доступа, но это может оказаться сложно для пользователя, работающего на складе.
    Ответ написан
    1 комментарий
  • API bitrix почему не добавляется товар в корзину?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Не стал разбираться в вашей писанине. Добавляйте товар так:
    Bitrix\Main\Loader::includeModule("catalog");
    $fields = [
        'PRODUCT_ID' => 98
        'QUANTITY' => 2
    ];
    $r = Bitrix\Catalog\Product\Basket::addProduct($fields);
    if (!$r->isSuccess()) {
        var_dump($r->getErrorMessages());
    }
    Ответ написан
  • Как в битрикс вывести только время создания?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    <?=strtolower(FormatDate("H:i", MakeTimeStamp($arItem['PROPERTIES']['DATA']['VALUE']))) ?>
    Ответ написан
    1 комментарий
  • Какие существуют бесплатные сервисы для расчета расстояний между координатами на карте?

    @anton99zel
    29а класс средней школы №7
    честно стырил код:
    // Радиус земли
    define('EARTH_RADIUS', 6372795);
     
    /*
    * Расстояние между двумя точками
    * $φA, $λA - широта, долгота 1-й точки,
    * $φB, $λB - широта, долгота 2-й точки
    * Написано по мотивам http://gis-lab.info/qa/great-circles.html
    * Михаил Кобзарев <mikhail@kobzarev.com>
    *
    */
    function calculateTheDistance ($φA, $λA, $φB, $λB) {
     
    // перевести координаты в радианы
    $lat1 = $φA * M_PI / 180;
    $lat2 = $φB * M_PI / 180;
    $long1 = $λA * M_PI / 180;
    $long2 = $λB * M_PI / 180;
     
    // косинусы и синусы широт и разницы долгот
    $cl1 = cos($lat1);
    $cl2 = cos($lat2);
    $sl1 = sin($lat1);
    $sl2 = sin($lat2);
    $delta = $long2 - $long1;
    $cdelta = cos($delta);
    $sdelta = sin($delta);
     
    // вычисления длины большого круга
    $y = sqrt(pow($cl2 * $sdelta, 2) + pow($cl1 * $sl2 - $sl1 * $cl2 * $cdelta, 2));
    $x = $sl1 * $sl2 + $cl1 * $cl2 * $cdelta;
     
    //
    $ad = atan2($y, $x);
    $dist = $ad * EARTH_RADIUS;
     
    return $dist;
    }
    $lat1 = 77.1539;
    $long1 = -139.398;
    $lat2 = -77.1804;
    $long2 = -139.55;
     
    echo calculateTheDistance($lat1, $long1, $lat2, $long2) . " метров";
    // Вернет "17166029 метров"
    Ответ написан
    1 комментарий
  • Как правильно добавлять товары в заказ через api?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    1. Убрать строку:
    "NAME"              => htmlspecialchars_decode($name),

    2. "PRODUCT_ID" => $_POST["id"], убедиться, что сюда передается ID элемента.
    3. "PRICE" => $price,
    убрать, иначе добавить'CUSTOM_PRICE' => 'Y',
    Ответ написан
  • Как реализовать уникальный индекс сортировки товара в разделе?

    @anton99zel Куратор тега 1С-Битрикс
    29а класс средней школы №7
    Добавим к стандартным полям сортировки, в нашем случае "кол-во просмотров, т.е. популярность - shows", свои сортировки, созданные на свойствах элемента - PRIORITET - если хотим поднять элемент выше в списке и NOSKLAD - если хотим убрать товары, отсутствующие на складе - ниже. Отображать не будем, но будем учитывать:
    $arSort = array("PROPERTY_NOSKLAD"=>"ASC", "PROPERTY_PRIORITET"=>"DESC", "shows"=>"DESC");
    if (
        isset($_GET["sort"]) && isset($_GET["method"]) && (
                $_GET["sort"] == "name" ||
                $_GET["sort"] == "catalog_PRICE_1" ||
                $_GET["sort"] == "shows" ||
                $_GET["sort"] == "created")){
    $arSort = array($_GET["sort"]=>$_GET["method"]);
      }

    В итоге в компонент или используя api, можно передавать массив, описывающий направления и параметры сортировки .
    $res = CIBlockElement::GetList($arSort, Array($arrFilter, $arFilter), false, Array("bShowAll"=>false, "nPageSize"=>18, "iNumPage"=>$pn), $arSelect);
    Ответ написан
    3 комментария