抱歉,如果标题有点混乱,但这是 CMS Concrete5 特有的问题。
我正在开发一个新闻/媒体相关网站,该网站由一个主页组成,该主页具有 3 个单独的页面列表块,其布局如附件样机所示。
要使页面出现在特色页面列表中(突出显示为绿色),它需要将页面属性 is_featured 设置为 true。6 块页面列表(以红色突出显示)设置为显示所有页面,包括精选页面。两个页面列表都设置为按日期排序,最先显示最新的。
我遇到的问题是,当内容作者发布一个精选的新页面时,我会立即与 6 块页面列表左上角列出的同一页面重复。大概一天左右,随着新的“非特色”内容的添加,“重复”页面问题在列表中向下移动到第二页时就不再是问题了(我对红色块进行了分页)。
我正在使用标准的 Concrete5 页面列表块,并且有自定义模板,这些模板只是用于各种列表(精选、6 页和侧边栏列表)的 view.php 文件。
为了消除重复,我尝试在 6 页面模板的 view.php 中添加一些代码,这些代码将“过滤掉”过去 24 小时内发布的任何特色页面。虽然这确实有效,但我发现我当时的 6 页页面列表将只显示 5 页,而“过滤掉”页面的空白处。
我的问题是,有没有一种干净、更好的方法来防止页面列表之间的重复?我不想将页面列表设置为仅显示某些类别(因此没有任何重叠),但必须有一种方法来实现考虑到这个特定问题的东西?