Живая лента

a13z2005@yandex.ru -> Всем
8 ноября 23:57
Извиняюсь за спам)
ни кто с тако проблемой не сталкивался?! - написать корзину на редакции Старт / Стандарт...
Может есть идеи или готовое решение у кого?!)
спасибо!
Михаил Базаров
Не подходит?
https://marketplace.1c-bitrix.ru/solut...startcart/
Там еще штуки 3-4 подобных решений.
1С-Битрикс - Корзина StartСart для редакции “Старт”.
модули для битрикс
a13z2005@yandex.ru
Михаил Базаров, на маркете все платные) для себя хотел сделать

tsaraid -> Всем
вчера, 1:46
Всем здравствуйте. Подскажите пожалуйста новичку, где можно посмотреть, почитать о создании компонента форм для добавления (редактирования) элемента в инфоблок. Построение формы по свойствам инфоблока. Здесь на сайте смотрел урок, но нужен именно компонент. Спасибо
bvv2004@list.ru
29 октября 15:53
Сообщение форума
Проблемы работы раздела Каталог лицензия Битрикс: Старт
На картинках видно, что два разных товара, из разных разделов имеют одинаковую вкладку Дополнительно, вкладка удобная ей можно пользоваться.
Но в нашем случае невозможно. Файл, где хранится содержимое вкладки дополнительно - /product/index/_dops.php , один на все товары каталога.
Вводишь текст в одну вкладку, и он такой же текст появляется и в другой вкладке совсем другого товара.
Подскажите, что не так работает. Где может быть ошибка.
Картинки прицепить не удалось, программа отвечает, что При сохранении файла произошла ошибка.
А вставить в данный текст ограничение по размеру не позволяет.
Поэтому, привожу ссылки на показ проблемы:

http://novateh74.ru/product/tekhnolog...obrabotki/

http://novateh74.ru/product/elektroob...rotyagach/

С уважением,
Валентин Баранчук,
г. Челябинск
ООО Новатех
bvv2004@list.ru
Михаил день добрый!
Огромное спасибо за ответ.
Об этом (выкинуть Аспро) уже думаю.
Но пока переходный период.
Мне это "Дополнительно" нужно, и нужно к каждому Товару свое, т. к. товар - оборудование, технически сложное, и у него многослойное описание.
Но, не совсем понял Вашу рекомендацию.
Подскажите пожалуйста как в Каталоге товаров, добавить на Товар ещё одну вкладку ( в моем случае это вкладка "Дополнительно" ), чтобы она была привязана к товару ?

С уважением,
Валентин Баранчук,
г. Челябинск
ООО Новатех
Это нравится:0Да/0Нет Ещё
Михаил Базаров -> Всем
4 ноября 9:34
Ускорение работы сайта на 1С-Битрикс
Файл использованный в заметке
https://camouf.ru/blog-note/9223/index...de_areas=Y
Фото:
Файлы:
blog_usk_bx.txt (5.28 КБ)
Михаил Базаров -> Всем
25 марта 10:50
Форма авторизации с использованием vue js для Битрикс

Готовый шаблон всплывающей формы авторизации.
Просто распаковываем в шаблон своего сайта и выводим в нужной части сайта компонент
system.auth.form и применить этот шаблон (auth)

В основном шаблоне сайта, подключите vue из ядра
\Bitrix\Main\UI\Extension::load("ui.vue");

На его месте появится кнопка, вызывающая шаблон авторизации.
Стилей по минимуму, подгоняйте под себя.

Так же внутри файл для отправки формы (index.php)- результат успешного или не успешного входа.
Этот файл обязательно удалите, или переместите в папку /personal/ он просто для примера (или любую другую папку - в форме подправьте путь)



Фото:
Файлы:
auth.zip (5.19 КБ)
Валерий
При вставке <?Asset::getInstance()->addJs('/bitrix/js/ui/vue.min.js');?>
У меня вообще ошибка, на скрине предоставил.

Видимо у меня вообще система полетела? И что не подскажите?

