Системные настройки компонентов

    Поле "Системные настройки" представляет собой PHP-консоль и работает при отображении списка объектов. При помощи системных настроек можно, в частности, модифицировать SQL-запрос, возвращающий список объектов.
    Изначально основной SQL-запрос, возвращающий список объектов на страницу, выглядит приблизительно следующим образом:



    Условиями выборки, в частности, могут являться:
    - выбрать объекты только в текущем разделе
    - выбрать объекты только в текущем компоненте раздела
    - выбрать объекты только текущего пользователя
    - выбрать только включенные объекты
    - выбрать только родительские объекты
    Ниже приведен набор флагов, влияющих на эти условия:
    • $ignore_catalogue – если 1, игнорирует выборку объектов по текущему сайту (по умолчанию - 0);
    • $ignore_sub – если 1, игнорирует выборку объектов по текущему разделу (по умолчанию - 0);
    • $ignore_cc – если 1, игнорирует выборку объектов по текущему компоненту раздела (по умолчанию - 0);
    • $ingore_user – если 1, игнорирует выборку объектов по текущему пользователю (по умолчанию - 1);
    • $ignore_check – если 1, игнорирует выборку только включенных объектов (по умолчанию - 0);
    • $ignore_parent – если 1, игнорирует выборку только родительских объектов (по умолчанию - 0);
    • $distinct – если 1, добавляет к запросу DISTINCT, т.е. получается SELECT DISTINCT fields FROM;
    • $distinctrow – если 1, добавляет к запросу DISTINCTROW, т.е. получается SELECT DISTINCTROW fields FROM.
    Кроме этого, есть возможность модифицировать основной SQL-запрос путем добавления в оператор SELECT собственного кода. Код устанавливается в соответствующие переменные и автоматически вставляется в запрос. С учетом этих переменных (отмечены жирным шрифтом), основной запрос выглядит следующим образом:



    Переменной $query_select соответствует переменная $result_vars, содержащая соответственно список переменных, в которые необходимо записать значение выбираемых полей. Например, если $query_select содержит “b.CarType,f.Name”, то $result_vars может содержать “\$cartype,\$name”.
    По умолчанию значения всех вспомогательных переменных не установлены.
    В случае если Вам нужно вывести объекты с «подобъектами» (пример – иерархический форум), необходимо установить значение переменной $children в единицу. В противном случае, отображаются только родительские объекты.
    Кроме того, "Системным настройкам" доступны ассоциативные массивы $current_catalogue, $current_sub, $current_cc, $current_user и все переменные, подаваемые на загружаемую страницу методом GET либо в функции s_list_class().
    Учтите, что это поле обрабатывается 2 раза, поэтому не стоит использовать его для определения каких-то функций, классов и других подобных конструкций.

« Назад          Содержание          Далее »


Сайты по теме:


    

Интересное в сети: