Переопределение views-view-fields.tpl.php


12

Можно ли переопределить views-view-fields.tpl.phpфайл для определенного вида? Я попытался создать views-view-fields--view-name.tpl.phpфайл и перепроверил файлы шаблона и очистил кэш без эффекта. Аналогичная проблема, о которой сообщалось здесь: http://drupal.org/node/1137942

Хотя, если я назову файл views-view-fields.tpl.phpв папке моей темы, новый файл будет применен при повторной проверке файлов шаблона. Но это будет означать, что это относится ко всем взглядам.

Я заметил, что views-view-fields.tpl.php НЕ является одним из файлов, перечисленных на экране информации о теме, который представляет Views.

Может кто - то окончательно сказать мне , что переопределение этого файла путем создания views-view-fields--view-name.tpl.php(или после аналогичных соглашений об именовании) является не возможно / не поддерживается?

Ответы:


4

Порядок приоритета для соглашения о присвоении имен файлам tpl - от самого широкого до самого узкого в своей области. Таким образом, переопределение поля для всех представлений является одной комбинацией, но вы не можете изменить порядок, как вы пытались, только перейти к более конкретным. Для достижения того, что вы хотите, объект представления доступен в созданном вами tpl, поэтому можно использовать оператор if () {} else {}, чтобы отфильтровать представления, для которых требуется переопределение, проверив имя / отображение вид.


Не совсем уверен, что я понимаю ... Более узкие файлы TPL имеют приоритет над более широкими файлами TPL, правильно? Итак, views-view--archive.tpl.phpчто является более узким, имеет приоритет над views-view.tpl.phpболее широким?
NMC

Правильно, и область действия ограничена «набором» файлов TPL. Обратите внимание , как они группируются вместе, один набор TPL предложений в поле, один для представления и т.д.
codexmas

1
Итак, мне интересно, почему мой более узкий views-view-fields--view-name.tpl.phpне принимается во внимание / кажется не имеет приоритета по умолчанию, шире views-view-fields.tpl.php?
NMC

1
Это не фактический шаблон, предоставляемый представлениями. Вы не можете изготовить комбинации элементов представлений для создания собственных файлов TPL. Существуют только те, которые перечислены, и они имеют приоритет. Поместить предложенную мной логику в файл views-view-fields.tpl.php - самый простой способ сделать то, что вы хотите.
codexmas

1
Хорошо, это был ответ, который я искал. Я просто хотел убедиться, что модуль Views на самом деле не поддерживает переопределение views-view-fields.tpl.phpфайла через обычные соглашения об именах.
NMC

7

Для представлений 3 - убедитесь, что в поле «Формат-> Показать» выбрано «Поля» (НЕ содержимое)

Затем перейдите к просмотру и найдите «Тема: Информация», где вы можете увидеть список всех используемых в настоящее время шаблонов (BOLD) и файлов шаблонов кандидатов. Найдите файл ведьмы tpl.php, который вы хотите использовать.

Перейдите в каталог модулей views и в папке «theme» вы сможете найти базовый файл tpl.php для выбранного вами файла. Скопируйте этот файл в папку вашей темы. Переименуйте его в соответствии с соглашением об именах, приведенным в теме: Информация.

Пересканируйте файлы шаблона. Если все в порядке, views-view-fields.tpl.php больше не следует выделять жирным шрифтом. Выделенный жирным шрифтом должен быть ваш недавно созданный файл tpl.php, тогда вы можете создать новый файл tpl.php, как вам нравится.


Спасибо за напоминание; У меня есть выбранные поля, а не содержание. views-view-fields.tpl.phpэто не один из файлов, перечисленных в разделе «Тема: информация», поэтому мне было интересно, смогу ли я переопределить это так же, как и другие файлы шаблона.
NMC

@ Nebojsa большое спасибо за этот ответ. Я ветеринар D6 / V2 и часами стучал головой по столу, пытаясь заставить это работать.
Ицньютон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.