Михаил Базаров (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Свойство инфоблока в catalog.section
 
Прямо в catalog.item в файле card/template.php - в нужном месте
Код
<? echo $item['PROPERTIES']['ATT_ARTICULE']['VALUE'];?>
Перенос Битрикс сайта с хостинга на хостинг, инструкция
 
Цитата
iphonevalera21@icloud.com написал:
Здравствуйте, Михаил. При создании базы данных выходит ошибка:
Database creation return error:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

С чем она может быть связана?

Спасибо.
Не подошел пароль root пользователя базы данных.
Если новое веб окружение- пароль root написан в файле
/root/.my.cnf
Закрытый сайт
 
Цитата
Dmitriy Ivanov написал:
Подскажите, как правильно создать страницу, есть два каталога, но, что бы 1 каталог видели только группа пользователей 1, а каталог 2 видели только группа пользователей 2?
Ограничить доступ к инфоблоку, нужным пользователям (точнее разрешить, всем остальным запретить)
Добавить галерею из картинок (MORE_PHOTO) в подробное описание товара
 
Можно вот так
Код
<?if(count($arResult["MORE_PHOTO"])>0){ // Если есть доп фотки?>
   
   <?foreach($arResult["MORE_PHOTO"] as $PHOTO):?>
      <img src="<?=$PHOTO["SRC"]?>" />
   <?endforeach?>

<?}else{ // Если доп фоток нет?>

   <?if (strlen($arResult['DETAIL_PICTURE']['SRC']) !== 0) { // Если есть детальная?>
      <img src="<?=$arResult['DETAIL_PICTURE']['SRC']?>">
   <?}else{ // Если детальной нет?>
      <img src="<?=$arResult['PREVIEW_PICTURE']['SRC']?>">
   <?}?>

<?}?>  

Можно проверять наличие нужных данных через (empty) - тут уже дело второе

В штатном шаблоне, по сути, этаже логика реализована в script.js - там с закруткой в magnifier - но можете в нем поковыряться.
Я обычно выкидываю эту часть скрипта. Монструозный он, как по мне.  
Вставка текста в бренды
 
Просто пишите в описание товара. Если уже занято, в свойство типа "HTML/TEXT"
Если нужно на несколько товаров какого-то раздела (что бы не писать в каждый), как пользовательское свойство раздела.
Ускорение работы сайта на 1С-Битрикс
 
Цитата
inq написал:
Михаил спасибо за видео.
Подскажите пожалуйста, если на битриксе 2 или 3 сайта работают (в режиме многосайтовости) то каким образом прописывать "идентификатор кэш сессий"
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#01");
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#02");
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#03");

Или просто через запятую?
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#01, #02, #03");
Интересный вопрос, что-то ни разу не делал memcached  с многосайтовостью.
Если рассуждать логически: установка одна, значит достаточно задать один идентификатор, а битрикс должен разрулить на своем уровне.
Как минимум разложить кеши всех сайтов по своим "директориям" и не перемешавать.

Наверное: есть резон спросить у ТП Битрикс. Если напишите им- буду благодарен если скопируете ответ сюда)

PS: Я бы не использовал в качестве ID сессий, ID сайтов. Если, на этом сервере появится еще одна установка битрикс (отдельная, вне текущей многосайтовости) - там могут оказаться такие же ID сайтов.
Мой метод, с первыми двумя буквами домена, может тоже не идеальный) Но все таки по надежнее. Можно и не две буквы, а целиком домен.
Запретить изменения описаний товаров при выгрузке из 1С УТ на сайт
 
Цитата
selakonst@ya.ru написал:
Еще забыл указать, что версия  Битрикс самая новая, но при этом включена поддержка старых событий
Так с ходу не подскажу, и проверить сейчас негде.
Но как варианты, можно вообще без этой нагрузки обойтись:

1) Простой. Создать под доп. картинки отдельное свойство, которого вообще нет в реквизитах 1С. Например: MORE_PHOTO_2
А штатное, пусть себе болтается пустое (можно спрятать из редактирования элемента- чтоб не раздражало)

2) Сложный: Вынести обработчик импорта в свое пространство имен и доработать- выкинуть обработку картинок (там внимательно, есть еще обработка фалов - не картинок)

PS: Последнее время, стараюсь вообще не "перебарщивать" с init.php - если можно обойтись без его раздувания, прикладываю максимум усилий )
Вставка текста в бренды
 
Цитата
Васили Крохин написал:
Здравствуйте, подскажите пожалуйста, как можно такое реализовать.

Суть такая нужно для определенного бренда сделать возможность вставлять текст в карточке товара например оплата за этот товар только наличными сборка и доставка не включена  
Информации маловато. но можете создать еще одни инфоблок (или HL инфоблок) и связывать его элементы, в которых нужные услуги/дополняшки, с текущим элементом.

Но, если опишите поподробнее - наверное, смогу и ответить подробнее.
Постраничная навигация в списке разделов Битрикс- catalog.section.list
 
Постраничная навигация в списке разделов Битрикс- catalog.section.list

Если в магазине очень много разделов и хочется вывести их с постраничной навигацией: можно воспользоваться методами CDBResult::IsNavPrint(), CDBResult::NavStart и CDBResult::NavPrint
Доброго дня! Помогите, не могу разобраться с работой события, Значение свойства элемента записывается со второго раза
 
А, не внимательно прочитал- итак редактируете существующий элемент.
Но свой поссаж оставлю- мало ли кому пригодится, при добавлении элемента.

У вас, вот эта проверка точно выполняется корректно?
Код
 if (!empty($bxrecRatingVal))
Изначально, свойство- видимо пустое. На второй итерации сохранения, как раз уже не пустое и задача выполняется.
Доброго дня! Помогите, не могу разобраться с работой события, Значение свойства элемента записывается со второго раза
 
Событие запускается при обновлении элемента "OnAfterIBlockElementUpdate" - именно обновление существующего.
Отработайте и "OnAfterIBlockElementAdd" - добавление
Код
Событие "OnAfterIBlockElementAdd" вызывается после попытки добавления нового элемента информационного блока методом CIBlockElement::Add. 
Работает вне зависимости от того были ли созданы/изменены элементы непосредственно, поэтому необходимо дополнительно проверять параметр: RESULT_MESSAGE.Параметры
Ускорение работы сайта на 1С-Битрикс
 
Ускорение работы сайта на 1С-Битрикс

Данная статья написана специально под видеоролик (приложен в конце статьи), опубликованный на моем ютуб канале: "Ускорение работы сайта на 1С-Битрикс".
Изменить размер картинок на лету в битрикс
 
Цитата
Александр Коваленко написал:
И так получается после каждого обновления будут создаваться новые картинки, а старые, такие же, просто неконтролируемо заполнять место на сервере.
Не должны. Если не меняется исходная картинка- то ее обработанная копия, лежит в /upload/resize_cache - и всегда отдается одна и та же.
Если обновится исходная, то создастся новая копия. Старые удалятся если сбросите кеш сайта.
Серия 16: Выгрузка товаров из 1С-УТ в Битрикс
 
Цитата
iphonevalera21@icloud.com написал:
Здравствуйте, Михаил.
Такой вопрос, как вывести свойства товаров из 1С? Чтобы название свойства и их значения = свойства и значения в битриксе.

Выбирать из группы списка или как?

Спасибо!
Наверное, не понял вопрос.
Но, если понял правильно - просто выберите нужные свойства в настройках компонента.
Фильтр с десятичными числами
 
