这是过滤频道条目加载的最有效方法吗?我想显示没有注释且不粘的条目。我正在使用此代码。
{exp:channel:entries channel="{segment_3}" status="open" orderby="date" disable="categories|category_fields|member_data|pagination"}
{if comment_total == "0" AND sticky == 'n'}
...
{/if}
{/exp:channel:entries}
干杯 利
答案 0 :(得分:3)
可能使用条件变量。但这可能会带来比你需要的更多的结果。另外,您将无法准确使用{count}
(可能不是您的问题)。
另一种不使用条件变量的方法,只是在你想要的结果之后直接进行,而只是你想要的结果,就是使用Query Module
{exp:query sql=
"SELECT title
FROM exp_channels
JOIN exp_channel_titles ON exp_channels.channel_id = exp_channel_titles.channel_id
WHERE exp_channels.channel_name = '{segment_3}'
AND exp_channel_titles.status = 'open'
AND exp_channel_titles.sticky = 'n'
AND exp_channel_titles.comment_total = 0"
}
<li>{title}</li>
{/exp:query}
如果您需要访问一堆自定义字段,这可能会变得乏味,但这是获得所需结果的有效方式。
答案 1 :(得分:0)
Sticky是条目循环中的可用参数,因此您可以通过简单地添加sticky =“no”来过滤条目循环中的至少该元素,但遗憾的是,注释不是可用参数,因此Alex的建议可能如果您的要求非常简单,那么这是最好的选择。但是,如果您需要访问大量自定义字段,则可能有点棘手。因此,您必须根据循环中的需要决定采取何种方法。