Готовые тиражные решения на 1С-Битрикс
Техническая поддержка:
+7-908-208-1965
Отдел продаж, с 7:00 до 18:00 (по Москве)
Звонок по России бесплатный
Вы также можете заказать звонок

FAQ Группировка свойств + подсказки с описанием

05:13:14 - 17.01.2018

1. Как показать/скрыть свойства СКУ в умной фильтре?
Перейдите в параметры необходимого раздела:
2017-09-01_12-39-39.png
Во вкладке "Свойства элементов" в списке "Свойства торговых предложений" напротив нужных свойств поставьте галочки:
2017-09-01_12-41-22.png
1. Почему не выводятся созданные свойства в публичной части?
Чтобы выводились свойства в публичной части, необходимо выбрать вывод этих свойств в параметре компонента каталога:



2. Периодически пропадает авторизация пользователя на сайте
Возможные проблемы и способы их решения:
  • Лишние переносы строк (или иные символы) в скриптах конфигурации. Необходимо убедиться, что в коде файлов dbconn.php, init.php и after_connect.php, расположенных в папке bitrix/php_interface, не содержится переносов строк перед "".
  • Файлы с сессиями продукта создаются, но PHP не хватает прав, чтобы к ним обратиться. Попробуйте в файле /bitrix/php_interface/dbconn.php закомментировать строку:
    //@umask(~BX_DIR_PERMISSIONS);
  • Установлен лимит времени на бездействие пользователя, при превышении которого сессия удаляется. Вам необходимо в настройках группы пользователя на вкладке Безопасность увеличить значение Время жизни сессии (минут).

    Значение по умолчанию можно изменить в файле php.ini (Bitrix Environment\Apache2\zendserver\etc): параметр session.gc_maxlifetime.

  • Значение параметра Маска сети для привязки сессии в настройках безопасности группы пользователей. Если оно равно, например, 255.255.255.255, то это означает, что при изменении IP пользователя, авторизация будет сброшена.
  • Значение параметра session.cookie_domain в файле php.ini на сервере. Если оно задано - убедитесь, что оно соответствует URL вашего сайта. Если значение параметра session.cookie_domain равно www.site.ru, а Вы обращаетесь к системе по URL site.ru, то в этом случае сессия не будет сохранена, и, соответственно, авторизация не сохранится.

    Для решения проблемы необходимо установить в настройках PHP корректное значение параметра session.cookie_domain.

  • Неверно прописан домен в настройках главного модуля и для сайта отдельно.

    Проверьте значение поля URL сайта на странице административного режима Настройки > Настройки продукта > Настройки модулей > Главный модуль.

    Проверить значение поля URL сервера можно, открыв настройки нужного сайта на странице административного раздела Настройки > Настройки продукта > Сайты > Список сайтов.

    Примечание: также одной из причин может быть некорректное значение в параметрах сайта поля Путь к корневой папке веб-сервера для этого сайта, либо Доменное имя. Доменное имя можно сменить или удалить путем внесения изменений в файл /hosts.

  • При переносе сайта не скопировался файл /.access.php. В данном файле хранятся права групп пользователей к сайту, и если данного файла нет, то для всех пользователей право доступа устанавливается как Запрещен.

    Проблема решается одним из способов:

    • вам надо на странице административного раздела Контент > Структура сайта > Файлы и папки в меню действий корневой папки сайта выбрать пункт Свойства папки и на вкладке Доступ установить для группы Все пользователи (в том числе неавторизованные) право Чтение;
    • в корневую папку сайта загрузить файл .access.php со следующим содержанием:
      <? $PERM["/"]["*"]="R"; ?>
      
  • Если при многосайтовости вас выкидывает на форму авторизации при переходе по публичным страницам сайта, проверьте содержимое файла .access.php на идентичность следующему коду:
    <?
    $PERM["/"]["*"]="R";
    ?>
    
  • Авторизация не учитывается на вашем домене.

    На закладке Авторизация страницы настроек главного модуля (Настройки > Настройки продукта > Настройки модулей > Главный модуль) поставьте галочку в поле Распространять авторизацию на все домены.

  • Проблема может быть в работе сервера (нужна поддержка сессий в php, должна быть указана папка сохранения сессий и права на запись в эту папку).

    Проверьте исправность работы сервера с сессиями с помощью данного скрипта и в случае наличия неполадок обратитесь к администратору сервера.

3. Что делать-если вы забыли пароль администратора?