Цитата
Roman Selkin написал:
Михаил, я правильно понимаю, эьто должно работать сразу из "коробки" или же нужно что то настроить?
Да, должно из коробки. Попробуйте:
- Проверьте, реально ли свойство является числом (хотя, иначе и не вывелись бы как ползунки- но на всякий).
- Проверьте, указываете ли числа через запятую или точку (попробуйте и так и так)
- Попробуйте включить встроенный в битрикс шаблон умного фильтра. самый свежий (по моему bootstrap_v4 называется - будет ли работать)
Фильтр с десятичными числами
 
Цитата
Roman Selkin написал:
Михаил, день добрый. Вы можете помочь в данном вопросе или нет?
Вот так, в рамках форума не смогу помочь. Нужно разбираться на месте.
Но, на ближайшее время очень загружен.
Серия 23: Создание основных настроек и скелета приложения
 
Цитата
Sub Zero написал:
Цитата
Все правильно, что ы создать приложение должна быть установлена именно "Мобильная платформа (mobileapp)"  
Это я понял  У меня вопрос - где взять именно демонстрационное приложение, которое eshop_app.
Вот это, как то не подскажу. Можете мою папку с приложением скачать. В какой-то из серий приложена
Серия 23: Создание основных настроек и скелета приложения
 
Цитата
Sub Zero написал:
Почему-то на редакции Бизнес в структуре нет модуля eshop_app - Мобильное приложение. Есть только Мобильная платформа. У вас я вижу эта папка есть. Её убрали теперь, или нужно откуда скачивать самому, подскажите.
Все правильно, что бы создать приложение должна быть установлена именно "Мобильная платформа (mobileapp)"  
Ограничение в количеств символов
 
Цитата
pavel gushchin написал:
Добрый день. Михаил, подскажите пожалуйста, как можно в анонсе товара либо вывести большее количество символов в названии, либо добавить текст анонса. Почему то не вылазит собака доп текст под названием, а если длинный текст с анонсовой часть, то обрезается...
Если используете новый шаблон каталога, скоро на ютуб канале выпущу видео- постараюсь разобрать работу этого шаблона и в целом- переверстку его под свой шаблон (этот момент, с анонсом- постараюсь не забыть).

Если используете старый шаблон. Там, этой проблемки, вроде бы не должно быть.  
Видеоурок №1: вводный
 
Цитата
serzh8686@mail.ru написал:
Михайл доброе время суток!
Подскажите тольконачал изучать 1С-Bitrix (небольшой опыт Fotoshop и HTTP имеется)....в Вашем первом уроке была дана инструкция как всё нужно сделать...и я как-то у вас не нашёл во вкладке "Блог-note" на сайте вашем ссылку на тему создание сайта...чтобы скачать шаблон psd как указано в видеоуроке...можете ссылку дать на указанный ресурс)
Добрый
https://camouf.ru/upload/uroki_bitrix/maket.psd
Вывести все подразделы текущего раздела, Люди добрые, немножко вашего внимания и ваша помощь
 
В компоненте ничего менять не нужно. Решить, этот вопрос, можно на уровне шаблонов.
Вам нужно, просто получить ID (или CODE) родителя на нужном уровне раздела и передать его в catalog.section.list
Добавление и удаление из сравнения на AJAX: Битрикс
 
Цитата
Михаил,доброго времени суток!
Использовал Ваш метод,все работает! Но есть нюанс, я использовал его  в комплексном bitrix:catalog но в своем шаблоне.
При отметке товара "checkbox" появляются два окна ,одно на стандартном шаблоне другое то которое Ваша доработка, если отключать встроенный механизм в комплексный каталог перестает работать и Ваша доработка.
К сожалению не нашел как вызвать стандартный механизм сравнения товаров, воспользовался Вашим.
В том который штатный, попробуйте просто очистить шаблон это компонента. Совсем отключать его не надо- так и не должно работать.

В штатном, оставляете только цифру с количеством отложенного, он и обновляется при ajax запросе. Можно не выводить его в самом catalog.section - достаточно где-нибудь в шаблоне сайта (там где планируется вывод количества отложенного)
Фильтр с десятичными числами
 
Цитата
Roman Selkin написал:
Бегунок показывает только цельное число.  https://pastenow.ru/6447d785c395578e38b594669e62e476
Надо разбираться на месте, почему у вас не работает.
Вот тут с десятичными https://elipeneri.ru/catalog/elki_iskusstvennye/ (высота елки) - ни чего специально не делал.
Фильтр с десятичными числами
 
Цитата
Roman Selkin написал:
Добрый день. Есть задача, вывести в фильтре проекционное отношение. Есть значения минимальное и максимальное. Эти значение через точку. Как вывести эти значения в фильтр через бегунок, что бы можно было отсортировать. Сейчас это только через целое число.
наверное, не понял вопроса. Проблем с десятичными, в фильтре, не должно быть. Просто установите это свойство, как число
Вывести все подразделы текущего раздела, Люди добрые, немножко вашего внимания и ваша помощь
 
Тогда, пропробуйте так
Код
$SECTION_ID = $arResult['SECTION_ID']; //ID текущего раздела
$res = CIBlockSection::GetByID($SECTION_ID);
if($ar_res = $res->GetNext()) {
 print_r($ar_res);
}
 
В распечатке, получите все данные о разделе, в том числе о его прямом родителе (на самом верхнем, а о близжайшем).
Но не точно, сейчас проверить негде
Вывести все подразделы текущего раздела, Люди добрые, немножко вашего внимания и ваша помощь
 
Внутри под раздела получаете его родителя (раздел верхнего уровня, в вашем случае)
Код
$SECTION_ID = $arResult['SECTION_ID']; //ID текущего раздела
$sectionParent = CIBlockSection::GetNavChain(false, $SECTION_ID);
    while($arItem = $sectionParent->Fetch()){
        $parentSectionId = $arItem['ID']; // ID родителя (там массив, если больше одного родителя)
    }

В bitrix:catalog.section.list передаете этот ID
Код
<?$APPLICATION->IncludeComponent(
   "bitrix:catalog.section.list",
   "catalog_struktr_spa",
   Array(
      "ADD_SECTIONS_CHAIN" => "Y",
      "CACHE_FILTER" => "N",
      "CACHE_GROUPS" => "Y",
      "CACHE_TIME" => "36000000",
      "CACHE_TYPE" => "A",
      "COMPONENT_TEMPLATE" => "tree",
      "COMPOSITE_FRAME_MODE" => "A",
      "COMPOSITE_FRAME_TYPE" => "AUTO",
      "COUNT_ELEMENTS" => "N",
      "FILTER_NAME" => "",
      "IBLOCK_ID" => "2",
      "IBLOCK_TYPE" => "catalog",
      "SECTION_CODE" => "",
      "SECTION_FIELDS" => array(0=>"NAME",1=>"",),
      "SECTION_ID" => $parentSectionId,  // Тут передали ID
      "SECTION_URL" => "#SECTION_CODE#",
      "SECTION_USER_FIELDS" => array(0=>"",1=>"",),
      "SHOW_PARENT_NAME" => "Y",
      "TOP_DEPTH" => "1",
      "VIEW_MODE" => "LINE"
   )
);?>

Пишу по быстрому, но вроде бы ни чего не упустил.
Вам, скорее всего, нужно будет еще выполнять проверки на глубину текущего раздела.
Проблемы работы раздела Каталог лицензия Битрикс: Старт, В каталоге два раздела, в каждом по одному товару. 1. Электротягач; 2. Дробеструйная камера А вкладка дополнительно, одинаковая на все товары
 
У вас там, типовое решение Аспро. Вопросы реализации и работы функционала - лучше перенаправить к ним.
- Переделайте это "Дополнительно" как свойство раздела (пользовательское) - если нужно менять по всем товарам раздела
или
- Как свойство товара. Если нужно сделать уникальным, для каждого товара

PS: Просто совет, выкинуть это Аспро и сделать нормальный сайт.
Панель управления хостином VESTA и 1С Битрикс, базовая оптимизация
 
