99% что можно вывести то, что вам нужно готовым компонентом новостей или списка новостей, там и пагинация настроена. Действительно ли необходимо выводить кодом через апи?
Виктор Таран, Настройка меню - это задача для программиста обычно.
Обычно тому, кто размещает контент, сайт попадает либо из готового шаблона или после работы программиста, который уже настроил все необходимые меню, соответственно, меню уже готово и работает.
Текущее положение в меню вроде как как-то реализовано?
При желании, есть и модуль форм в редакции начиная со Стандарт.
Там и поля форм в админке настраиваются.
Просто сейчас в моде дизайнерские формы с валидацией, такое проще собирать самому через jquery и ajax.
Сергей, подход рабочий. Условие проверяет, что находимся именно на главной странице новостей, на странице новости детально условие не сработает.
Можно улучшить еще вот так, убрать весь этот блок перед новостями в отдельный файл и сделать include. Зачем это нужно? В редактор Битрикс полезут пользователи, могут что-то поправить, и может сбиться php код. Если же блок вынесен в include, то через редактор Битрикс ничего не поломать.
Сергей, Вы скорее всего изменили функцию из ядра Битрикс, чего делать не рекомендуется никогда.
Если нужна другая функция, более правильно сделать свой класс со своей функцией и его например в автолоад.
Скорее всего то, что вы хотите делать, в шаблоне делать не нужно.
Заранее на агенте или отдельным скриптом по крону формировать для каждого товара id подходящих товаров.
Похожие товары либо выводят автоматом из того же раздела, например, по принципу сначала товары из того же раздела той же марки, затем товары из того же раздела другой марки, затем товары из раздела на уровень выше.
Либо, просто в админке выбирают для товара вручную похожие.
Если кратко, то нужно скопировать папку со стандартным шаблоном корзины, переименовать ее вашим названием, которое вы придумаете и в компоненте корзины подключить ваш шаблон.
После этого в вашем шаблоне делайте что хотите.
Вы сами готовите папку с файлами шаблона.
Чтобы создать свой шаблон, нужно найти папку шаблона сайта, она может находиться в папке local/templates/[название_шаблона_сайта] или bitrix/templates/[название_шаблона_сайта]
В этой папке шаблона сайта в папку components/bitrix/sale.basket.basket/
скопировать один из стандартных шаблонов корзины, и переименовать папку с шаблоном корзины например в custom.
После этого на странице корзины найти вызов компонента sale.basket.basket и в нём указать имя шаблона custom, после этого у вас корзина должна отображаться из вашего шаблона.
Естественно нужно 2 таблицы.
Это и более читаемо, в каждой таблице одна сущность, а не 2 разных сущности в одной таблице.
И все запросы будут проще, быстрее и понятнее, не придется возиться с is_filter в каждом запросе.
И с точки зрения производительности скорость запросов и потребление ресурсов зависят от размера таблицы, 2 маленьких таблицы лучше, чем одна большая.
Ну и в целом, у колонки is_filter нет никакой функциональности.
В файлах detail.php мало данных доступно, больше данных доступно уже в самом шаблоне news.detail,
В самом шаблоне в $arResult доступны скорее всего будут seo заголовки.
Максим Ткачев, В шаблон компонента это плохая практика.
Во-первых, из-за кэширования код может просто не выполниться.
Если и делать в шаблоне компонента, то только в файле component_epilog.php
Во-вторых, на странице могут меняться компоненты или это статичная страница без компонентов.
Привязка должна быть к урлу страницы, который обычно не меняется.
А в чем смысл писать собственную цмс при наличии готовых?
Какие задачи в итоге?
Если делать для себя некоммерческие сайтики, то проще взять wordpress, готовая простая цмс. Из бесплатных cms wordpress самая пригодная.
Если с прицелом на коммерческие услуги, то для малобюджетных сайтов проще всего взять wordpress, и к нему готовую платную тему.
Для сайтов и интернет-магазинов с нормальным бюджетом лучше 1С-Битрикс, в ней и фреймворк имеется.
Делать какие-нибудь нетиповые сервисы с личным кабинетом - это Битрикс тоже отлично может.
Фреймворки типа ларавель это уже для программистов до мозга костей.
Использовать фреймворк для обычного сайта или интернет-магазина не вижу никакого смысла.
Фреймворки разве для совсем нетиповых или нагруженных проектов с огромным бюджетом и имеет смысл, только если работает профи с опытом.
В руках не профи фреймворки только тормозят проект, тогда проще взять цмску, там хоть модули готовые есть.
Решение приведёт к тому, что в лучшем случае у вас скрипт выйдет за лимиты по времени исполнения, в худшем случае у вас будет куча процессов php никогда не заканчивающихся.
Уже и посетитель сайта забыл про поиск и ушёл заниматься делами, а у вас всё крутятся и крутятся скрипты, которые никогда не найдут в базе истину...
Как можно реализовать лучше?
1. Скрипт на клиенте js через ajax мог бы отправлять запросы каждые 15 секунд, php скрипт мог бы отработать, вернуть что ничего не найдено, завершиться.
2. Вебсокеты, возможно.