如果给定 ID 列表,让 getResources 不显示未发布的 ID 的方法
Way to have getResources not show unpublished IDs if given a list of IDs
我有一个 SQL 查询,它吐出一组 ID。我将这些 ID 提供给 getResources 调用:
[[getResources?
&parents=`4`
&resources=`' . $ids . '`
&limit=`0`
&showHidden=`1`
&tpl=`PropItemTPL`
&sortby=`menuindex ASC, id`
&sortdir=`ASC`
&includeContent=`1`
&includeTVs=`1`
&processTVs=`1`
&showUnpublished=`0`
]]
问题是这会显示所有 ID,即使它们未发布。
我已经包含了 &showUnpublished='0'
但这没有区别。
有没有人知道是否有办法使用 getResources 进行这项工作?还是我需要重写 PHP 和 MySQL?
您可以添加 "where" 子句作为您的参数之一,将结果集缩小到仅已发布的文档:
[[getResources?
&parents=`4`
&resources=`' . $ids . '`
&limit=`0`
&showHidden=`1`
&tpl=`PropItemTPL`
&sortby=`menuindex ASC, id`
&sortdir=`ASC`
&includeContent=`1`
&includeTVs=`1`
&processTVs=`1`
&where=`{"published" : true}`
]]
资源参数与其余的选择逻辑是分开的。如果您在资源 属性 中包含资源的 ID,则无论任何其他选择属性如何,它都会被包含。
试试 pdoResources,我认为你不会遇到这个问题。它也比 getResources 快得多。
我有一个 SQL 查询,它吐出一组 ID。我将这些 ID 提供给 getResources 调用:
[[getResources?
&parents=`4`
&resources=`' . $ids . '`
&limit=`0`
&showHidden=`1`
&tpl=`PropItemTPL`
&sortby=`menuindex ASC, id`
&sortdir=`ASC`
&includeContent=`1`
&includeTVs=`1`
&processTVs=`1`
&showUnpublished=`0`
]]
问题是这会显示所有 ID,即使它们未发布。
我已经包含了 &showUnpublished='0'
但这没有区别。
有没有人知道是否有办法使用 getResources 进行这项工作?还是我需要重写 PHP 和 MySQL?
您可以添加 "where" 子句作为您的参数之一,将结果集缩小到仅已发布的文档:
[[getResources?
&parents=`4`
&resources=`' . $ids . '`
&limit=`0`
&showHidden=`1`
&tpl=`PropItemTPL`
&sortby=`menuindex ASC, id`
&sortdir=`ASC`
&includeContent=`1`
&includeTVs=`1`
&processTVs=`1`
&where=`{"published" : true}`
]]
资源参数与其余的选择逻辑是分开的。如果您在资源 属性 中包含资源的 ID,则无论任何其他选择属性如何,它都会被包含。
试试 pdoResources,我认为你不会遇到这个问题。它也比 getResources 快得多。