Цитата
sel@ukr.net написал:
А разве VestaCP не конфликтует с окружением битрикса? Или у вас все нормально?
Конфликтовать будет в любом случает. В заметке не рассматривается установка поверх или рядом с окружением битрикса.
Просто установка и оптимизация под битрикс- самой панели (ее окружения)
Свойство: привязка к Яндекс:Картам - вывести из нескольких элементов на одну карту
 
Цитата
Αнтон Μаксимов написал:
это с применением стандартной функции настраиваемой яндекс-карты?
а как заменить эти типовые точки на собственные, если требуется разделять объекты по значимости ??
Тут, пока не подскажу. Чуть позже, буду решать эту задачку. Если не забуду, допишу в эту заметку
Свойство: привязка к Яндекс:Картам - вывести из нескольких элементов на одну карту
 
Свойство: привязка к Яндекс:Картам - вывести из нескольких элементов на одну карту

Предположим, что у вас есть инфоблок со свойством "Привязка к яндекс картам". В этом инфоблоке некоторое количество элементов, в принципе любое. Пусть, это будут офисы продаж.
Задача: вывести все офисы продаж на карту с метками и основными данными о точке- в бубл (или как, там называется эта штука- при клике на метку).
Серия 17: Подготовка шаблона каталога к верстке
 
Цитата
iphonevalera21@icloud.com написал:
Добрый день, Михаил. Подскажите пожалуйста, а как быть в том случае если у меня порядок расположения по верстке идут следующим образом: количество, цена, кнопка купить. В вашем шаблоне simple (то что из видео урока) все  в одной куче.

Просто переставьте блоки местами, так как нужно по верстке- да и все
Сортировка элементов по индексу сортировки значений типа список, XML_ID
 
Цитата
cdl написал:
Вот ссылка записки
Собственно
propertysort_TYPE

TIP_ELEMENTA - это код свойства, в Вашем случае TYPE, который
Настройка выгрузки товаров в Яндекс Маркет с сайта Битрикс
 
Цитата
Александр Ульянов написал:
Михаил, спасибо за статью! Все получилось!
А  не подскажете, как добавить в выгрузку второй вид цен?
У меня розничная и оптовая цена. Оптовую нужно тоже выгрузить.
Статья немного старовата, попробуйте вот эту штуку
https://marketplace.1c-bitrix.ru/solutions/yandex.market/
Она официальная и достаточно гибкая в плане настроек- думаю, все получится
Многосайтовость битрикс на разных доменах
 
Цитата
Александр Каракозов написал:

Новый ключ?Ключ один же...версия битрикс старт
Написали что "мне не нужно параллельно создавать второй сайт". Если не второй сайт в многосайтовости- то нужен новый ключ.
На одном ключе, может быть не больше одной, боевой установки.
Многосайтовость битрикс на разных доменах
 
Цитата
Александр Каракозов написал:
Такой вопрос, мне не нужно параллельно создавать второй сайт, у меня есть один готовый, мне нужно сделать такой же, только англ. версию, то есть мне по сути нужно его скопировать и поменять в нем тексты с ру. на англ., как я могу упростить свою задачу?
Можно, просто сделать резервную копию сайта, развернуть его и активировать новый ключ уже внутри этой копии.
Ну а дальше, просто заменить тексты.
Denwer c PHP 7.1.8 и MYSQL 5.7 оптимизированный для Битрикс
 
Цитата
Александр Максимов написал:
Михаил, а другие смs на вашей сборке Денвера запустятся? Вордпресс? Спасибо
Должны. По сути, любые должны
УРЛ
 
Цитата
Roman Selkin написал:
Михаил, день добрый. Нужна ваша помощь.  У нас есть страничка  https://otzovik.one/otzyv/?ELEMENT_ID=143327 . Хотим данный урл укоротить, что бы было  https://otzovik.one/otzyv/143327 /.Но после перенастроек все открывается 404. Не могли бы вы помочь. Доступ готов предоставить.
Зайдите в Администрирование - Настроки - Модули - Управление адресами страниц
И пересоздайте правила обработки.
Обычно, из за этого такое поведение (чаще всего, если меняли параметры компонента на прямую- по FTP).

Если не поможет, проверьте файл .htaccess может в нем не указан urewrite.php

Если и это не поможет, надо разбираться на живую. Там уже, всякое может быть.
Создание блога с комментариями, оценками и просмотрами на сайте с 1С-Битрикс
 
Цитата
Павел Сидоров написал:
Доброго времени суток.
Есть один нюанс при такой настройке ЧПУ как показано на видео.

Например
Каталог ЧПУ (относительно корня сайта): /recipes/
Страница общего списка: index.php
Страница раздела: #SECTION_CODE#/
Страница детального просмотра: #ELEMENT_CODE#.php

Тогда при обращении к  несуществующей странице  (например /recipes/авбгдеёж) будет отдаться не 404, а страница общего списка.

Если знаете как исправить данный недостаток подскажите пожалуйста.

Спасибо

Попробуйте, в настройках компонента, в самом низу- поставить галки:
- Отдавать 404
- Показ специальной страницы (пропишите путь к странице ошибки)
Должно бы помочь, но не точно.
Малая корзина
 
Цитата
pavel gushchin написал:
Опять же ерунда получилась. Считает вместе с избранным...
Помогите сделать по уму... Пока не приходит на ум как это можно сделать стилями.
Просто в большую корзину выводит количество товаров со словом "товаров" на сумму "...". А в малой нужно просто выводить цифру
Просто попрячте не нужную информацию в display:none; на медиа запросах
https://habr.com/ru/company/google/blog/173861/
Вывод цены в рассрочку
 
Цитата
Roman Selkin написал:
Хотели, что бы от стоимости товара система автоматом высчитывала цену в рассрочку. То есть скрипт и код который сможет высчитать минимальную сумму в рассрочку и выведет в определенное место. Максимальный строк рассрочки 24 месяца.
Если выводить по первому варианту, то это прописывать ручками надо в карточке товара, а это не очень удобно.
Просто загоните цену в некую переменную, а дальше: просто математические функции php - по некой,
нужной вам, формуле и вывод результата расчета.
Малая корзина
 
Цитата
pavel gushchin написал:
Здравствуйте! Все пытаюсь разными способами вывести количество товара в малую корзину(мобильную). В широком формате прописан вызов компонента. А в месте мобильной корзины где должна светится цифра никак не пойму что прописать.
Метод избранного должен наверное быть, но пока непонятен...
Куда посмотреть? вывел так, но авыводит только для 1 товара, хотя в корзине большее количество одного и того тже товара.
Код
 <?
$cntBasketItems = CSaleBasket::GetList(
        false, [
                "FUSER_ID" => CSaleBasket::GetBasketUserID(),
            "LID" => SITE_ID,
            "ORDER_ID" => "NULL"
        ], [], false, ['ID']);
?> 
А использовать корзину из "широкой" версии не вариант? Просто, через css и медиа-запросы привести ее к нужному виду.

А ваш код, какой-то странный) по сути выводит наличие или отсутсвие товара в корзине (не количество, просто- да/нет, по сути).
Тут
https://dev.1c-bitrix.ru/api_help/sale/classes/csalebasket/csalebasket__getlist.4d82547a.php
есть пример правильного вывода.

Но я, все таки, посоветовал бы адаптировать основную корзину.
Вывод артикула
 
Цитата
pavel gushchin написал:
Поменял, пропал опять артикул. Может ещё что то не так? Ну если с элемент работает, на что то повлиять может?
Да, это я ошибся) Не каталожный foreach подсказал. Верните arElement
Вывод артикула
 
