Вывод полей в зависимости от категорий


Содержание материала:

Вывести список подкатегорий в зависимости от родительской категории

Раньше публиковал статью с другим методом вывода подкатегорий WordPress в зависимости от рубрики. Теперь нашел более простой и оптимизированный способ:

//получаем номер родительской категории
$numcat = get_query_var(‘cat’);
//выводим подкатегории родительской категории
wp_list_categories(«child_of=$numcat&title_li=Содержание&show_count=1»);

Добавляем какой-нибудь класс, чтоб прописать CSS оформление:
$numcat = get_query_var(‘cat’); //получаем номер родительской категории
print ‘

И вуаля, у нас теперь формируется список подкатегорий в каждой рубрике автоматом! Осталось его только добавить в post-excerpt.php, который находится в шаблоне.

Хоть этот метод вывода подкатегорий в WordPress и достаточно хорош, но появилась проблема с рубриками, где нет дочерних элементов. Смотрите скриншот:

Хотелось бы убрать сообщение Рубрик нет. Для этого делаем проверка сначала на наличие дочерник подрубрик, и если они есть, то печатаем их:

ps — очень долга искал строку проверки на наличие дочерних категорий. К счастью такая есть

Вывод полей в зависимости от категорий

Модуль «Дополнительные поля для категорий» рассчитан для DLE 13.0 — 13.1, с удобной автоматической установкой. Также имеется автоматическая проверка наличия новых версий модуля с сайта разработчика с установкой в один клик.

Модуль «XCats» работает во многом аналогично стандартным дополнительным полям для новостей. Типов полей для категорий три: «одна строка», «несколько строк», «список». Добавить новое поле можно, нажав на кнопку «Добавить поле». На открывшейся странице необходимо ввести уникальное имя поля (только латинские буквы и цифры), описание поля и содержание поля по умолчанию для типа «список».

Для того чтобы использовать поле на странице сайта, необходимо в шаблон добавить переменную [xcvalue_X], где X — значение поля (имя, которое Вы ввели при добавлении нового поля). Также можно использовать связку [xcgiven_X]. [/xcgiven_X], которые выводят текст указанный в них если дополнительное поле было задано. А также можно использовать связку [xcnotgiven_X]. [/xcnotgiven_X], которые выводят текст указанный в них если дополнительное поле не было задано. То есть, все аналогично как у дополнительных полей для новостей, только вместо префикса «xf» используется «xc».

Вывод произвольных полей ACF

Рассмотрим вывод произвольных полей, созданных в Advanced Custom Fields для WordPress. А также, как вывести произвольные поля для терминов таксономии, например, «Рубрики» в шаблоне category.php

Тип поля — текст , область текста , число

Тип поля — Изображение (вывод URL)

Тип поля — файл (вывод URL)

Тип поля — медиа

Вывод полей ACF из терминов таксономии

Если мы создадим кастомное поле для элемента таксономии рубрики

Оно (поле) у нас благополучно появится в рубриках

Вывод значений полей группы в виде таблицы

Если возникла ситуация, когда необходимо создать большое количество объектов каталога у которых название полей может быть великое множество, т.е. для одного объекта — одного типа характеристики, у второго другие, у третьего. Тогда можно создать в модуле «Шаблоны данных» группу полей, а в ней название полей с таким принципом:

— Поле 1 — Значение 1

— Поле 2 — Значение 2

— Поле N — Значение N

Значение для полей «Поле N» — это название характеристик объекта, для полей «Значение N» — значение характеристик.

Если поля разных типов то можно просто воспользоваться макросом %data getPropertyGroup()%, задав для «Значение N» такую верстку, чтобы значение смещалось вправо + перенос строки. Если поля «Поле N» и «Значение N» одинакового типа то можно использовать кастомный макрос, который выведет поля строками: «Поле N — Значение N».

Кастомный макрос необходимо прописать в файл

classes/modules/custom.php, после слов //TODO: Write your own macroses here:

Верстку для $arr_fields конечно можно поменять. Кавычки необходимо экранировать обратным слэшем: \». Пример вызова макроса:

где %id% — id страницы, group-fields — идентификатор группы полей.

Конструктор схемы компоновки данных — Закладка Настройки

Закладка повторяет пользовательский диалог «Настройка» доступный для настройки пользователем параметров отчета.

