Это не выход, и даже не кастыль. Все дело в том, что при таком подходе вы не деактивируете товары, а просто их не выводите в публичной части сайта. При таком подходе останутся проиндексированные прямые ссылки на старые товары, и нарушится пагинация (впрочем вы и сами это видите)
Конечно можно перестроить пагинацию, но это вас опять вернет к использованию API
У меня есть подозрение, что правильный код должен выглядеть примерно так:
Это для построения табов, и то не совсем верно. Допустим у вас есть некий список из 100 значений. В реальности вы используете только 10-ть значений. При таком коде вы выведите 100-о табов, т.к. делаете запрос не к данным а к настройкам.
Правильно было бы запросить список товаров и используемых свойств, и потом просто убрать дубликаты свойств. В итоге вы получите только те свойства которые реально используются. Просто в фильтре, указывайте минимум полей.
Так же можно использовать готовый массив $arResult если в нем выводится нужно вам свойство, и не нужно делать ни каких дополнительных запросов
написал: У меня есть товар (catalog.element) и в нем я хочу получить только те из свойств, которые селектированы, а не все кучей
Если используете стандартные компоненты, то можно и без API получить значения, в зависимости от версии ядра и настроек. Либо в инфоблоке в настройках свойства поставить галочку где вам нужно выводить данные, либо в настройке компонента добавить те свойства которые вы хотите публиковать.
Как сделать отображение только селектированного свойства (Например, только "Для мужчин")?
Селектированного свойства где?
Непонятно что вы хотите получить в итоге. У вас есть инфоблок. В нем есть поле список. При заполнении карточки товара вы выбираете из списка некий множественный параметр, например назначение. В списке карточки товара вы его отображаете ввиде флажков. Сам товар хранит только ENUM_ID тех значений которые вы для него установили. В данном случае, DEF не работает, потому что ни одному значению вы не присвоили использовать по умолчанию. При запросу вы получите ENUM_ID, что бы его использовать для каких то своих нужд.
Если вы хотите получить список товаров для которых вы установили списочное значение "Для мужчин", то вы используете не тот API.
Это вы не понимаете, что вы делаете и какие запросы вы посылаете. Не различаете сортировку и фильтрацию по параметрам. В данном примере параметр DEF используется для сортировки данных, а не для фильтрации.
2. В выводе новости проверяем что у нас что то да есть в SHOW_COUNTER
Код
print_r($arResult['SHOW_COUNTER'])
3. Если что то да есть, тогда удаляем intval Во первых это не нужно, т.к. значение в SHOW_COUNTER итак целое, и возможно что просто строковое и применяя intval к строке получаем 0. применяя intval вы должны быть уверены что применяете его к числу проверив например при помощи is_numeric, а не строке
При создании компании необходимо получить ее ИНН и передать его в задачу. В бизнес процессе пытаюсь получить ИНН но получаю falsh Использую код, но не могу понять причину ошибки (((
<?
//Получаем данные координат, допустим в переменной $arResult['PROPERTY']['MESTO']['VALUE']
?>
<div id='map'></div>
<sc ript>
.....
var myPolygon = new ymaps.Polygon([
// Указываем координаты вершин многоугольника.
// Координаты вершин внешнего контура.
[
[<?=$arResult['PROPERTY']['MESTO']['VALUE']?>], //Вставляем координаты, обрати внимание на формат передачи координат, со скобками, или без, в паре или нет
Самый простой способ отловить что происходит делать print_r(переменная). например после $filename = $trans.$ext_z; вы должны получить имя файла есть ищем ниже, нет значит проблема выше
можно закомментировать unlink($file); и посмотреть файл появляется во временной папке
массив $_FILES - есть папка на сервере /upload/tmp/ - есть? проверьте в примере у меня встречается $_FILES['upfile'] вам нужно заменить на $_FILES["IMAGE_ID"] (пропустил когда правил код под вас, поэтому и не работает)