Цитата
pavel gushchin написал:
['PROPERTIES']
Поменяйте $arResult на $arItem
Правило работы с корзиной
 
Цитата
Dmitriy Ivanov написал:
Подскажите, как можно реализовать так, что бы определенный товар, можно было заказать только от 10шт, если меньше 10шт то в корзину не добавляется
Можно сделать на уровне шаблона.
Просто, для input - в которое вводится количество, указать min="10", предварительно переназначив его в type="number".
Это из простого решения.

Более заморочистое, но правильное (дабы не "прибивать гвоздями" в шаблоне)
- создать свойство для товаров: "Минимальная партия";
- по умолчанию указать ему число (10, в вашем случае);
- выполнять проверку на это число, для кнопки добавления в корзину;
- если условие не выполнено, как то уведомлять пользователя- что именно, пошло не так.  
Вывод цены в рассрочку
 
Цитата
Roman Selkin написал:
Добрый день. Как можно в карточке товара вывести стоимость товара в рассрочку рядом со стоимостью товара. Рассрочка товара максимальный срок 24 месяца.
Если просто текст, просто найти в шаблоне место, где выводится цена и дописать.
Если шаблон типовой, найдите поиском
case: price
В этом блоке вывод цены.

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

В общем, нужно побольше конкретики- что бы подсказать более точно
Не выводится скидка
 
Цитата
valia9889@gmail.com написал:
а ваши верстальщики/программисты не могут этого сделать?
Наши это чьи? Я тут один вроде :)  
Многосайтовость битрикс на разных доменах
 
Цитата
Андрей Бакрин написал:
Добрый день. У меня почему-то при попытке установить второй сайт такую ошибку выдает:
Fatal error: require(): Failed opening required '/home/o/oknave5o/poddomen.site.tech/public_html/bitrix/header.php' (include_path='.:/usr/share/php') in /home/o/oknave5o/poddomen.site.tech/public_html/index.php on line 2
Скорее всего не правильно прописали путь к ядру bitrix - второй сайт его не видет
Вывод разделов на главной
 
Цитата
Dmitriy Ivanov написал:
Подскажите, как вывести на главной разделы с элементами в таком вот виде:  https://yadi.sk/i/FoNO1SX1TcrgOw  .  https://yadi.sk/i/fRiLxEXNKE8aGw
То есть, на главной вывести название раздела и под ним товары из этого раздела
Использовал section.list но кроме названия ничего не выводится
Можно воспользоваться вот этим компонентом.
https://camouf.ru/club/user/1/blog/202/
Там подкрутите под себя, нужно добавить вывод нужных данных о товарах.
В общем, базово все выведет- детали уж подкрутите.
Многосайтовость битрикс на разных доменах
 
Цитата
Максим Горланов написал:
Михаил добрый день,

Не удается запустить второй сайт на поддомене.
Виртуальный хостинг TimeWeb.
Для первого сайта имеем директорию /home/c/cx45616/bitrix/public_html
Для второго сайта создаю директорию /home/c/cx45616/CARGO/public_html
Копирую файлы index и .access, даю права 777
Делаю символьные ссылки.
Создаю второй сайт в админке битрикса с указанием корневой папки /home/c/cx45616/cargo/public_html
Сортировки - 100

После нажатия кнопки сохранить, перенаправляюсь на сайт на поддомене и открывается пустая страница
Установка шаблона не происходит
C Таймвебом, вечно какие-то проблемы. Попробуйте обратиться в их тех поддержку.
Серия 17: Подготовка шаблона каталога к верстке
 
Цитата
Артём Пушкарский написал:
Здравствуйте, как можно скрывать сайдбар на странице детального просмотра карточки товара при использовании комплексного каталога?
Вывести его в section.php, так что бы не было в element.php
Ленивая подгрузка картинок в компоненте, на vue js Битрикс
 
Цитата
Дмитрий Мамченко написал:
Столкнулся с проблемой, что после сброса кэша работает. как только появляется кэш то не работает ленивая загрузка. Не сталкивались?
Не замечал, сейчас у себя скинул кеш- вроде бы все работает как надо
Select  вместо chekbox в умном фильтре 1С-битрикс
 
Цитата
a13z2005@yandex.ru написал:
Михаил Базаров  подскажите  - как в этом селекте реализовать выбор нескольких значений?
Заметка уже староватая. В штатном фильтре должна быть такая возможность- если память не изменяет.
Если нет, можно переделать чекбоксы- нужно будет плотненько поверстать и попотеть- но сымитировать такую возможность через них
Вывод элементов с помощью API битрикс
 
Цитата
Алексей Иванов написал:
Подскажите как проверить на наличие элементов в инфоблоке?
Если пусто то вообще не выводит ни чего.
Если пусто-то ни чего и не выведется. Если правильно понял вопрос.
news.list внутри news детального просмотра
 
Цитата
Dmitriy Ivanov написал:
Проблема решилась добавлением в .htaccess
   RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} ^(.*/[^/\.]+)$
  RewriteRule ^(.*)$  http://%{HTTP_HOST}/$1/  [R=301,L]  

Не стоит так делать. Запрещено вставлять вызов компонентов с кешированием, в template.php. Сделайте лучше правильно, через component_epilog.php этот файл, подключается (грубо говоря "пристыкуется") в конец template.php и в нем не работает кеш самого шаблона (само собой, работает кеш вызванного компонента).
news.list внутри news детального просмотра
 
Цитата
Dmitriy Ivanov написал:
Добрый день, подскажите что не правильно делаю, в news компонент, внутри детального просмотра, добавил компонент news.list, "читать так же" статьи выводятся, и при наведение url отображается правильный, но при переходе выкидывает на главную, а в строке url адрес статьи
Скорее всего, вставляете простой компонент, в шаблоне компонента- который, в составе комплесного.
Используйте или component_epilog.php или (что правильнее) вставляйте вызов простого компонента внутри комплексного.
Фильтрация пунктов меню
 
Если правильно понял вопрос: именно в $SECT_ID у вас не передается ID нужной секции.
Передайте ее в эту переменную
Скрыть свойства которых нет в наличии
 
Цитата
KROXIN1000@MAIL.RU написал:
Здравствуйте подскажите как скрыть свойства которых нет в наличии

Например есть майка у нее есть размеры  L; XL; XLL; и т.д. а в наличии только L
Это в штатных параметрах есть. Называется
"Недоступные торговые предложения" - скрывать, показывать, показывать в конце

Если не срабатывает, убедитесь что это передается в комплексном компоненте
"HIDE_NOT_AVAILABLE_OFFERS" => $arParams['HIDE_NOT_AVAILABLE_OFFERS'];
Детальная страница новостей - шапка
 
Цитата
Dmitriy Ivanov написал:
Добрый день, подскажите, как можно сделать, что бы в детальной странице "bitrix.news" шапка  сайта скрылась? и вместо нее добавить другую
Сходу приходит три варианта:

1) Через свойства страницы. Подробнее тут
https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=35&LESSON_ID=1929

2) Создать отдельный шаблон сайта и в качестве параметра передать проверку на нахождение в детальной новости

3) Сделать шапку включаемой областью и подключать, на детальной новости, нужную область (с шапкой).

4) Самый хреновый: прятать шапку в display:none и выводить нужную шапку (их будет две) в display:block
Битрикс и modx evolution на одном диске, как поставить на одном диске битрикс и modx evolution?
 
Цитата
Сергей Брызгалов написал:
Здравствуйте,
есть собственный vps, на нем битрикс, старый "эксперт".
Теперь захотели поставить туда же modx evolution.
Подскажите, пожалуйста, можно так сделать?
На работе Битрикса не отразится?

Если есть какие-то обучающие материалы, скиньте пожалуйста:
- как поставить две разные cms на одном диске

