日期:2017-04-01 阅读:4943
dmandwp系统 - wordpress系统和DM系统区块建站>>
前面讲过覆写内容类型>
这里,我们讲下覆写views:
有时,我们可以通过views的后台来覆写,比如加css的class。
或是覆写字段的输出。
只有当这些不能实现时,我们才开始使用覆写veiws文件。
参考下面的文档
http://redcrackle.com/blog/drupal-8/theme-views-templates (可能要翻墙) 查看代码>
http://www.maged.me/blog/drupal-8-override-views-field-template-twig
https://api.drupal.org/api/drupal/core!modules!views!views.theme.inc/group/views_templates/8.2.x
------------------------
简单的来说,规则如下
[base template name]--[view machine name]--[view display id].html.twig
[base template name]--[view machine name]--[view display type].html.twig
[base template name]--[view display type].html.twig
[base template name]--[view machine name].html.twig
[base template name].html.twig
--------
base template name包括:
可以简单的更多为三层 结构,
在core\modules\views\templates(或stable主题里)里可以查到:
第一层:views-view.html.twig
第二层:格式:views-view-unformatted.html.twig
其中unformatted可能是list或table或grid
第三层:显示:可以是content(可以用显示模式)或是字段,如果是字段则是views-view-fields.html.twig
对于views-view-field.html.twig,则是:
views-view-field--{views machine name}--{page or block machine name}--{field name}.html.twig
-------------
[view machine name]是当前views的机器名。
[view display type]一般是block或page
因为一个views下,可能有多个display,所以它有id。
[view display id]则是views display的机器名。
-------
在views-view-fields.html.twig里,可以这样输出字段:
{{fields.title.content}}
{{fields.body.content}}
--------------------------