Закрыть/открыть Витрину Командой

Здравствуйте. Смастерил скриптик резервного копирования, но перед запуском хочу закрывать витрину, а по завершении открывать. Как бы это реализовать? Просто в БД что-то прописать или механизм сложнее? Если в БД, то где это?

Спасибо.

Смотрите таблицу cscart_settings_objects и настройку с именем store_mode

1 лайк

… вероятно что-то изменилось…
Не работает эта настройка

В структуре БД нет изменений, за открытие/закрытие витрины все так же отвечает настройка store_mode в таблице cscart_settings_objects, а именно значение value (Y/N) у настройки.

…Да. Сейчас вник. Действительно - эта настройка устанавливает галку “Закрыть витрину:”, однако витрина не закрывается. О Как! Как буд-то не нажал кнопку “Сохранить” в настройках.
Поиграйтесь:
update cscart_settings_objects set value=‘Y’ where name=‘store_mode’;

Вопрос - как закрыть/открыть витрину из скрипта?

Выполнил запрос с N, витрина закрылась. Скиньте скрипт, если возможно (и уберите там предварительно все данные сайта)

А я его пока через sql adminer выполнял. Через adminer - получаю описанный результат. Через скрипт пока не пробовал…

Не вижу смысла при резервном копировании закрывать магазин. Актуально только при обновлении.

А так вот стандартные функции открытия и закрытия магазина

fn_ult_open_storefront($company_id)

fn_ult_close_storefront($company_id)

На время заливки импорта хочу закрывать.
Скрипт “внешний” относительно ЦСК. К стандартным функциям не знаю как из него доступ реализовать.

Есть подозрение, что нужно изменить значение в таблице cscart_settings_vendor_values . object_id должен быть такой же, как у записи store_mode в таблице cscart_settings_objects

Вот добавьте это себе в скрипт:

//Выбор С - frontend, A - backend   
define('AREA', 'C');

$site_path = '/путь/к/папке/с/сайтом';
require($site_path . '/init.php');

// Тут можно использовать функции cs-cart

// Y - магазин закрыт, N - магазин открыт
$storefront_status = fn_ult_get_storefront_status(0)
fn_print_die($storefront_status);
1 лайк