Есть какие-то подводные камни?
Сам modx на битриксе сказаться не должен- если все правильно сделаете.
Но, заработает ли сам Modx на этом окружении- не подскажу.
Серия 5: Верстка пользовательских форм и доски объявлений #В режиме стрима
 
Цитата
dvb dvb написал:
Монстр получался интересный и красивый. Соцсеть с доской и магазином показала бы Битрикс во всей мощи... Очень важная попытка. На соцсети многие поломались. А свой компонент с добавлением пользователем объявления в инфоблок останется?
Да, компонент будет и скорее всего комплексный.
На соц. сети все "ломаются", скорее всего, от не понимания зачем ее делать. В рамках видео-обучалок тем более.  
INPUT type="file" Предпросмотр превью картинки до загрузки
 
INPUT type="file" Предпросмотр превью картинки до загрузки

Рассмотрим на примере компонента "Форма добавления-редактирования элементов инфоблока", как сделать ее более удобной для пользователя. Способ самодостаточный и будет работать с любой формой у которой есть input[type="file"]
Серия 5: Верстка пользовательских форм и доски объявлений #В режиме стрима
 
Цитата
dvb dvb написал:
Интересная серия уроков. Жаль, что долго нет продолжения.
Серия полностью перезапущена. Вместо попытки делать монстра: магазин + доска + социальная сеть
Делается просто, полноценная доска объявлений.
Выйдет примерно в середине сентября. Сразу все серии, решил не тянуть по одной серии, а запишу все сразу и вывалю на ютуб

Следить можно тут https://bxstore.ru ну или на ютуб канале
Установить цену товара из свойства инфоблока
 
Цитата
Сергей Петрухин написал:
Вместо
require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php");

пишем
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

И наслаждаемся
Да, если не нужно отображение шаблона- можно и так. Или для cron задания
Установить цену товара из свойства инфоблока
 
Установить цену товара из свойства инфоблока

На одном из проектов, нужно было единоразово заполнить цены товаров из свойства инфоблока. Сделать это можно через API, методами
CPrice::Update и CPrice::Add
Проверка на наличие элементов, текущего пользователя, в заданном инфоблоке.
 
Проверка на наличие элементов, текущего пользователя, в заданном инфоблоке.

Если стоит задача, определить наличие элементов созданных пользователем на сайте. Можно воспользоваться API: CUser и CIBlockElement
Хостинг панель BrainyCp: оптимизация под 1С-битрикс
 
Цитата
Александр Евгеньевич написал:
Михаил, подскажи пож. я вот панель установил на VDS но у меня не большая проблемка. Как правильно устанавливать DNS сервера от хостинга?
C этим моментом не разбирался как-то. Всегда использую DNS от Яндекса или reg.ru
Вывести минимальную цену торговых предложений в Битрикс
 
Цитата
Вячеслав пишет:
Михаил, насколько я понял ["SKU_PROPERTY_ID"] - это ID свойства привязки предложения к товару.
И соответственно выводится не минимальная цена СКУ, а цена у которого ID наименьший среди других. На моем примере это видно (см.скрин). https://yadi.sk/i/w1yKStmgcMKAUQ
Так как сделать сортировку именно по цене?
Вот это правило сортировки, должно вывести именно наименьшую цену
"PRICE"=>"ASC"
Часть 2: Установка типового магазина битрикс на сервере
 
Цитата
Алексей Чичикин написал:
Михаил, здравствуйте. А для каких целей вы покупаете виртуальную машину?
Почему бы просто не развернуть битрикс на локальном сервере и работать там, а потом выкинуть на нужный домен? Или я что то не понимаю?
Спасибо.
На виртуальном сервере управляемость более надежная.
Не на столько дорого они стоят, даже на момент записи видео.
В целом, так просто удобнее
Серия 7: Создание собственного компонента с нуля
 
Серия 7: Создание собственного компонента с нуля

Скоро |  создаем собственный компонент с нуля. Серия будет длинная и не сказать что простая. Результат будет приложен в архиве.
Не выводится скидка
 
Цитата
Макс Менцев написал:
Проблему нашли. Скидка не прописана в шаблоне компонента. в гугле не забанили, но там не можем найти этой информации( Как прописать возможность скидки (перечеркнутая цена) в настройках шаблона компонента.
Распечатайте массив $arResult в блоке [PRICE] найдете всю информацию о ценах и скидках. Включая процентрую разницу между ценами (со скидкой/без скидки) и сами цены- базовую и со скидкой.
Дальше, просто выводите, в нужных местах, по Вашему дизайну, нужные значения
Связанные элементы в карточке товара, с помощью catalog.section
 
Связанные элементы в карточке товара, с помощью catalog.section

Достаточно часто, при разработке магазинов на битрикс, требуется выводить связанные элементы внутри карточки товара.
Данный блок, может называться как угодно и преследовать различные маркетинговые цели. Например, для блоков: Рекомендуем посмотреть, Аналоги, похожие товары итд.
как вывести размер скидки в каталоге и карточке товара
 
Так как эта тема хорошо проиндексировалась поисковиками. Оставлю это здесь, возможно кому-то пригодится

Вывести дату окончания скидки в карточке товара
сли нужно вывести информацию о скидке в карточке товара, можно воспользоваться методом CCatalogDiscount::GetList. Данные метод позволяет получить любую информацию о скидке: купон, название, типа скидки и.т.д. Но, я думаю, наиболее актуально вывести дату окончания скидки или количество дней до окончания.

https://camouf.ru/blog-note/7794/
Серия 5: Верстка пользовательских форм и доски объявлений #В режиме стрима
 
Цитата
Сергей Стефанович написал:
Михаил загулял))
Если бы  :D  Работой завалило, на видео пока времени нет.
Вывести все разделы в которых находится элемент инфоблока
 
Отмена с массивом. Там можно конечно, на будет глупо не воспользоваться самим методом GetElementGroups
У него есть работа с сортировкой, соотвественно:
Код
$ElementId = $arResult['ID'];
    $db_groups = CIBlockElement::GetElementGroups($ElementId, SORT=>"NAME");
    while($ar_group = $db_groups->Fetch()) {
        echo 'Все товары: <a href="/catalog/'. $ar_group["ID"] . '/">';
        echo $ar_group["NAME"];
        echo "</a>";
}
Вывести все разделы в которых находится элемент инфоблока
 
Цитата
Иван Чухрай написал:
Добрый день, Михаил! Отличное решение, Подскажите как вывести эти разделы в алфавитном порядке?
Наверное, самое просто и не монструозное решение:
Загнать названия, моим способом, в массив.
Потом этот массив отсортировать по алфавиту, способом
Код
sort($ВАШМАССИВ, SORT_STRING);
ну и вывести все foreach- ем
Серия 5: Верстка пользовательских форм и доски объявлений #В режиме стрима
 
Серия 5: Верстка пользовательских форм и доски объявлений #В режиме стрима

Скоро |  Наводим марафет в пользовательских формах: Регистрация, авторизация, восстановление пароля и в выводе доски объявлений. Проводиться будет в режиме прямой трансляции- с ответами на вопросы (если возникнут)
Сообщение приходит на почту пустым
 
Проверить это почтовое событие, может быть реально пустое.
Еще, был случай, письмо было не удачно сверстано- написано белым по белому
Перенос заказов с боевого на тестовый
 
Цитата
Димон Усатов написал:
Привет, Михаил можно ли сделать перенос заказов с боевого на тестовый, без переноса всей базы данных
Думаю, только механизмами обмена с 1С. В идеале, ею и обменяться- но можно и напрямую сайт-сайт, но придется осваивать модули импорта экспорта штатные.

Кроме заказов, нужно перенести и пользователей-покупателей.  
Многосайтовость битрикс на разных доменах
 