Для восстановления пароля администратора сохраните следующий скрипт в php-файл c любым именем:

<?
require($_SERVER['DOCUMENT_ROOT']."/bitrix/header.php");
echo $USER->Update(1,array("PASSWORD"=>'Bitrix*123456'));
echo $USER->LAST_ERROR;
require($_SERVER['DOCUMENT_ROOT']."/bitrix/footer.php");
?>

Закачайте через FTP на сайт и откройте его в браузере. После этого у пользователя с ID=1 (по умолчанию - администратор) установится пароль: Bitrix*123456

После этого авторизуйтесь и в панели управления установите свой пароль.

Внимание! Обязательно удалите этот файл после восстановления пароля!

Если доступ для неавторизованных пользователей закрыт, то перед процедурой восстановления пароля надо поправить файл .access.php в корне сайта, заменив:

$PERM["/"]["*"]="D";
на:
$PERM["/"]["*"]="R";
А после сброса вернуть изменения назад. 
1. Описание API модуля
Возвращает группы свойств, идентификаторы свойств вошедших в группы и их комментарии для инфоблока или раздела:

CYenisiteInfoblockpropsplus::GetInitArray( 
arFilter=array()
);
Параметр Описание
$arFilter Принимает значения:
array("IBLOCK_ID" => ) - для инфоблока
и
array("IBLOCK_ID" => , "SECTION_ID" => ) - для раздела



Добавить группу:

CYenisiteInfoblockpropsplus::AddGroup( 
$iblock_id,
$group_name,
$group_sorting,
$section_id
);
Параметр Описание
$iblock_id Идентификатор инфоблока
$group_name Наименование группы
$group_sorting Значение сортировки (число) - чем меньше значение параметра тем выше распологается группа
$section_id Идентификатор раздела
Если параметр передается пустым, принимает значение по умолчанию равное "0".



Удалить группу:

CYenisiteInfoblockpropsplus::RemoveGroup( 
$group_id
);
Параметр Описание
$group_id Идентификатор группы свойств.



Обновить группу:

CYenisiteInfoblockpropsplus::UpdateGroup( 
$group_id,
$group_name,
$group_sorting,
$iblock_id,
$section_id,
$in_section_edit
);
Параметр Описание
$group_id Идентификатор группы которую нужно изменить
Обязательный параметр, в случае его отутствия будет добавлена новая группа с указанными параметрами ($group_name, $group_sorting, $iblock_id, $section_id)
$group_name Новое наименование группы
Обязательный параметр
$group_sorting Значение сортировки (число) - чем меньше значение параметра тем выше распологается группа
Необязательный параметр
$iblock_id Идентификатор инфоблока
Обязательный параметр
$section_id Новое значение идентификатора раздела
Если передается не число или пустое значение, идентификатор раздела не изменится
Должно принимать пустое значение если группа изменяется в общем списке свойств для инфоблока
$in_section_edit Принимает значение "y" или "n": "y" - изменению подвергается группа для раздела, "n" - изменению подвергается для инфоблока
По умолчанию принимает занчение "n"
При изменении группы для раздела, данный параметр обязательно должен принимать значение "y" - изменение значения сортировки для раздела запрещено, т.к. может нарушить работу модуля для общего списка свойств для инфоблока.



Добавить свойство в группу:

CYenisiteInfoblockpropsplus::AddPropsToGroup( 
$props=array(),
$iblock_id,
$group_id
);
Параметр Описание
$props массив идентификаторов свойств
$iblock_id Идентификатор инфоблока
$group_id Идентификатор группы свойств.



Изменить комментарий:

CYenisiteInfoblockpropsplus::EditPropComment( 
$prop_id,
$iblock_id,
$comment
);
Параметр Описание
$prop_id Идентификатор свойства
$iblock_id Идентификатор инфоблока
$comment Новое значаение комментария.



В модуле также вызываются следующие обработчики:

Обработчик Событие Описание
OnIBlockDelete OnIBlockDelete В момент удаления информационного блока очищает группы привязанные к инфоблоку, привязку свойств к группам и их комментарии
OnIBlockPropertyDelete OnIBlockPropertyDelete В момент удаления свойства очищает привязку свойства к группам и его комментарии
1. Как привязать свойства к разделам и отредактировать форму редактирования элементов для каждого раздела?
Для того что бы показать необходимые свойства для определенного раздела нужно:

