2009-10-30 179 views
5

我想在視圖中主題單個「顯示」。我想要實現的是對行的呈現方式進行一些控制(例如,打印行中的字段,並可能在其間添加一些文本,以及一些div用於樣式目的)。我已經尋找了模板編輯的日子。我甚至使用過主題開發人員和視圖的主題信息,但沒有運氣。全部Drupal主持一個視圖的顯示

我的視圖的名稱是日曆,並且有一堆顯示。任何人都可以告訴我該怎麼做才能定製這個特定顯示中的行嗎? Drupal是否提供了這種靈活性?

我在日曆視圖中顯示的姓名和頭銜是:

Name: List view 
Title: List 

下面是行的主題風格信息:

Row style output: views-view-fields.tpl.php, views-view-fields--calendar.tpl.php, views-view-fields--page.tpl.php, views-view-fields--calendar--page.tpl.php, views-view-fields--calendar.tpl.php, views-view-fields--page-1.tpl.php, views-view-fields--calendar--page-1.tpl.php

有人能告訴我如何


編輯:
(一些額外的信息張貼在答案的OP)

我使用的Drupal 6.我不知道什麼頁面1表示這裏的下面是顯示的名單上有在此視圖:

Defaults 
Calendar page 
Calendar block 
Month view 
Week view 
Block view 
Upcoming 
List view 
Ongoing Block Feed 

如您所見,其中沒有一個字符串爲「page-1」。我編輯了views-view-list.tpl.php,這是「style output」列出的文件之一。我可以訪問的唯一變量是行,這是一個包含所有單獨渲染「行」的數組。就像我之前提到的那樣,這些行是在其他地方生成的,並且已經包含渲染的字段。我如何定製這些行?

回答

0

您是否在template.php文件中添加了需要的自定義代碼?我知道,在Drupal 5,你需要把代碼中的3個文件:

的template.php 意見,意見字段 - [名] .tpl.php 意見,意見字段 - [名]的.css

你也可以試試: http://drupal.org/node/128741

6

你不應該添加任何的template.php如果您正在使用Drupal的6

,你有可能的主題文件,以便有云列表從最不具體到最具體。例如,第一個views-view-fields.tpl.php將應用於您網站上所有視圖的所有字段。最後一個views-view-fields-calendar-page-1.tpl.php只適用於「日曆」視圖的「頁面1」顯示,所以我猜這就是你想要的那個覆蓋。

當您在視圖中點擊主題信息時,提供的顯示(「第1頁」或其他)適用於您當前所在的顯示。因此,如果您想在特定顯示中顯示主題字段(例如,「日曆」視圖的「塊狀塊」顯示),則可以單擊左側垂直菜單中的「塊狀塊」顯示,然後單擊主題該顯示的信息。

因此,一旦你找出你想使用哪一個,在你的主題目錄中創建一個新文件,然後複製當前主題文件的內容(點擊主題上的主題文件部分的名稱信息頁面)添加到您的新主題文件中,然後編輯。請記住,如果您覆蓋主題文件,則必須在主題信息頁面中單擊「重新掃描模板文件」才能使新文件生效。

希望有幫助!

+0

不要說'試着讀取UI顯示的提示視圖'。 對不起,我不想聽起來很刺耳,但它不言自明。 – 2009-12-06 06:33:26

+0

同意。但重申沒有錯。無論如何,視圖文檔是一個臭名昭着的鈍。 – theunraveler 2009-12-07 14:30:13

1

顯示器僅在表面上具有自定義名稱,但在內部它們由id引用。 'page_1'將是您首次顯示'page'類型的顯示(塊將變爲'block_ [id]',提要將變爲'feed_ [id]'等等)。

因此,如果您按順序發佈您的顯示器,'page_1'將是'日曆'顯示。您可以查看視圖配置頁右側顯示列表中顯示條目下的鏈接。他們將擁有名爲'#views-tab-page_1','#views-tab-block_1'的錨點等。

至於覆蓋模板,請注意,如果您添加一個新的* .tpl.php文件,您需要reset the theme registry,以便Drupal「拾取」它。

0

回答第二個問題:樣式輸出不是您要查找的模板。行樣式是編輯行中字段排列方式的模板。如果要編輯特定字段輸出其內容的方式,則應編輯特定的字段模板。

相關問題