Заполнение настроек на этой закладке служит для настройки отчета по-умолчанию в пользователь-ском режиме работы отчета.
Окно для настройки отчета доступно в пользовательском режиме отчета, при этом отличие от на-стройки СКД в конфигураторе в том, что можно использовать значения не предопределенных дан-ных из базы данных.
Окно настроек состоит из основного окна, где выводятся списки группировок, таблиц и диаграмм и набора закладок в которых устанавливаются параметры настроек для объектов указанных в секции группировок. Какие именно редактируются настройки в данный момент мы можем указать нажав на кнопку с надписью о том какой объект мы редактируем:

Возможно, редактировать общие настройки для всего отчета, а нажав на соответствующую кнопку можно редактировать настройки исключительно для выбранного объекта: элемента группировки, таблицы, диаграммы.

Закладка «Параметры данных»
На этой закладке устанавливаются значения параметров данных. Список доступных параметров данных определяется на закладке «Параметры» схемы СКД, здесь же устанавливаются только пользовательские значения параметров. Причем доступны только те параметры, для которых в схеме СКД сброшена галочка «Ограничение доступности».

В таблице присутствуют несколько колонок:
1. «Использование» — галочкой пользователь указывает использовать или не использовать данный параметр для формирования отчета.
2. «Параметр» — имя параметра
3. «Значение параметра» — значением параметра или указание, откуда значение параметра можно извлечь. Например, если сбросить текущее значение, нажав на «Х», то нажав на кнопку «Т» откроется выбор типа параметра в диалоге:

Источником может служить, какое либо значение простого типа Строка, Дата, Число, Булево или ссылка на объект в базе данных. А также источником для данного параметра может быть значение другого параметра, для этого нужно выбрать значение «Поле компоновки данных» и выбрать нужное поле из списка параметров.
Для даты можно назначать автоматические значения для подстановки: «Начало этого дня», «Начало этой недели» и т.д.

Топ-пост этого месяца:  Классы в объектно-ориентированном программировании на PHP. Абстрактные классы

Закладка «Выбранные поля»
На этой закладке определяются поля, кроме группировок, которые будут выводиться отчет. На за-кладке два списка с доступными полями и выбранными полями. Кроме полей определенных в наборах данных к выводу доступны параметры и системные поля «Номер по порядку», «НомерПоПорядкуВГруппировке», «Уровень», «УровеньВГруппировке», а также пользовательские поля определенные на закладке «Пользовательские поля».

Переносить поля можно двойным нажатием на название в левом окне или воспользовавшись специальной кнопкой в командной панели. Добавлять можно такие элементы «Новое поле», «Новая группа», «Новое автополе». «Новое поле» — добавляет элемент в котором можно выбрать поле из доступного списка полей. «Новая группа» — можно сгруппировать ряд полей под одной шапкой. «Новое автополе» — используется для того чтобы указать, что поля выводимые для группировок будут выбираться из настроек группировки вышестоящего уровня. Например, определив для всего отчета ряд полей-ресурсов, мы, указав новое автополе для группировок. Удалить элементы можно с помощью кнопки Удалить, передвинуть по позиции с помощью кнопок перемещения. Установкой галочек можно регулировать видимость полей в отчете.
После определения набора полей мы можем отредактировать поля в списке, нужно войти в режим редактирования поля, нажать на кнопку выбор и выбрать из списка нужное поле.

Для ресурсов доступны для выбора уточнения для расчетов реквизита: «% в группе» — используется для расчета доли значения ресурса для всей группировки в группе, т.е. в итоге в группе по совокупности значений ресурса будет 100%; «% общий» — общий процент не зависимо от группы по всем значениям ресурса.
Для полей объектного типа справочник, документ и т.д. возможно указать в выбранные поля реквизит объекта.

Закладка «Отбор»
На этой закладке определяются отборы, которые влияют на результат отчета.

Как и на закладке «Выбранные поля» есть два окна, слева все доступные поля СКД для выбора в отбор, в правом элементы и значения которые влияют на отбор. Добавить новый элемент или группу элементов можно также клавишей Добавить. Удалить элементы можно с помощью кнопки Удалить , передвинуть по позиции с помощью стрелок перемещения. Установкой галочек можно регулировать активность того или иного отбора в отчете. После нажатия кнопки «Подобно» в списке элементов отбора добавляются уточняющие реквизиты отбора: «Режим отображения» и «Представление».