Создать свойство для раздела: (http://prntscr.com/8zkii4) -> (http://prntscr.com/8zkirw) -> (http://prntscr.com/8zkj1d) ->
-> (http://prntscr.com/8zkjed) -> (http://prntscr.com/8zkjww) Вот такие свойства у нас получились для раздела "чехлы"(Группу свойств вы создаете сами и название группе так же пишите которое вы хотите)
Настроить форму добавления товара: (http://prntscr.com/8zkkmy) -> (http://prntscr.com/8zkksa) ->
-> Выделить таккак показано на рис (http://prntscr.com/8zklud) -> нажать кнопку удалить (http://prntscr.com/8zkmha)

Теперь при выборе раздела свойства меняются:
Выбран раздел "Авто" (http://prntscr.com/8zkn0g) его свойства: (http://prntscr.com/8zkn6s)
Выбран раздел "Чехлы" (http://prntscr.com/8zknbt) его свойства : (http://prntscr.com/8zknhi)  

Так же можете изучить текст статьи http://dev.1c-bitrix.ru/community/blogs/product_features/smart_filter.php
В 12 версии БУСа вышел функционал, позволяющий в одном инфоблоке хранить разнотипные товары с присущими им свойствами. При этом товары «не мешают» друг другу в каталоге, поскольку не перекрещиваются по свойствам. Свойства привязываются к категориям товаров, каждая категория наследует свойства вышестоящей.
В данном примере я буду настравивать свойства для двух разделов инфоблока: “Бумага для оргтехники” и ”Картриджи”.
Общие свойства: Артикул (строка), Производитель (строка)
Свойства элементов раздела “Бумага для оргтехники”: Класс (список), Кол-во листов в пачке (число), Формат (список)
Свойства элементов раздела “ Картриджи ”: Ресурс (число)
И так,Имеется инфоблок. После того, как в его настройках отмечена опция “ Является торговым каталогом”, инфоблок становится доступен в разделе “Магазин”. Отсюда и рекомендуется производить дальнейшее управление и работу с разделами, товарами и их свойствами.
Создаём требуемые свойства.
Далее в настройках каталога указываем свойства, которые присущи всем товарам.
В этот список автоматически попадают свойства, в параметрах которых отмечена опция “Показывать на странице редактирования элемента ”.
Создаем и настраиваем разделы
Кроме обычных параметров указываем какими свойствами будут обладать товары раздела“Бумага для оргтехники”
Указываем, что по этим свойствам возможна фильтрация товаров в умном фильтре.
Настраиваем второй раздел
Настраиваем форму добавления товара, чтобы показывались свойства текущего раздела.
Удаляем из формы свойства и заголовок “—Значения свойств”.
После сохранения получаем:
Вид формы, если раздел не выбран
Вид формы при добавлении товара в раздел “Бумага для оргтехники”
Вид формы при добавлении товара в раздел “Картриджи”Данная настройка поддерживатеся только в форме товаров в разделе “Магазин”.
2. Включить расширенный вывод ошибок можно в файле настроек .settings.php
Если вы наблюдаете такую ошибку: Включить расширенный вывод ошибок можно в файле настроек .settings.php

Вам необходимо перейти: Административная панель - Файлы и папки - bitrix - .setting.php
8.png


Найти строчку: 'debug' => false,
false заменить на true

9.png
3. Как сделать бекап сайтов, находящихся в многосайтовости?

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

Резервное копирование при использовании многосайтовости имеет свои особенности:

  • Можно выбирать сайты для копирования, оставляя в архивах только нужные вам проекты.
  • Восстановление сайтов потребует дополнительных действий со стороны администратора.
  • Этот способ копирования работает только для сайтов DOCUMENT_ROOT которых различны. (То есть для многосайтовости на разных доменах)
  • База данных полностью копируется в архив. Даже тех сайтов, которые не были указаны в чекбоксах выбора сайтов.

При выборе сайтов для архивирования учтите, что в состав архива полностью копируется только первый по сортировке сайт (из выбранных) в списке сайтов. Соответственно, при восстановлении полностью в работоспособном состоянии восстанавливается только этот сайт.

Публичная часть остальных сайтов сохраняется в архиве в папках вида /bitrix/backup/sites/_ID_сайта_. После распаковки архива администратор должен будет вручную перенести папки публичной части архивируемых сайтов в соответствующие папки на сервере. (В процессе распаковки появится предупреждение, что архив содержит несколько публичных частей.)

Многосайтовость надо восстановить вручную (восстановить симлинки). Только после этого остальные сайты будут работоспособны.