Скрыть/отобразить/выключить товары bitrix у которых нет цены
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
<?php /** * TODO * * Данная магическая штука, реализует функционал для каталога, * функционал заключается в следующем, мы выключаем item'ы у которых цена 0 * * */ /** * Логирование запуска скрипта * @return [type] [description] */ function logSort() { $pid = getmypid(); $file = fopen('logs.log', 'a+'); $message = "pid: [$pid] hide empty price : " . date("d.m.Y H:i:s") . PHP_EOL; fwrite($file, $message); fclose($file); } logSort(); // подключаем prolog bitrix require $_SERVER["DOCUMENT_ROOT"] . '/bitrix/modules/main/include/prolog_before.php'; // подключаем нужные модули CModule::IncludeModule("iblock"); CModule::IncludeModule("catalog"); CModule::IncludeModule("sales"); $el = new CIBlockElement; $arSelect = Array("ID", "ACTIVE", "CATALOG_PRICE_1"); /** * Выключаем товары у которых нет цены * @return [type] [description] */ function deactivationItemWhereNoPrice() { global $el, $arSelect; $arFilter = array("IBLOCK_ID" => 4, "catalog_PRICE_1" => false); $res = CIBlockElement::GetList(array(), $arFilter, false, false, $arSelect); while ($r = $res->GetNext()) { $el->Update($r['ID'], array("ACTIVE" => "N")); } } deactivationItemWhereNoPrice(); |