Цитата
Евген Ратников написал:
Михаил, добрый день!

Сложилась такая ситуация, есть 2 сайта, стоят они на 2-ух разных лицензиях (Одна "бизнес", а вторая "малый бизнес").
Заказчик хочет, чтобы сайт с редакции "малый бизнес" перенесли под одну админку к сайту с редакцией "бизнес", т.е. сделали многосайтовость. Оба сайта работают уже давно. Как это реализовать? Все мануалы и гайды, которые находили, рассчитаны либо на то, что всё создаётся с нуля, либо второй сайт создаётся новый в пару к рабочему. Подскажите, пожалуйста, что надо в такой ситуацие сделать и как нам быть?

P.S.
Сайты на разных доменах
Тут только в ручную переносить всю информации из одного в другой.
- Инфоблоки можно импортом экспортом.
- Пользователей через csv
- Заказы, попробовать черех xml (использовать модуль обмена с 1С)
- Файлы, просто в ручную.
bitrix bootstrap, bootstrap в 1С битрикс
 
Цитата
Dmitriy Naumenko написал:
Добрый день Михаил подскажите  Возможно-ли подключать bootstrap-4 только к определенным страницам?

Просто у меня острая необходимость работать на 4ом, а когда его подключаешь разлетается верстка проктически всех штатных компонентов  
Там, почти у всех компонентов вышли шаблоны под 4-ый бутстрап.

А так, подключать только на нужных можно так:
Код
В header.php

$curDir = $APPLICATION->GetCurDir();
if (($curDir == '/about/') || ($curDir == '/catalog/') ... И так далее ) {
    Asset::getInstance()->addCss(SITE_TEMPLATE_PATH . '/bootstrap-4.min.css');
}
Но способ так себе, в какой-то момент превратиться в неуправляемую хрень.
Лучше переверстать весь сайт на на 4-ый или остаться на 3-ем
Серия 2: Доска объявлений. Регистрация, авторизация, восстановление пароля пользователем
 
Серия 2: Доска объявлений. Регистрация, авторизация, восстановление пароля пользователем

Создаем доску объявлений внутри магазина. Реализуем основной функционал по регистрации, авторизации, восстановлению пароля и персональному разделу пользователя. Подготавливаем инфоблок для будущей доски объявлений.
Серия 1: Вступление
 
Цитата
Аркадий Белов написал:
Ребятушки, что то непонятно!
Установил по инструкции на  https://simplecloud.ru/

Но мои показатели далеки от протестированных в ролике:
Установил тариф за 200
1 ядро, 1 гиг и 5 гигов пямяти
Может там на симплКлауд уже и не используется ssd и проц попроще?
Разница впечатляет
1 гиг памяти маловато для веб окружения. Там рекомендуемое 2Гб при использовании редакций Малый Бизнес и Бизнес.
Memcached на сайте под управлением битрикс, при использовании Веб Окружения Битрикс
 
Memcached на сайте под управлением битрикс, при использовании Веб Окружения Битрикс

Если вам важна скорость отдачи сайта, у вашего сервера медленный диск для использования кеша на файлах, но зато быстрая оперативная память. Можно кешировать данные прямо в оперативную память с использование технологии memcahed. При условии использования веб окружения битрикс, включить этот режим достаточно легко. Расскажу как, так из Яндекса достаточно часто приходят на мой сайт с этим запросом (без понятия где Яндекс это нашел, все попадают на главную)- исправляю ситуацию
Серия 26: Развитие сайта и мобильного приложения
 
Цитата
Серега Кругов написал:
Михаил добрый день, подскажите пожалуйста каковы затраты были на сборку приложения ? Обязательно надо покупать  https://www.1c-bitrix.ru/products/mobile/#top  для того что бы приложение скомпилировали ?  
На сборку, только лицензия собственно.
Можете сделать самостоятельно на https://www.phonegap.com/getstarted/ но потребуются усилия и время.

PS Не учитываю затраты на учетки разработчика в Apple и Google - они, все таки, на год берутся. На любое количество приложений
Вопрос про готовые шаблоны и его перенос
 
Вообще, все также как и с чистым битриксом. Покупаете решение на определенный ключ и все.
Именно использование копий сайта, с этим решением, уже регламентируется лицензией битрикс.

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

Достаточно часто требуется настроить автоматический импорт каталогов из csv файлов, от поставщиков.
В 1С-Битрикс, уже  есть весь необходимый функционал. Требуется лишь настроить и обеспечить выполнение по расписанию.
Вывод Наименования товара с торговым предложением в корзине
 
Методом CCatalogSku::GetProductInfo - зная ID предложения, можно получить ID товара, к которому это SKU относится.
Ну а там, получить и название товара, зная его ID - методом CIBlockElement::GetByID

О методе CCatalogSku::GetProductInfo
https://dev.1c-bitrix.ru/api_help/catalog/classes/catalogsku/getproductinfo.php

О методе CIBlockElement::GetByID
https://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/getbyid.php
Умный фильтр на главной странице Битрикс
 
Цитата
Андрей Кременец написал:
А как сделать ajax фильтрацию на главной? Переход в каталог не нужен. Нужна сразу выдача по фильтру на главной странице.
Тут конечно по сложнее. Из быстрого, дабавьте catalog.section, под фильтр, не показывая сами товары (если не применен фильтр).
При применении фильтра, если параметр не пустой, показывайте товары.

Ну и все это, подружить с AJAX.
Информация о заказах и содержимое корзины текущего пользователя.
 
Цитата
Рустам Кулиев написал:
весь код отдает ошибку синтаксиса касательно


<?php if (!empty($arID)) {

Можете подсказать текст ошибки, на какой строчке, что ему не нравится? Сейчас проверить не где, а глазами вроде бы не вижу- куда могла закрасться
Если товар в корзине, поменять значение input на "В корзине"
 
В целом тоже самое.

Предположим есть ссылка:
Код
<a href="<?echo $arResult["ADD_URL"];?>" class="to_basket">В корзину</a>


Добавляем скрипт, который изменит содержимое ссылки по клику
Код
<script>
$(document).ready(function () {
    $('.to_basket').click(function () {
        $(this).addClass('in_basket'); //Добавляем class in_basket если хотим стилизовать
        $(this).text("В корзине");
    });
});
</script> 

Ну и проверка на наличие в корзине. Тут все также, через CSaleBasket::GetList.
Целиком примерно так
Код
<?
$dbBasketItems = CSaleBasket::GetList(
    array(
        "NAME" => "ASC",
        "ID" => "ASC"
    ),
    array(
        "FUSER_ID" => CSaleBasket::GetBasketUserID(),
        "LID" => SITE_ID,
        "PRODUCT_ID" => $arResult['ID'], //ID текущего товара
        "ORDER_ID" => "NULL",
        "DELAY" => "N" //Исключая отложенные
    ),
    false,
    false,
    array("PRODUCT_ID")
);
while ($arItemsBasket = $dbBasketItems->Fetch()) {
    $itInBasket = $arItemsBasket['PRODUCT_ID'];
}
?> 

<? if (isset($itInBasket)) { ?>
    <a href="<?echo $arResult["ADD_URL"];?>" class="to_basket in_basket">В корзине</a>
<?} else {?>
    <a href="<?echo $arResult["ADD_URL"];?>" class="to_basket">В корзину</a>
<?}?> 

<script>
$(document).ready(function () {
    $('.to_basket').click(function () {
        $(this).addClass('in_basket'); //Добавляем class in_basket если хотим стилизовать
        $(this).text("В корзине");
    });
});
</script> 
Информация о заказах и содержимое корзины текущего пользователя.
 
Информация о заказах и содержимое корзины текущего пользователя.

В процессе разработки сайта могут понадобиться рецепты приведенные ниже. Использовать можно как угодно и где угодно, я лишь привожу простые примеры. Применимость данных кусочков кода более обширна и зависит от вашей смекалки
Если товар в корзине, поменять значение input на "В корзине"
 
Если товар в корзине, поменять значение input на "В корзине"

Если Вам нужно поменять текст на кнопке, добавляющей товар в корзину, достаточно воспользоваться методом API "CSaleBasket::GetList - который возвращает результат выборки записей из корзины" и немножко js-а
Скрыть раздел, не деактивируя его на Битриксе
 
Цитата
Добрые Традиции написал:
Форум
Вот тут ответ
https://camouf.ru/forum/forum7/389-vyvod-razdelov-na-glanoy
Вам по сути, наоборот нужно сделать.
Серия 10: Добавление проекта в phpstorm, верстка основного скелета сайта
 
Цитата
Алексей Шарымов написал:
Здравствуйте Михаил.
Подскажите, пожалуйста, а как происходит работа над проектами битрикса к команде? Так же как у вас в видео через PHPStorm, или все же это как-то завязывается на системы контроля версий?
Заранее спасибо!
Тут уж, кто во что горазд. Но шторм поддерживает Git - думаю, большинство в нем и работают.
Серия 12: Вывод динамичной информации с помощью компонентов
 
Цитата
Алексей Шарымов написал:
Михаил, спасибо за Ваши труды, у Вас талант обучать!
Скажите, что содержится в папке local\components, копия из bitrix\components\bitrix? И соответственно, для чего нам local\components?
Заранее спасибо!
Да, туда можно складывать свои компоненты или доработанные битриксовые. Они не затронутся при обновлении
Серия 26: Развитие сайта и мобильного приложения
 
Цитата
Роман Нефедов написал:
Михаил, а заготовку "сайт-рыба" еще нигде не выкладывали? Вроде планировали на сайте или в маркетплейсе)
Пока нет, "сайт-рыба" в процессе доработок. Точнее сказать, проработки второй версии  :)
Первая, уже не выйдет в публичный доступ
Серия 4: Выводим доску объявлений на сайт
 
