#plugins #content-management-system #matrix #expressionengine
#Плагины #система управления контентом #матрица #expressionengine
Вопрос:
Есть ли способ объединить строки внутри двух отдельных полей матрицы?
У меня есть галерея, где у меня есть фотографии и видео. Прямо сейчас у меня есть два поля матрицы, photo и video с типом ячейки file и типом ячейки text. В моей галерее сначала отображаются фотографии, а не видео. Есть ли какой-либо способ объединить эти типы полей, чтобы порядок фотографий и видео был объединен?
Комментарии:
1. У меня была написана большая часть ответа, когда я понял, что, возможно, неправильно истолковал ваш вопрос. Вы хотите навсегда объединить эти два поля в одно поле матрицы в EE? Или просто объединить содержимое этих двух полей при отображении их во внешнем интерфейсе?
2. Объединение содержимого двух полей при отображении во внешнем интерфейсе.
3. Я предполагаю, что мой следующий вопрос тогда был бы: почему бы просто не объединить эти поля? Есть ли причина, по которой они должны быть отдельными?
4. У них есть два отдельных типа носителей. Одно поле — это источник изображения, следующее поле — ссылка на видео. Итак, мне нужно объединить два типа данных, файл и текстовое поле. Я думал о том, чтобы иметь два столбца (изображение и текст) и просто оставить один или другой пустым в зависимости..
5. Я бы сказал, что это более разумный маршрут, а также менее запутанный для вашего клиента. Вы могли бы пометить их как «Загрузить изображение» для первого столбца, затем «ИЛИ вставить ссылку на видео» для второго. Для объединения двух полей потребуется либо выполнить кучу PHP в вашем шаблоне, либо выполнить несколько пользовательских запросов с помощью модуля запросов.
Ответ №1:
Лучше всего использовать одно поле матрицы как для фотографий, так и для видео. Вы могли бы пометить столбцы как «Загрузить изображение» для первого столбца, затем «ИЛИ вставить ссылку на видео» для второго.
Объединение двух полей во время рендеринга шаблона потребует либо выполнения множества PHP в вашем шаблоне, либо выполнения некоторых пользовательских запросов с помощью модуля запросов.