2017-05-26 73 views
0

在Drupal 8上,我試圖覆蓋使用視圖創建的塊的模板。到目前爲止,我的文件名爲block - views-block - xxx.html.twig讓我可以訪問視圖字段。如何覆蓋使用視圖創建的塊模板

我得做一些像content.view_build['#rows'].0['#rows']這樣的行,這是非常糟糕的,但我找不到任何其他方式。另外,我必須在視圖設置上設置「顯示內容」。

我無法讓傳呼機工作。從Drupal閱讀文檔我找不到任何線索。

回答

0

打開枝條調試器(他顯示,在檢查工具中,所有模板現在使用什麼)。 在檢查工具,你看到這樣的內容:

- html--internalviewpath.html.twig 
- html--node--id.html.twig 
- html.html.twig 

然後,只需使用此名稱創建模板添加自定義您的架構。例如:html--node--id.html.twig。檢查你可以聽到,你看到:

- html--internalviewpath.html.twig 
+ html--node--id.html.twig (now twig use this template) 
- html.html.twig 
0

我認爲你應該重寫視圖模板而不是視圖塊模板。

查看模板命名約定可以在here找到,您可以使用的變量列表爲here。您現在可以將分頁器,標題,行和其他視圖元素放在模板的不同部分中。

如果您需要覆蓋視圖行的內容,則需要根據您在視圖中顯示內容的方式採取相應操作。
如果您使用內容的預覽視圖,則可以覆蓋內容預告模板,如「node - content_type - teaser.html.twig」,或者如果您在視圖中使用字段,則必須覆蓋字段模板每個領域。