今天,白龙网梳理这篇文章主要解决drupal9新闻列表标题、内容、更多等功能与样式的整体输出。
其实,回顾下白龙网之前写过的《drupal9视图区块“标题、内容、更多”怎么输出?》,你会发现,就已经解决过新闻列表标题、内容、更多等功能的输出;再看《Drupal8.7.6如何覆写视图区块的模板?》这篇文章,你会发现,就已经解决了新闻列表样式的打包输出。
因此,把上面这两篇文章的精华部分结合在一块,即可实现新闻列表标题、内容、更多与样式的完美输出。
实践操作发现,新闻列表标题通过配置区块打印成功了,动态内容与“更多功能”通过VIEW视图正常输出了。如果标题、动态内容分别单独打印的,那么样式是正常的,但是这样的操作比较繁琐,不符合drupal9的规则玩法。
一般来说,对于有标题、动态内容、更多这样的功能模块,drupal9可用一个变量{{page.list_news}}同时输出这3个功能的,而不是低级的用静态区块分别输出标题、更多,再用动态视图动态输出多条内容。然而,这个时候,你会发现,变量{{page.list_news}}打印的内容样式是错乱的。解决的方法也是有的,一是借助中间模板,添加动态内容的样式,实现动态内容与标题部分代码无缝对接,原样输出;二是使用{{rows}}替代视图输出的动态内容。
例如,在模板views-view-unformatted--ViewName--block_1.html.twig中添加动态内容的样式、实体,而动态实体用{{rows}}代替,这样就可以把动态内容以及样式全部打印输出,并无缝对接到标题区块上。