В видео, для получения свойств элемента (в форме и списке объявлений)
использую
CIBlockElement::GetList

Правильнее и оптимальнее, не проходиться по всем элементам. а использовать метод
CIBlockElement::GetProperty

C практической точки зрения, GetList проходится по всем объявлениям, всех пользователей- когда их станет очень много, могут начаться проблемы.
CIBlockElement::GetProperty - получает свойства четко указанного элемента.

PS: Издержки видеозаписи  :)  и параллельной попытки объяснять на пальцах.
Исправим (озвучу этот момент) в следующих видео
Серия 4: Выводим доску объявлений на сайт
 
Серия 4: Выводим доску объявлений на сайт

Рассматриваю самодельную форму добавления/редактирования объявления, на API Битрикс. Выводим объявления на сайт, в соотвествующий раздел. Базовые настройки ЧПУ и вывода инфоблока через комплексный компонент "каталог"
Выборочный вывод разделов на главной
 
Все таки опишу словами. С видео пока напряженка:
По сути, работа заключается в  использовании пользовательского поля для раздела инфоблока

- Создаем пользовательское поле раздела, типа список со значениями да/нет.
- Значение по умолчанию "нет"
- Пусть называется 'UF_MAIN_PAGE'


Вариант 1:
Выводим стандартный компонент section.list и в его параметрах указываем
Код
"SECTION_USER_FIELDS" => array(
    0 => "UF_MAIN_PAGE",
    1 => "",
),
В шаблоне выполняем проверку на значение этого поля (оно true/false (если да = 1, если нет пустое)) если указано да, выводим раздел с ссылкой
Код
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
$this->setFrameMode(true);
?>
<div class="main_page_links">
    <? foreach ($arResult["SECTIONS"] as $arSection) {
        if ($arSection['UF_MAIN_PAGE'] == true) {
            ?>
            <a href="<?= $arSection["SECTION_PAGE_URL"] ?>"><?= $arSection["NAME"] ?></a>
            <?
        }
    } ?>
</div>


Вариант 2:
Суть та же. Но через API - без использования компонента
Код
$arFilter = array(
    "IBLOCK_ID" => 9, // Сюда ID нужного инфоблока
    "UF_MAIN_PAGE" => true
);
$rsSect = CIBlockSection::GetList(array(),$arFilter,false,false);
while ($arSect = $rsSect->GetNext())
{
    echo $arSect['SECTION_PAGE_URL']; //ссылка
    echo $arSect['NAME']; //название раздела
}
Выборочный вывод разделов на главной
 
Словами это не описать, нудновато и не понятно получается.
Завтра сделаю видео, как раз есть такая же задачка на одном из проектов.
Выложу сюда.
Выборочный вывод разделов на главной
 
Цитата
Roman Selkin написал:
Михаил, день добрый. Подскажите пожалуйста, как можно вывести на главную страницу не все разделы каталога, а только выборочные? И как настроить свойство, какой раздел выводить на главной, а кокой не надо?
Просто создайте пользовательское свойства для раздела. Типа чекбокс.
Ну и на главной, просто через catalog.section.list или через API отфильтруйте их по этому признаку.

Что бы получить пользовательские поля, можно использовать фильтр:
Код
arSelect = Array("UF_WEBSITE", "UF_BOTTOM_TEXT")); //Выборочные свойства
или
Код
arSelect = Array("UF_*")); //Все свойства
Многосайтовость битрикс на разных доменах
 
Цитата
Vladislav Ralka написал:
Добрый день!

Благодарю за Ваши уроки.

Сейчас возникла задача создания нескольких разных инфо-сайтов на одном битриксе на разных доменах. И сделать
это нужно так, чтобы вынести ядро битрикса за пределы папок разных сайтов.

Прочитал комментарии, в 2014 году Вы писали, что так должно быть в идеале. Но пошерстив интернет, не нашел подобного решения.

Как реализовать данную задумку? Как поставить битрикс без привязки к сайту, а отдельно? Или нужно создавать пустой шаблонный сайт, а потом его оттуда вычищать?

Буду рад любой полезной подсказке, спасибо!
Да, самое простое: Поставить пустой сайт, прямо на IP (или поддомен какой) и на него прилинковать все остальные сайты.
Что бы не чистить, можно вообще решение не ставить. Прямо оборвите установку на этапе выбора решения- само ядро, на этом шаге, уже встанет.
Добавление в избранное или отложенные, на AJAX из карточки товара
 
Цитата
Константин Ильин написал:
Михаил, спасибо за ваши видео и уроки, помогают разобраться с битриксом.

Логика наверно должна быть такая, что через аякс передается ID товара, а уже внутри скрипта получаем все данные , в том числе и цену. Мне кажется этот код надо убирать с вашего сайта и написать без уязвимостей.

Не получилось именно купить такой, "хакнутый" товар. При оформлении заказа, все равно установилась правильная цена.
Но да, минусом это можно назвать.
Да и достаточно, в самом деле, передавать только ID товара в ссылке и скрипте.

Вообще, эта модель, избранное-через отложенные корзины, мне не очень нравится и уже готов компонент нормальных избранных.
Скоро опубликую, в блоге.  Допричесать нужно.
Пролог: Стрим о планах и сбор пожеланий.
 
Цитата
Константин Беда написал:
Михаил, привет, слегка не про 1с битрикс, а про битрикс24, там появился интернет магазин, в принципе настройки товаров и товарных предложений впихнули с 1с битрикс, но настроек крайне мало, подскажи, внутренними методами битрикс там можно поменять отображение товара в корзине? например, что бы цена отображалась за 1м2. но в корзину добавлялась кратно упаковке?
Как-то не рассматривал что там в Битрикс-24. Но, наверное, там нет доступа к шаблонам- только визуальный конструктор.
Использование WebP изображений в 1С-Битрикс (на Битрикс: Веб окружение)
 