После добавления нового элемента в список отборов для редактирования доступны поля:
• «Левое значение» — поле СКД или поле простого типа («Число», «Строка», «Дата», «Булево»), на которое накладывается отбор
• «Вид сравнения» — список возможный условий отбора: «Равно», «Не равно», «В списке», «В группе из списка», «В группе», «Не в списке», «Не в группе из списка», «Не в группе», «Со-держит», «Не содержит», «Заполнено», «Не заполнено»
• «Правое значение» — значение отбора, соответствует значению поля «Левое значение». В случае если «Вид сравнения» равен «В списке», «В группе из списка», «Не в списке», «Не в группе из списка» то для установки доступен список значений
• «Режим отображения» — возможный два варианта «Быстрый доступ» и «Обычный». В случае если установлен «Быстрый доступ» то если это возможно значения для выбора отображаются в виде выпадающего списка, особенно это актуально для небольших редко меняющихся справочников, перечислений или видов характеристик. «Обычный» — способ отображения значений принятый для объектов по-умолчанию в виде формы выбора или списка.
• «Представление» — текстовое представление отбора в сокращенном режиме (если не нажата кнопка «Подробно»), а также представление отбора при выводе отчета.
В отборы можно добавлять группы – которые служат для объединения нескольких отборов, по какому либо критерию «И», «ИЛИ», «НЕ».

Например, нужно объединить несколько условий с помощью оператора «И». Для этого нужно в отбор добавить «Группа И» в этой группе перечислить условия. Допускается вложенность групп, с помощью которых можно создавать сложные условия. Кроме «Группа И» доступны «Группа ИЛИ» и «Группа Не». По-умолчанию просто список условий отбора не принадлежащий, какой либо группе соединен между собой с помощью оператора «И».

Закладка «Сортировка»
На данной закладке указываются поля, по которым производится сортировка.

Добавление полей на данной закладке аналогичное тому, как это делается на закладке «Выбранные поля». Единственный параметр, который указывается в выбранных полях сортировки, это направление сортировки.

Закладка «Условное оформление»
На закладке «Условное оформление» мы указываем, какие поля, условия отборов и условия оформления будут применятся при выводе полей в отчет.

«Область» — список полей, на которые влияет условное оформление.

«Отбор» — условия отбора при которых условное оформление действует

Условия отбора указываются также как и на закладке «Отбор» основного окна настройки компоновки.
«Условное оформление» — при заполнении данного поля выводится окно с выбором возможных опций оформления для указанных полей.

Список возможных опций оформления:
Цвет фона — Определяет цвет фона в ячеках
Цвет текста — Определяет цвет текст в ячейках
Цвет в диаграмме — Определяет цвет линий в диа-грамме
Цвет границы — Цвет линий границы
Стиль границы — Типы линий границы
Стиль границы слева — слева
Стиль границы сверху — сверху
Стиль границы справа — справа
Стиль границы снизу — снизу
Шрифт — Вид шрифта, толщина, наклон и т.д.
Отступ — Количество знаков отступа
Авто отступ — Количество знаков отступа, применяется в группировках
Горизонтальное положение — Положение текста в ячейке по горизонтали
Вертикальное положение — Положение текста в ячейке по вертикале
Размещение — Размещение текста который не помещается в ячейку
Ориентация текста — Ориентация текст в градусах (например, 90-поворот перпендикулярно)
Формат — Форматная строка значения
Выделять отрицательные — Признак того чтобы выделять отрицательные значения
Минимальная ширина — Минимальная ширина ячейки в пунктах
Минимальная высота — Минимальная высота ячеки
Максимальная высота — Максимальная высота
Текст — Текст который выводится вместо значения

Закладка «Пользовательские поля»
На данной закладке можно указать пользовательские поля и формулы, по которым поля будут вычисляться.

При нажатии на добавление поля откроется выбор типа пользовательского поля: «Новое поле вы-бор», «Новое поле выражение».
«Поле выбор» — появляется диалог конструирования нового поля выбора. Данное поле будет принимать заданные значения в зависимости от условия отбора заданного в таблице «Варианты».

«Поле выражение» — используется в случае когда, нужно не меняя схемы компоновки вставить вы-числяемые поля. Например, в схеме указаны ресурсы «Количество» и «Сумма». В пользовательском режиме мы хотим вычислить цену. Для этого мы в поле конструирования выражения вставляем формулу:

Топ-пост этого месяца:  Google исправит проблему доступности публикаций в новостном агрегаторе

В пользовательских полях можно использовать выражения из запросов.
Также для обозначения итоговых записей в выражении нужно использовать агрегатные функции СУММА(..), КОЛИЧЕСТВО(), МИНИМУМ(..), МАКСИМУМ(..)

