Переопределение 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(или после аналогичных соглашений об именовании) является не возможно / не поддерживается?

NMC
источник

Ответы:

4

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

codexmas
источник
Не совсем уверен, что я понимаю ... Более узкие файлы 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, как вам нравится.

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