Как да направя шаблонен файл за конкретен дисплей в изглед, когато имам няколко дисплея от един и същи тип

Имам изглед, който използвам за статии на първа страница (изглед, наречен Frontpage Top).

в един БЛОКОВ дисплей (с име: Топ история) той просто избира най-новата статия. в другия дисплей BLOCK (с име: Top 5 Stories) той избира 2-ра-6-та последна.

Трябва да направя шаблон за единствената водеща история и след това още един, за да покажа останалите 5.

този шаблон: views-view--Frontpage-Top.tpl.php работи, но се използва и за ДВАТА блока.

Единственият начин, по който знам как да направя това, е с множество изгледи, но те са толкова тясно свързани, че бих искал да ги запазя в един. Това изобщо възможно ли е и ако е така как ще изглежда името на файла?

изглежда не е документиран във Views2 ( http://drupal.org/node/352970 ) и това ( Drupal: Views, can the дисплеите имат различни стилове за изглед? ) е близко, но не е същото.

Ако „правилният“ начин е да се създадат множество изгледи, аз съм добре с това, но не мога да намеря ресурс, който казва това, и бих предпочел да не го правя, ако не се налага.

Благодаря!


person Jerzakie    schedule 02.02.2012    source източник


Отговори (1)


Всеки дисплей може да бъде тематичен независимо от друг. В администратора на Views отидете до дисплея, който искате да персонализирате, и щракнете върху „Тема: Информация“. Това ще ви покаже всички възможни шаблони и опции за именуване, които имате. Вижте изображението по-долу:

Изгледи Тема

Ако виждате на изображението по-горе, можете да създадете шаблон за конкретни дисплеи в изглед. Например, всичките ми дисплеи в този изглед са дисплеи на страници. Така че, за да стилизирам дисплея „Визитки“ (вторият дисплей), мога да използвам „views-view-grid--Vendors--page-2.tpl.php“, за да променя Извеждане на стил. страница-2 указва, че искате шаблонът да управлява показването на вашата 2-ра страница в този изглед.

Ако се нуждаете от повече информация, разгледайте Документация за темите на Views 2

person Laxman13    schedule 02.02.2012
comment
За съжаление това не решава проблема. Имам нужда от начин да посоча действителния ДИСПЛЕЙ по име, а не само VIEW и типа на дисплея. - person Jerzakie; 02.02.2012
comment
Моля, вижте моите редакции. Всъщност можете да имате шаблон за конкретен дисплей в изглед. Не забравяйте да сканирате повторно файловете на шаблона, за да работи. Въпроси, уведомете ме - person Laxman13; 02.02.2012
comment
добре, нека наречем изгледа MYVIEW, ДИСПЛЕИТЕ са и двата типа BLOCK, наречени BLOCK_A и BLOCK_B, трябва да мога да направя нещо като: views-view-MYVIEW-BLOCK_A.tpl.php (което би имало маркирането само за BLOCK_A показване в MYVIEW) views-view-MYVIEW-BLOCK_B.tpl.php (което би имало маркирането само за дисплея BLOCK_B в MYVIEW) тази конвенция не работи, но това е, което се опитвам да направя. Нямам странични резултати за този изглед. Опитвам се да поставя два ДИСПЛЕЯ тип БЛОК от един и същ ИЗГЛЕД на една страница и да ги стилизирам по различен начин. - person Jerzakie; 02.02.2012
comment
Разбирам. Показването на страницата беше просто пример. Същото важи и за блоковите дисплеи. Вижте новото изображение, което поставих в отговора си по-горе, това е екранна снимка на вашия пример. В името на файла на шаблона, което ви дадох по-рано, всичко, което трябва да направите, е да промените страницата, за да блокирате. Както казах, ако отидете на Тема: Информация, можете да видите всички налични имена на шаблони. - person Laxman13; 02.02.2012
comment
Значи имената са в цифров ред въз основа на позицията им в изгледа? BLOCK_A = views-view--MYVIEW--block-1.php.tpl, BLOCK_B = views-view--MYVIEW--block-2.php.tpl и ако добавя BLOCK_C ще бъде views-view-- MYVIEW--block-3.php.tpl ? - person Jerzakie; 02.02.2012
comment
Това трябва да е така, подредени по тип дисплей и кога са създадени. Въпреки това, ако погледнете в Тема: Информация, както казах, ще ви каже кой номер да използвате, така че не е нужно да гадаете. - person Laxman13; 02.02.2012
comment
Да, виждам разликата там. Ще го пробвам! - person Jerzakie; 02.02.2012
comment
Това проработи. Проблемът, който изпитвах, беше, че имах друг файл, който заместваше тези (друг файл с шаблон), изтрих го и направих файловете -1 и -2 и ето, че работи. Много благодаря. Това е наистина странна конвенция, която те използват. Чудя се защо не ви позволяват да посочите действителния дисплей по име, вместо да използвате този индекс. Благодаря отново! - person Jerzakie; 03.02.2012