Закладка «Другие настройки»
На закладке «Другие настройки» определяются настройки, которые влияют на расположение группировок, полей выбора, ресурсов и т.д.

Макет оформления Заданные предопределенные макеты оформления
Расположение итогов Параметр влияет на расположение итогов
Расположение полей группировок
Расположение группировок
Расположение реквизитов
Расположение ресурсов
Расположение общих итогов по горизонтали
Расположение общих итогов по вертикали
Тип заголовка полей
Тип диаграммы
Базовое значение
Пропускать базовое значение
Состав подписей
Режим раздвижения
Отображать таблицу данных
Максимальное значение
Минимальное значение
Окантовка
Градиент
Шрифт
Цвет фона
Стиль линии
Размещение легенды
Полосы измерительной диаграммы
Выводить заголовок
Заголовок
Выводить параметры данных
Выводить отбор

Окно настройки группировок

Настройки схемы компоновки данных могут содержать структуру, включающую в себя доступные элементы настроек.
Такими элементами являются:
• группировка;
• таблица;
• диаграмма;
• вложенный отчет.

Для группировки доступны следующие настройки:
• Флаг использования группировки — если установлен — группировка используется при компоновке;
• Поля группировки — набор полей, по которым осуществляется группировка. Каждое поле группировки системы компоновки данных обладает следующими свойствами:
— Флаг использования поля — если установлен — поле используется;
— Поле группировки — путь к данным поля, по которому осуществляется груп-пировка;
— Тип группировки – тип группировки (Иерархия, Только иерархия, Элемен-ты);
— Тип дополнения – необходимость дополнения дат в периоде;
— Начальная дата — начальная дата периода. Может содержать константное зна-чение, либо значение – поле;
— Конечная дата — конечная дата периода. Может содержать константное значе-ние, либо значение — поле;

Добавление полей к терминам таксономии

В этом гайде рассмотрим процесс создание произвольных полей для терминов любой таксономии и вывода их значений в шаблоне темы.

Терминами могут быть рубрики (категории), метки (теги) или произвольной таксономии, к примеру рубрики товаров WooCommerce, их атрибуты и так далее.

Чтобы зарегистрировать пользовательскую таксономию используйте register_taxonomy(), а также читайте о том, что же такое таксономии в WordPress.

С помощью Advanced Custom Fields добавлять произвольные поля для терминов таксономий очень просто, вот что нужно сделать:


  • В пункте меню «Custom Fields» выбрать подпункт «Add New», чтобы создать новую группу произвольных полей.
  • Добавьте нужные типы полей, которые хотите видеть при добавлении и редактировании термина.
  • В секции «Locations» выберите условие, чтобы группа полей отображалась для терминов нужной таксономии. К примеру, на скриншоте ниже выбрано условие показа группы полей для рубрик.

Добавление группы полей к терминам таксономии меню

После того, как группа полей создана и указано, для каких терминов таксономии их показывать, можно при добавлении нового или редактировании старого увидеть наши поля и указать значения. В нашем примере это стандартные рубрики WordPress.

Редактирование произвольных полей у Рубрики меню

Отображение значений полей

Чтобы вывести значения полей, нужно отредактировать код шаблона вывода архивной страницы таксономии, к примеру для Рубрик это category.php , для меток — tag.php или же общий шаблон taxonomy.php / archive.php . В зависимости от вашей темы, вы также можете использовать фильтры или части шаблона для кастомизации.

Чтобы легко определить, какой файл редактировать, прочитайте статью Иерархия файлов темы (шаблона).

Настройка HTML-кода для таксономии WordPress может быть легко выполнена путем редактирования файла category.php, tag.php или taxonomy.php в вашей теме. В зависимости от вашей темы вы также можете использовать шаблонные части или фильтры для настройки HTML.

В нашем случае мы произвольные поля добавили к Рубрикам, поэтому мы будем редактировать файл category.php , используя тему Twenty Seventeen . В этом шаблоне мы выведем картинку для рубрики сразу после шапки сайта виде бэкграунда и зададим цвет заголовков у постов.

В итоге получим следующий результат:

Вывод полей определенного термина

Если нужно вывести значение произвольного поля в не шаблона термина, то воспользуйтесь следующими вариантами, указывая их вторым аргументом в функциях get_field() / the_field() :