Вообщем полная жесть на ночь глядя(((
Файлы:
0 Б
Михаил Базаров
Перед этим подключением, включите
use Bitrix\Main\Page\Asset;
Валерий
Эх видимо не судьба((

Та же ошибка.Uncaught ReferenceError: Vue is not defined

Vue.component("modal",{template:"#auth_template"});BX.Vue.create({el:"#auth_form",data:{showModal:false}});
Михаил Базаров -> Всем
26 июня 10:47
При клике на маленькую фотографию меняется большая.

Мини скриптик, может кому пригодится для каталога товаров или новостей при использовании дополнительных картинок (обычно MORE_PHOTO).
Вместо штатного, монструозного магнифера

PHP
<div class="more_photos">
     <a href="<? echo $arResult['DETAIL_PICTURE']['SRC'] ?>" class="current">
           <img src="<? echo $arResult['DETAIL_PICTURE']['SRC'] ?>" alt="<? echo $arResult['NAME'] ?>">
    </a>
    <?
    if (count($arResult["MORE_PHOTO"]) > 0) {
       foreach ($arResult["MORE_PHOTO"] as $PHOTO) {
       $renderImage = CFile::ResizeImageGet($PHOTO, Array("width" => 200, "height" => 200), BX_RESIZE_IMAGE_EXACT, false);
   ?>
      <a href="<?= $PHOTO["SRC"]; ?>" alt="<? echo $arResult['NAME'] ?>">
               <img src="<?= $PHOTO["SRC"]; ?>" alt="<? echo $arResult['NAME'] ?>">
      </a>
      <? }
   } ?>
</div>
JS
$(".more_photos").on("click", "a", function () {
     $(this).addClass("current").siblings().removeClass("current")
     $(".main_photo img").attr("src", $(this).prop("href"))
     return false;
});
CSS
Тут уж сами под свой дизайн. Например, как на картинке
.more_photos {
      float: left;
     width: 100px;
}

 .more_photos a {
     display: block;
     margin-bottom: 10px;
     text-decoration: none;
     width: 100%;
     height: 100px;
     border: 3px #fff solid;
     box-shadow: 0px 0px 1px #ccc;
     transition: all .25s ease-out;
}

   .more_photos a:hover {
     border: 3px #f6f6f6 solid;
}
   .more_photos a.current {
     border: 3px #D68189 solid;
}

.main_photo {
     float: right;
     width: calc(100% - 110px);
}

 .main_photo img {
     width: 100%;
     transition: all .25s ease-out;
}

PS: само собой, на сайте должен быть подключен jquery
Фото:
Валерий
Михаил Базаров, нет все указанно. Даже попробовал создав другое свойство.
<div class="more_photos">
<a href="<? echo $arResult['DETAIL_PICTURE']['SRC'] ?>" class="current">
  <img src="<? echo $arResult['DETAIL_PICTURE']['SRC'] ?>" alt="<? echo $arResult['NAME'] ?>">
</a>
<?
if (count($arResult["PHOTOS"]) > 0) {
  foreach ($arResult["PHOTOS"] as $PHOTO) {
  $renderImage = CFile::ResizeImageGet($PHOTO, Array("width" => 200, "height" => 200), BX_RESIZE_IMAGE_EXACT, false);
  ?>
 <a href="<?= $PHOTO["SRC"]; ?>" alt="<? echo $arResult['NAME'] ?>">
  <img src="<?= $PHOTO["SRC"]; ?>" alt="<? echo $arResult['NAME'] ?>">
 </a>
 <? }
  } ?>
</div>
Файлы:
0 Б
0 Б
0 Б
Михаил Базаров
Тогда, странно. Подсказать не могу, видимо: какая-то мелочь упущена. Но какая не понятно, нужно в живую смотреть
Валерий
Михаил Базаров, каким то образом все таки разобрался с отображением. Чтобы отображались фотографии с свойства MORE_PHOTO, но теперь нет самой большой картинки, которая должна меняться.

Ваш код вставил:
<div class="more_photos">
     <a href="<? echo $arResult['DETAIL_PICTURE']['SRC'] ?>" class="current">
           <img src="<? echo $arResult['DETAIL_PICTURE']['SRC'] ?>" alt="<? echo $arResult['NAME'] ?>">
    </a>
    <?
    if (count($arResult["MORE_PHOTO"]) > 0) {
       foreach ($arResult["MORE_PHOTO"] as $PHOTO) {
       $renderImage = CFile::ResizeImageGet($PHOTO, Array("width" => 200, "height" => 200), BX_RESIZE_IMAGE_EXACT, false);
   ?>
      <a href="<?= $PHOTO["SRC"]; ?>" alt="<? echo $arResult['NAME'] ?>">
               <img src="<?= $PHOTO["SRC"]; ?>" alt="<? echo $arResult['NAME'] ?>">
      </a>
      <? }
   } ?>
</div>

Но большой картинки все равно нет.
Файлы:
0 Б
Андрей Михайлов -> Всем
26 октября 0:21
Михайл скажите плз, у вас видео судя по всему оч старое? #2 по приложениям... пытаюсь вставить шапку по нему текст и того ... совсем не хочет( даже просто текст... может что поменялось?((
Михаил Базаров
Не очень понял вопроса. Если по мобильному приложение - все должно быть актуальным, там ни чего особо не поменялось.
a13z2005@yandex.ru -> Всем
15 октября 20:01
Всем привет, пишу каталог на редакции Стандарт.
Подскажите кто сталкивался с реализацией корзины, с чего начать и т.д.
Спасибо
Михаил Базаров -> Всем
14 мая 2018 9:03
Установить вебсервер на Ubuntu 18 LTS, оптимизированный под битрикс.

Выполняем обновление:
apt-get update
apt-get upgrade

Перезагружаем сервак: reboot

Данный вебсервер использую только для локальной разработки. Собственно, запущен на моем рабочем ноутбуке
под Кubuntu 18LTS. Что бы работать с разрабатываемыми сайтами быстро и в отсутствии интернета.
Для продакшена, нужно настраивать более тонко, хотя и так заработает.

Ставим апач:
sudo apt-get install apache2

Добавляем апач в автозагрузку:
sudo systemctl enable apache2

Ставим PHP 7.2.5:
sudo apt-get install php7.2-cli

Проверяем что он встал:
php -v (покажет версию php)

Перезапускаем апач:
sudo systemctl restart apache2

Ставим базу данных (Mysql 5.7):
sudo apt install mysql-server
Сконфигурировать Mysql, все команды выполняем поочереди
sudo mkdir /var/run/mysqld; sudo chown mysql /var/run/mysqld
sudo mysqld_safe --skip-grant-tables&
sudo mysql --user=root mysql

Устанавливаем пароль пользователя root базы данных
mysql> update user set authentication_string=PASSWORD('PASSWORD') where user='root';
flush privileges;

Установка phpmyadmin
sudo apt-get install phpmyadmin php-mbstring php-gettext
В процессе попросит выбрать сервер (apache2) и пароль root базы данных

Все, базовый сервер готов. Можете поднастроить конфигурацию php
в файле /etc/php/7.2/cli/php.ini
Но я передпочитаю доводить под конкретный сайт, в файле виртуального хоста.


И конфигурацию базы данных
в файле /etc/mysql/mysql.conf.d/mysqld.cnf
Свой, заточенный под битрикс, приложу в архиве. Но очень внимательно, зависит от объема
оперативной памяти на сервере. Должен нормально запуститься если больше 4-х.
Если меньше, подкрутите этот конфиг (параметры выедающие память) под себя.


СОЗДАНИЕ ВИРТУАЛЬНОГО ХОСТА

Создать папку для сайта
mkdir /var/www/site.ru/public_html

Создать запись виртуального хоста
nano /etc/apache2/sites-available/site.ru.conf
с содержимым (повторюсь, конфиг php подгоняю под конкретный сайт.
В php.ini у меня все по умолчанию). Данное содержимое под Битрикс Бизнес
<VirtualHost *:80>
ServerName site.ru
ServerAlias site.ru
ServerAdmin webmaster@localhost
DocumentRoot /var/www/site.ru/public_html/

<Directory /var/www/site.ru/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php index.html index.htm

php_admin_value short_open_tag On
php_admin_value mbstring.func_overload 2
php_admin_value mbstring.internal_encoding UTF-8
php_admin_value date.timezone Europe/Moscow
php_admin_value opcache.revalidate_freq 0
php_admin_value opcache.max_accelerated_files 100000
php_admin_value display_errors On
php_admin_value max_input_vars 10000
php_admin_value upload_max_filesize 8M
Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Добавить сайт (включить)
sudo a2ensite site.ru

Перезагрузить апач (любая из трех, рекомендуется последняя команда)
sudo systemctl restart apache2

Создаем пользователя базы данных с полными привелегиями (так как root заблокирован и пусть таким остается). Команды выполняем поочереди
sudo mysql --user=root mysql
CREATE USER 'USER_NAME'@'localhost' IDENTIFIED BY 'PASSWORD';
GRANT ALL PRIVILEGES ON * . * TO 'USER_NAME'@'localhost';
FLUSH PRIVILEGES;

Все. Простой веб сервер готов. Использую на локальном компьютере для разработки.
Для продакшена нужно настраивать параметры более тонко, особенно в плане
безопасности (директории для хранения сессий итд запреты/разрешения).
Плюс есть резон установить nginx и memcache (если позволяет оперативка)

Но об этом позже.

Видео инструкция, по данной заметке
https://www.youtube.com/watch?v=W-2mXox4ukU
Фото:
Файлы:
mysqld.cnf (3.16 КБ)
Локальный вебсервер в подсистеме Linux в Windows 10
Делается по заметке https://camouf.ru/club/user/1/blog/144/ Настраиваем локальный веб-сервер, для разработки сайтов. Осваиваем подсистему Linux в Windows 10 ...
Михаил Базаров
Скрипт для добавления виртуального хоста
#!/bin/bash
#************************************************#
# Скрипт создает новый сайт, вклюает его в       #
#************************************************#
# Основа взята тут http://ubuntu-favorite-os.blogspot.co...u1010.html

echo -e "33[1mВведите название проекта (Например example.com):33[0m";
read NAME_OF_PROJECT

#создаем папки проекта
sudo mkdir /home/camouf/SITES/$NAME_OF_PROJECT

#даем полные права (только для локальной разработки- не пускайте в инет)
sudo chmod -R 777 /home/camouf/SITES/$NAME_OF_PROJECT/

#добавляем правила в конфигурационый файл апача
add_to_apache_conf="
<VirtualHost *:80>
ServerName ${NAME_OF_PROJECT}
ServerAdmin webmaster@localhost
DocumentRoot /home/camouf/SITES/${NAME_OF_PROJECT}/
<Directory /home/camouf/SITES/${NAME_OF_PROJECT}/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php index.html index.htm

php_admin_value short_open_tag On
php_admin_value mbstring.func_overload 2
php_admin_value mbstring.internal_encoding UTF-8
php_admin_value date.timezone Europe/Moscow
php_admin_value opcache.revalidate_freq 0
php_admin_value opcache.max_accelerated_files 100000
php_admin_value display_errors On
php_admin_value max_input_vars 10000
php_admin_value upload_max_filesize 8M
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>"

#добавляем новый хост
#echo "$add_to_hosts_conf" >> /etc/hosts
touch /etc/apache2/sites-available/${NAME_OF_PROJECT}.conf
echo "$add_to_apache_conf" >> /etc/apache2/sites-available/${NAME_OF_PROJECT}.conf

#включаем конфигурацию сайта
sudo a2ensite ${NAME_OF_PROJECT}

#перезапускаем апач
sudo systemctl restart apache2
chmod -R 777 /home/camouf/SITES/${NAME_OF_PROJECT}

echo "Сайт готов"
Сергей Стефанович
Михаил Базаров, а чего ты не пробуешь Debian 10 + LEMP ?
Михаил Базаров
Сергей Стефанович, а даже не знаю. Без разницы, как по мне
valia9889@gmail.com Всем
17 сентября 16:12
Добавлены 1 фото в альбом: Новый альбом
Михаил Базаров -> Всем
7 сентября 12:28
Свойство: привязка к Яндекс:Картам - вывести из нескольких элементов на одну карту

Подробнее:
https://camouf.ru/blog-note/7803/
a13z2005@yandex.ru -> Всем
28 августа 22:38
Привет всем!
у кого есть старые шаблоны корзины?!
и подскажите пожалуйста как в списке товаров (в корзине) вывести наименование раздела товара?
Михаил Базаров
Старая корзина во вложении.
Вывести раздел можно вот так: https://camouf.ru/blog-note/6093/
В корзине можно получить ID элемента

Учтите что у SKU это и есть ID товара, а у простого товара нужно получить его по PRODUCT_ID
Файлы:
sale.basket.basket.7z (112.55 КБ)
Михаил Базаров
Хотя у SKU нет разделов- так что все равно, нужно получать ID элемента по связанному SKU или PRODUCT_ID.
vitstar -> Всем
20 августа 15:58
Всем привет!

Как вывести элементы подраздела если родительский раздел был изменен?

Компонент catalog:section

У родительского раздела не выводятся товары из под разделов.
Если эти подразделы уже до этого существовали и были переключены в этот родительский раздел.
Но если пересохранить эти товары (Просто зайти в товар и сохранить), то данный товар выводится в родительском разделе.
Так же в родительском разделе выводятся товары которые были созданный уже в подразделе родительского раздела.
Например у нас есть 3 раздела. Раздел одежда, штаны и кофты. Одежда и штаны находятся на одном уровне, а кофты являются подразделом раздела "Одежда". Товары из раздела кофты выводятся в разделе одежды (Так как раздел кофты подраздел). В админке меняем родительский раздел разделу "Штаны" на "Одежду" (Теперь раздел штаны подраздел "Одежды"). Товары из раздела штаны не выводятся. Почему? Но если мы пересохраним какой либо товар из раздела "Штаны", то он выведится в разделе "Одежда". Как сделать что бы автоматически выводились товары?

Михаил Базаров
А битрикс чистый? Или какое-то решение из маркетплейса?
По идее, глюк какой-то. Так быть не должно
Андрей Александрович -> Всем
19 августа 14:39
Добрый день, как получить доп. свойство самого инфоблока?
Михаил Базаров
Не понял вопроса
Михаил Базаров -> Всем
11 августа 14:19
Битрикс, удалить всех пользователей через API

Если хотите удалить всех зарегистрированных пользователей из Битрикс.
Делать это в списке пользователей, достаточно ресурсоемко и рутинно (если их реально много, например 10 000).
Вывести всех сразу и отметить чекбокс "выбрать всех" - скорее всего не получится, придется выводить по 1000 или меньше.

Что бы "грохнуть всех разом" - можно воспользоваться API
<?
$filter = Array
(
  "GROUPS_ID"=> Array(5))
);
$rsUsers = CUser::GetList(($by="id"), ($order="desc"), $filter);
while($arItem = $rsUsers->GetNext())
{
        if (CUser::Delete($arItem['ID'])) echo "Пользователь " .$arItem['ID']. " удален";
}
?>

Здесь мы:
-  Выбрали всех пользователей из группы с ID=5 (обычно "Зарегистрированные пользователи")
-  Методом User::GetLis - получили всю информацию о них (но, по сути, нам нужен только ID пользователя)
-  Методом CUser::Delete - удалил полученного пользователя (перебрав всех)

В массиве arItem хранится вся информация о пользователях. Комбинируя ее по разному, можно удалить только определенных пользователей.
Например: тех кто не заходил на сайт больше года.

Учтите, что если у пользователя есть заказ в магазине- он не удалится. Сначала нужно заархивировать все заказы или заказы до определенной даты.
Михаил Базаров -> Всем
6 августа 20:50
Получить группу текущего авторизованного пользователя в битрикс

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

Сначала, методом CUser::GetUserGroup - получаем ID всех групп, к которым относится пользователь.
Затем, раздербаниваем массив foreach-ем и получаем названия всех групп по их ID
<?
global $USER;
   $curUserId = $USER->GetID(); // ID текущего пользователя
   $arGroups = CUser::GetUserGroup($curUserId); // ID групп текущего пользователя
   foreach ($arGroups as $curUserGroups) {
    $rsGroup = CGroup::GetByID($curUserGroups); // Получаем названия всех групп
    $arGroup = $rsGroup->Fetch();
    if ($arGroup['ID'] !== '2') {
            echo $arGroup['NAME'];  // И выводим
     }
   }
?>
В моем примере, я еще выполняю проверку ( if ($arGroup['ID'] !== '2') ). Не вывожу группу "Все пользователи" - у меня ее ID=2
По сути, все пользователи состоят в этой группе- выводить ее ни к чему




Фото:
Михаил Базаров -> Всем
6 августа 18:21
Что бы преобразовать php массив в js код, например передать данные о товаре из template.php в script.js шаблона. Можно использовать
CUtil::PhpToJSObject

Пример

В template.php
$jsParams = array(
         'PRODUCT' => array(
                  'PREVIEW_TEXT' => $arResult['~PREVIEW_TEXT'],
          ),
);

<script>
   var <?=$obName?> =
   new JCCatalogElement(<?=CUtil::PhpToJSObject($jsParams, false, true)?>);
</script>

Теперь в script.js будет доступно описание анонса, можно создать переменную для более гибкого управления
this.product.text = this.params.PRODUCT.PREVIEW_TEXT;

a13z2005@yandex.ru -> Всем
27 июля 0:01
Здравствуйте, подскажите пожалуйста как в catalog.comments отключить toolbar и табы, чтобы осталось только поле ввода текста ( скрин https://yadi.sk/i/fBxLxC2RHvkBwg ).

может есть у кого упрощенная версия этого компонента?!

Спасибо.
Михаил Базаров
Там все лихо закручено. Это компонент состоит из 3-х разрозненных.
Проще всего, попрятать не нужные части в display:none
a13z2005@yandex.ru -> Всем
21 июля 21:54
Всем привет!)
Подскажите пожалуйста как реализовать сгруппированный вывод товаров по разделам и подразделам
в компоненте catalog.section
Пример - см.скрин  https://yadi.sk/i/1GuTJxWFMu9dAw

Михаил Базаров
Посмотрите. Если правильно понял- то что нужно
https://camouf.ru/club/user/1/blog/202/
Михаил Базаров -> Всем
29 мая 10:27
Если нужно что-то сделать при появлении клавиатуры в мобильном приложении на Битрикс.

При вызове клавиатуры, внутри приложения страница сжимается по высоте. То есть, клавиатура накладывается не поверх контент, а именно уменьшает высоту контента, на свою высоту.

Кстати, это актуально и для обычных сайтов, в мобильном браузере

Частный случай:
- В приложении имеется закрепленная снизу панель, с быстрыми ссылками.
- При вызове клавиатуры (например написать комментарий) эта панель также поднимается над клавиатурой, перекрывая пол экрана.
- На iOS еще и ведет себя не адекватно, оказываясь в центре и ломая верстку
- Решение: прятать эту панель в display:none при появлении клавиатуры

Для этого блока добавляем id="keyborad_show", понятное дело, id можно любой.
<div id="keyborad_show" class="bottom_fixed">
       <a href="/mobileapp/dynamic/audio"><span class="fa fa-file-audio-o"></span> Аудио</a>
       <a href="/mobileapp/dynamic/video/"><span class="fa fa-file-video-o"></span> Видео</a>
       <a href="/mobileapp/dynamic/trand/"><span class="fa fa-fire"></span> Тренд</a>
</div>

Дальше все просто.
Включаем слежение за клавиатурой
BXMobileApp.UI.Page.captureKeyboardEvents(true);

На событие ее появления, просто добавляем класс к нужному элементу
var keyboard = document.getElementById('keyborad_show');
BX.addCustomEvent("onKeyboardDidShow", function(){ // Событие появления клавиатуры
       $(keyboard).addClass('dn_bf');
});
Ну и в css добавляем
.dn_bf {
      display: none;
}


Анатолий Теорский -> Всем
7 мая 8:34
А можно как нибудь в оформлении заказа принудительно всегда ( не зависимо от профиля покупателя ) выбирать способ оплаты и службу доставки которые мы поставим ? Проблема заключается в открытии всех блоков, так как у некоторых платежных систем и служб доставки есть ограничения, то когда грузится оформление заказа, может загрузиться одновременно две не совместимые комбинации ( платежка + служба доставки ) и тогда служба доставки не отображается. Либо может есть способ корректно всегда открыть все блоки в оформлении заказа? ( метод который описал Михаил - не работает ), а другие которые описаны на форумах - приводят к неотображению способов доставки ( если есть ограничения )
Михаил Базаров
Тут, только делать свою форму оформления.
Если правильно понял вопрос, нужно принудительно выбирать и службы оплаты/доставки.
Надо скидывать, все ранее выбранные пользователем (что не позволит штатный компонент) и выбирать заранее "утвержденные".
Михаил Базаров -> Всем
4 мая 10:18
Где MAMP Хранит базы данных на macOS

MAMP Pro до версии 5: Хранит базы данных в директории своей установки
/Applications/MAMP/db

MAMP Pro версии 5: Хранит базы в
/Libraries/Application Support/appsolute/MAMP PRO/db
Михаил Базаров -> Всем
17 февраля 2018 12:13
Разные свойства у разделов одного инфоблока  в Битрикс
Как создать разные свойства, в форме создания элемента, внутри одного инфоблока битрикс.

битрикс, свойства битрикс, элементы битрикс, разделы битрикс

https://www.youtube.com/watch?v=1KP1cWM26tU
Разные свойства у разделов одного инфоблока в Битрикс
Как создать разные свойства, в форме создания элемента, внутри одного инфоблока битрикс.
<Без имени>
Для небольшого ассортимента это хорошее решение. А если выгрузка из 1С и тысячи позиций и тысячи свойств, есть ли варианты автоматизировать процесс?
Михаил Базаров -> Всем
20 марта 10:57
bitrix.sale.order.ajax раскрыть блоки доставки и оплаты.

Если в компоненте одношагового оформления заказа, нужно раскрыть блоки доставки и оплаты:
В самый низ template.php добавляем
$(window).on('ready', function(event){
    BX.Sale.OrderAjaxComponent.editDeliveryBlock(true);
    BX.Sale.OrderAjaxComponent.editPaySystemBlock(true);
});
Для блоков оплаты и доставки добавляем селектор bx-selected

Тоже самое, можно делать со всеми блоками:
BX.Sale.OrderAjaxComponent.editActiveBasketBlock(true);
BX.Sale.OrderAjaxComponent.editActiveRegionBlock(true);
BX.Sale.OrderAjaxComponent.this.editActiveDeliveryBlock(true);
BX.Sale.OrderAjaxComponent.editActivePaySystemBlock(true);
BX.Sale.OrderAjaxComponent.editActivePickUpBlock(true);
BX.Sale.OrderAjaxComponent.editActivePropsBlock(true);

И можно убрать кнопки "Далее - Назад" в файле order_ajax.js

Для доставки: найти и закомментировать
this.getBlockFooter(deliveryContent);
Для оплаты:
this.getBlockFooter(paySystemContent);

Вячеслав
Сделал все по инструкции, но не сработало...
Файлы:
0 Б
Михаил Базаров -> Всем
8 февраля 16:38
Заготовка для разработки сайта на битрикс.
В архиве:
- Папка local с базовым шаблоном и необходимыми файлами (инклюды, аяксы итд)
- Структура персонального раздела
- Структура типовых статичных страниц

Использовано в видео:
https://www.youtube.com/watch?v=vn1OJG...e=youtu.be
Файлы:
fish_site.zip (3.69 МБ)
2) Разработка простого сайта с магазином на #Битрикс / В режиме стримов
Мой сайт: https://camouf.ru Стрим #2: Чистим битрикс и готовим структуру сайта Что будем делать и как будут проходить трансляции. Заготовка шаблонов и структ...
<Без имени>
Вот это прям громадное, спасибо.
Михаил Базаров -> Всем
21 марта 18:08
Старый-новый шаблон оформления заказа.
Там немножко не аккуратно внутри, делал по быстрому, но думаю кому надо причешете.
Основан на старом шаблоне, верстается легко.
Фото:
Файлы:
older.zip (135.99 КБ)
Михаил Базаров -> Всем
20 марта 21:09
Figma заготовки для мобильного приложения

Это, готовый Figma макет для всех размеров загрузочного экрана. Нужны для использования в форме отправки на компиляцию - пригодятся для формы отправки на компиляцию мобильного приложения.

https://www.figma.com/file/CoWZtnT9VlW...le-screens
Михаил Базаров -> Всем
17 марта 13:13
Если файлы php скачиваются вместо выполнения в Битрикс веб окружении

Если у вас Битрикс веб окружение, и сайт вроде бы нормально работает но некоторые php файлы скачиваются вместо выполнения.
Убедитесь что эти файлы не начинаются с "upload*.php" - то есть, нельзя в именах папок и файлов использовать это слово (даже если uploadpict.php).
Они заблокированы от исполнения на уровне httpd в Битрикс Окружении


Михаил Базаров -> Всем
27 февраля 14:55
Принудительно перезаписать ядро Битрикс, если оно модифицировано.

Если вам достался проект, на котором, предыдущие горе разработчики внесли модификации в ядро Битрикс.
Можно запустить принудительную перезаливку ядра (только файлов)

Просто переходим на страницу
ВАШ_САЙТ/bitrix/admin/update_system.php?BX_SUPPORT_MODE=Y

Само собой, перед запуском, сделайте полную резервную копию.

Ирина Краснова Всем
9 февраля 23:13
Добавила 1 фото в альбом: Новый альбом
Михаил Базаров -> Всем
9 февраля 14:06
Компонент который умеет выводить разделы инфоблока с элементами.
Черновик, сделал за часок. Настройки и шаблон немного не гибкие, будет дорабатываться.

Выводит:
- название и ссылку на раздел,
- название и ссылку на элемент,
- картинку анонса элемента,
- описание анонса элемента
- цену элемента (если установлен торговый каталог)

Пока плохо выводит свойства. В принципе выводит и дает их выбрать в параметрах. Но в шаблон нужно добавлять вручную.
Что бы работали ссылки, они должны быть обязательно указаны в настройках инфоблока (прописывание в ручную будет позже).
Дает указать количество выводимых элементов.

ВАЖНО! работает с версии Битрикс 18.5 (ниже нет)

Размещать в своем пространстве имен
Будет доступен в Контент=>Каталог




Фото:
Файлы:
Михаил Базаров -> Всем
27 января 14:57
Передать контактные данные покупателя в почтовое событие "Новый заказ"

Если нужно добавить свои поля в почтовое событие "Новый заказ", например ФИО, адрес и телефон покупателя
Добавляем в init.php
AddEventHandler("sale", "OnOrderNewSendEmail", "bxModifySaleMails");
function bxModifySaleMails($orderID, &$eventName, &$arFields)
{
 $arOrder = CSaleOrder::GetByID($orderID);
 $order_props = CSaleOrderPropsValue::GetOrderProps($orderID);
 $fio = "";
 $phone="";
 $address = "";
 while ($arProps = $order_props->Fetch())
 {
   if ($arProps["CODE"] == "FIO")
   {
     $fio = $arProps["VALUE"];
   }
   if ($arProps["CODE"] == "PHONE")
   {
      $phone = $arProps["VALUE"];
   }
   if ($arProps["CODE"] == "ADDRESS")
   {
     $address = $arProps["VALUE"];
   }
 }
 $arFields["FIO"] = $fio;
 $arFields["PHONE"] =  $phone;
 $arFields["ADRESS"] =  $address;
}

После этого, в почтовом шаблоне будут доступны маркеры
#FIO# #PHONE# #ADRESS# с нужными данными

Добавляя блоки
if ($arProps["CODE"] == "ADDRESS")
{
 $address = $arProps["VALUE"];
}
Можно передать любые свойства заказа, по их коду