当我向expressionengine url添加第三个段时,exp:channel:entries会停止返回结果

Lig*_*per 3 channel segments expressionengine

我有一个问题,其中url中的第三个"段"将导致所有 exp:channel:entries停止返回结果.

示例网址:
工作正常: siteurl.com/index.php/one/two
不起作用: siteurl.com/index.php/one/two/three

示例条目拉:
{exp:channel:entries channel ="my_channel"category ="18"sort ="asc"search:show_toggle ="= SHOW"orderby ="sort_order"}

这是我不知道的某种注射.我已经搜索了文档,从我可以告诉我的类别规范应该覆盖url中的任何内容.我可能会搞砸了,但我可以做些什么.我可以在通道模块中修改一些东西吗?

rjb*_*rjb 5

如果不在Channel Entries标记中使用动态标记参数,ExpressionEngine 期望 URL Segment Variable包含条目的条目IDURL标题.

由于第三个URL段/index.php/one/two/three不是数字条目ID或URL标题,因此您的Channel Entries查询不包含任何信息.

通过设置,dynamic="no"您将确保列表不受URL中传递的任何内容的影响.

由于您编写了一个非常具体的 Channel Entries Query,因此请务必添加dynamic="no"到您的{exp:channel:entries}标记循环中,让ExpressionEngine 忽略URL Segments,而是使用您提供的参数:

{exp:channel:entries channel="my_channel" dynamic="no" ...}
    ...
{/exp:channel:entries}
Run Code Online (Sandbox Code Playgroud)

此外,通过向代码添加简单的条件变量,您将能够在未返回结果时看到消息:

{exp:channel:entries channel="my_channel" ... }
    {if no_results}Sorry, No Results{/if}

    ...
{/exp:channel:entries}
Run Code Online (Sandbox Code Playgroud)

深入了解ExpressionEngine的基本URL概念和URL段对于理解和解决此类问题非常重要.