Пример Формат Описание
category_123 $taxonomy . ‘_’ . $term_id Строка содержит название таксономии и ID термина.
term_123 term_’ . $term_id Строка содержит слово term и ID термина. Добавлено в версии 5.5.0.
WP_Term Объект термина. Его можно получить множеством способов, например функцией get_term().

Например, пусть у нас есть тестовое поле с именем my-field у стандартных рубрик WordPress и надо вывести его значение:

Как вывести данные в WordPress в зависимости от раздела

PHP коды в WordPress для вывода информации в категориях.

Показ записей в конкретных разделах

Вывод статей или любой другой информации в зависимости от >

Выводим информацию из конкретной категории:

Или из другой категории:

Во всех других разделах выводим:

Разновидность PHP конструкции, всё то же самое:

Если это категория или тег WordPress, то вывести одно. Или если это категория поиск, то вывести другое:

Проверка на главную (родительскую) категорию

Проверяем категорию на соответствие родителя — это главный раздел или подраздел.

Информация для главной категории

Информация для подразделов

Вывод информации на первой странице категории

Выводим информацию только на первой странице раздела:

get( ‘paged’ ); if ( ! $paged || $paged

Любой текст или код php.

Также читайте

Привет. Ты находишься на моём сайте. Я разработчик. Здесь я делюсь своими наработками и знаниями. Спрашивай в комментариях, если тебе что-то не понятно или пиши, если есть что добавить.

Если вам пригодилась информация, вы можете поблагодарить автора сайта символическим пожертвованием:

Изменение формы при выборе определенного параметра

Иногда, при разработке сайта, необходимо учесть некоторые нюансы.

К примеру недавно я столкнулся с такой задачей:
Есть форма заказа товара, у товара есть несколько параметров, которые должен заполнить Посетитель. При этом, для каждого типа товара есть свои особенные параметры, которые не учитываются для другого типа. После выбора типа товара пользователю должны быть выведены поля для заполнения под выбранный тип.

В данной статье я хочу показать, каким образом можно это реализовать.

Реализуется это, как вы уже наверное догадались, с помощью javascript. Рассмотрим простой пример, который я нашел на стороннем сайте:

В данном примере используется параметр select‘a onChange. С помощью него, мы можем отследить, когда Посетитель выберет параметр из списка. Для нашего случая мы вызываем функцию selChange и передаем в нее текущую форму.

В функции, как мы видим, отслеживается текущее (после выбора) значение элемента с именем beer (в нашем случае это select). Значение (value) записывается в переменную, и потом вызывается алерт с текстом, где фигурирует эта переменная, для вывода выбранного типа.

Давайте теперь рассмотрим, адаптированный под мои нужды, вариант javascript-кода:

У меня, как написано в начале поста, была задача вывода тех или иных полей для заполнения в зависимости от выбранного из выпадающего списка типа товара. Для выполнения моего кода еще необходимо подключить библиотеку jQuery, т.к. я использую в функции такие эффекты, как show и hide.

Все достаточно просто, как и в предыдущем варианте, просто после того как текущее значение записывается в переменную, оно сверяется с текстом и выполняется соответственная часть кода.

Вроде все. Скачать демо: change-form-with-select
Если у вас, мои уважаемые читатели, возникают вопросы — пишите, не стесняйтесь, отвечу в течении суток. Ждать не придется. ��

Есть вопрос? Что-то не понятно в статье? Хочешь отблагодарить? Пиши комментарий!
Если тебе понравилась статья, а тем более если еще и помогла — поставь +1 и нажми «Мне нравится»!

Зависимость видимости полей от значения других полей

Зависимость видимости полей от значения других полей

Добрый день. Предлагаю реализовать механизм настройки видимости полей задачи в зависимости от значения других полей.

Кейс:

  • задача = договор
  • существует несколько видов договоров
  • у каждого вида договора свой набор параметров
  • создаем кастомное поле — вид договора
  • создаем наборы полей соответствующие каждому виду договора
  • создаем задачу-договор, указываем вид, видим на форме набор полей соответствующий выбранному виду

Может показаться что это можно решить шаблонами задач, но

  • Реестр задач-договоров в виде списка задач или отчета удобнее реализовать отбором по одному шаблону чем по нескольким
  • В примере приведена простая зависимость от одного поля, но зависимости могут быть сложнее. Например, выбираем тип оплаты (предоплата, кредит, предоплата+кредит) и появляются поля для указания сроков этапов оплаты

Если по сути договоры разные, то мне кажется правильней использовать «Шаблоны задач». А вот удобно или не удобно — это не много другая задача.

А вот с оплатой это очень хороший аргумент. Приведу скриншот с другой системы Pyrus.com на который мы раньше работали. Конструктор формы там, мне кажется, лучше. И сама форма получается более функциональней (опциональней). Планфиксу стоило бы присмотреться к ней.

Действительно, на текущий момент это можно сделать только при помощи разных шаблонов для каждого из вариантов (и подваринтов) задачи. Минусы описаны правильно: много шаблонов, сложно выбирать нужный из обширного списка при создании задачи. А каждый подвариант (вроде того, что в примере с оплатой/предоплатой) либо увеличивает количество неиспользуемых полей в шаблоне, либо увеличивает количество самих шаблонов (отдельно для оплаты, отдельно для предоплаты и т.д).

Что касается изменения подхода к настройке форм и, в частности, включения в них условных полей, то это хоть и сложный, но обсуждаемый вопрос. Тут надо понимать, что дело не только в интерфейсе настройке — сейчас задачи, созданные по разным шаблонам, отличаются друг от друга наличием разных полей. То есть, затрагивается структура внутреннего хранения данных в системе, а это всегда больно переделывается — а значит, нужны серьезные на то основания. При этом сам текущий конструктор шаблонов в плане удобства нам не нравится и мы давно подумываем сменить его на другой — поэтому примеры удачных интерфейсных решений, используемых в других системах, нам интересны.

Еще один момент, который мне пока непонятен — сейчас шаблон задачи является удобным идентификатором ее типа, это широко используется в фильтрах (отобрать только задачи определенного типа) и автоматических сценариях (разные сценарии для задач разного типа). Если свести много шаблонов в один, изменяющийся в зависимости от выбранных полей, что будет служить таким идентификатором? Первое, что приходит в голову — условие «содержит значение в поле » (например, содержит значение в поле «предоплата» — значит это предоплата). Но так сразу увеличивается сложность условий (и, соответственно, падает удобство их восприятия и скорость отбора данных), если искомый тип задачи находится в глубине дерева вариантов — то есть, если нужно найти задачу в которой поле такое-то содержит значение, и в поле таком-то есть значение, и в поле таком-то. и так далее. И вот тут непонятно, будет ли это в итоге удобнее по совокупности факторов, чем текущий подход с отдельными шаблонами.

За пример с Пирусом спасибо, он хорошо показывает, как может быть настроено простое условие. А что касается более сложных, есть еще какие-то механизмы? Или все строится только на этом варианте настройки, просто одно «условное» поле может ссылаться на другое такое же, и на этом строятся сложные варианты поведения формы? Если второе, то есть ли опыт построения таких сложных форм? Хочется заранее понять, насколько удобно работать с таким подходом в сложных случая, как воспринимаются мозгом эти «ссылки на ссылки», есть ли визуальное понимание, как в итоге будет выглядеть форма для того или иного случая?

Скрывать ненужные поля шаблона задачи — в зависимости от значения кастомного пол

Столкнулись с одним неудобством:
Мы работаем с однотипными задачами. В зависимости от значения кастомного поля «Тип задачи» должны выводиться разные поля. Для одного типа задач достаточно 3-х полей, для другого — порядка 10-ти.

Приходится создавать неоправданно большое количество однотипных шаблонов.
Хотя разница между этими шаблонами — только в количестве выводимых на обозрение пользователя полей на основной панели шаблона!

Наше предложение — дать возможность скрывать ненужные поля шаблона задачи в зависимости от значения кастомного поля (или системного поля Статус).

Вывод разных представлений в Yii2 в зависимости от значения поля в базе данных

В таблице competition (и в соответствующей ей модели Competition ) есть поля id , name , status . Во views/index.php стандартного CRUDа, созданного Gii, выводится список соревнований. Мне нужно, чтобы при клике на view/create/update в зависимости от поля status открывались разные виды в зависимости от типа соревнований — то есть для международных — один, для российских — второй и т. д. Скажите, как это реализовать в Yii2? В контроллере проверку поставить? (пока только это приходит в голову, но не очень понимаю как). Буду благодарен за развернутый ответ и за ссылки, где почитать.

1 ответ 1

В контроллере получаете запись из БД и проверяете статус. Далее в зависимости от статуса рендерите нужное представление. Что здесь сложного?

Топ-пост этого месяца:  Юзабилити
Добавить комментарий