Цитата
Сергей Стефанович написал:
это всё очень круто. но ios остается в пролете
Можно попробовать webpjs подрубить. Но как по мне, шкурка выделки не стоит- больше запросов лишних, чем резону от экономии на картинках.
Пусть Яблоки смотрят на простые jpeg-и  :)
Главное Google Page Speed доволен, остальное суета сует)
Использование WebP изображений в 1С-Битрикс (на Битрикс: Веб окружение)
 
Кому интересно использовать webp, на macOS
Например, оптимизация сайта (разрабатываемого локально) до запуска
Инструкция по установке
http://macappstore.org/webp/
Использование WebP изображений в 1С-Битрикс (на Битрикс: Веб окружение)
 
Использование WebP изображений в 1С-Битрикс (на Битрикс: Веб окружение)

WebP это современный формат сжатия изображений, который позволяет, при правильных настройках и уровнях сжатий, уменьшить размер файлов изображений. Развивается при поддержке Google.
В этой заметке, расскажу как применить данный формат на сайте, под управлением Битрикс.
Пролог: Стрим о планах и сбор пожеланий.
 
Цитата
Alexey Guerassimov написал:
Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0
Собственно, в ошибке и ответ. Нужен jquery выше чем 1.9.1 но ниже чем 4.0
У вас наверное, какой-то старый подключен
Хостинг панель BrainyCp: оптимизация под 1С-битрикс
 
Цитата
Yuri Shishnin написал:
Доброго времени!
По Вашему примеру установил панель BrainyCp на VPS сервер и перенес сайт на Битрикс. Сайт работает, производительность радует.
В своем видео Вы просто создаете сайт на поддомене, и он открывается по адресу поддомена.  Делаю так же как Вы. Создаю новый сайт, указываю адрес поддомена. Сайт не открывается - в браузере сообщения об ошибке  -  Не удалось найти IP-адрес сервера .

Как думаете, почему в моем случае вновь созданный сайт на поддомене не работает?
А "А" запись с поддоменом не забыли направить на IP сервера?
Многосайтовость битрикс на разных доменах
 
Цитата
Алексей Сергушкин написал:
Здравствуйте, подскажите пожалуйта, что может быть.
Произвели настройки согласно видео.
При этом второй сайт будто не распаковался нужным образом, teplokont.ru  в чем может быть проблема?
Так не подсказать, нужно разбираться на месте. Судя по всему, какое-то Аспро решение - нужно разбираться в нем. Быть может, не создались инфоблоки и включаемые области.
Заполнение габаритов товара, после обмена с 1С, из свойств элемента инфоблока.
 
Заполнение габаритов товара, после обмена с 1С, из свойств элемента инфоблока.

Если Ваш интернет-магазин интегрирован с 1С, скорее всего столкнулись с такой проблемой: 1С не умеет выгружать параметры товара: Вес, Ширина, Высота, Глубина.
Структура раздела, Картинки к разделам
 
Цитата
Виталик Лысый написал:
Не знаю какую тему форума выбрать, но напишу сдесь. Здравствуйте. Была необходимость сделать разделы к прайсу так как накопилось очень много элементов. На странице вывел стандартный компонент  структура разделов  В настройках указали вывод картинок плиткой, вот что получаеться  http://prntscr.com/n7c9bo   Картиночки очень манюсенькие. Как сделать, что бы они побольше стали (увеличить) и сделать допустим не в 2 ряда как показано на скрине, а допустим в в 3 или 4 ряда ? Ну чтоб коректно они отображались, типа вот так  http://prntscr.com/n7cbuy   Будте так добры, помогите пожайлуста.  

Это просто шаблон, скопируйте его в шаблон своего сайта и переверстайте. Там по сути, достаточно только стили подправить.
В общем, просто, элементарная верстка- ни чего сверх сложного не надо делать
Серия 19: Добавление в корзину, избранное и сравнение на AJAX.
 
Цитата
Стас Ларин написал:
/local/ajax/list_compare.php

Вот тут /local/ajax/list_compare.php тот же самый шаблон сравнения, что и в шапке сайта?
Нестандартный фильтр, Как реализовать на Битрикс
 
Цитата
Сергей Коркунов написал:
ДВС.

Как реализовать аналогичный двух-шаговый фильтр как на сайте  autobaki.ru
Т.е. 1 шаг: выбор Марки авто, 2 шаг: Модель и Характеристики
Причем с AJAX-ом, как в образце.  

Такое, только самостоятельно писать. Думаю, не обойдется без создания самописного, комплексного компонента.
За основу можно взять фильтр (не умный, а там есть еще обычный на селектах) и топ элементов раздела.

Ну и плотненько поработать.
Хостинг панель BrainyCp: оптимизация под 1С-битрикс
 
Цитата
Алексей Беспалов написал:
А сейчас вы на каком решении для своих сайтов остановились?

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

Сейчас на Brainy - так и работает, конкретно вот этот сайт.
Установка битрикс на компьютер с Windows
 
Цитата
Виталик Л. пишет:
Здравствуйте. В четвёртый раз пытаюсь установить сам Битрикс , и в четвёртый раз не могу установить. при распоковке дистрибутива переходит на папку /index.php и выдаёт Parse error: syntax error, unexpected '[' in /home/bitrix/www/bitrix/modules/main/lib/loader.php on line 29
Установку тут качал, у вас.

Прямо в заметку, в самый низ добавил новое видео. Там показал как установить свежее веб-окружение на голую систему.

Ошибка у Вас, связана с php 7. В старой машине, файл установки скачивает новую версию самого себя, а она не совместима с php 5.6 (или там, даже 5.4). В общем, информация устарела.
Хостинг панель BrainyCp: оптимизация под 1С-битрикс
 
Хостинг панель BrainyCp: оптимизация под 1С-битрикс

В этой видео-заметке расскажу как установить и оптимизировать панель управления сервером BrainyCp для использования в связке с 1С-Битрикс. Проведем базовые настройки и расскажу о некоторых полезных фишках.
Пролог: Стрим о планах и сбор пожеланий.
 
Пролог: Стрим о планах и сбор пожеланий.

Продолжение или скорее начало разработки сложного интернет-магазина и мобильного приложения на 1С-Битрикс. В этой серии-стриме: рассказываю о планах, собираю пожелания, запускаем копию сайта для начала разработки.
Данные о заказе текущего пользователя
 
Цитата
nikolaevevge написал:
Михаил, если что обсуждение темы на официальном форуме битрикс   https://dev.1c-bitrix.ru/community/forums/messages/forum6/topic119399/message58897­ ­7/  

Решил вопрос с применением несколько другого функционала на D7, а именно:

$order = \Bitrix\Sale\Order::load(12);
foreach ($order->getBasket()->getBasketItems() as $basketItem ) {
 var_dump($basketItem->getField('NAME'));// Имя
 var_dump($basketItem->getQuantity());// Количество
 var_dump($basketItem->getId());// Ид(фиг знает чего)
 var_dump($basketItem->getProductId());// Ид товара или тп
}
Да, заметка староватая. Чуть позже дополню ее с D7 - там можно еще эффективнее решить.
Данные о заказе текущего пользователя
 
Данные о заказе текущего пользователя

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

Кроме создания сайтов, я так же веду блог с заметками о вебразработке, записываю бесплатные видеоуроки и содержу форум, на котором можно задавать вопросы и просто общаться. Заметки, преимущественно - это короткие или подробные рецепты, по реализации часто требуемого функционала- в рамках разработки сайтов на 1С-Битрикс

Показать еще