По логике он должен формировать условие для запроса со всеми исключениями и далее уже разбираться с полученным документами. Именно так и работает pdoMenu. [[!pdoMenu?
&parents=2
&level=2
&showLog=1
&checkPermissions=list
]] На сайте с 17000 товаров выдаёт вот такой лог работы: 0.0056009: pdoTools loaded
0.0000551: xPDO query object created
0.0007398: Added selection of modResource: SQL_CALC_FOUND_ROWS id
, type
, contentType
, pagetitle
, longtitle
, description
, alias
, link_attributes
, published
, pub_date
, unpub_date
, parent
, isfolder
, introtext
, content
, richtext
, template
, menuindex
, searchable
, cacheable
, createdby
, createdon
, editedby
, editedon
, deleted
, deletedon
, deletedby
, publishedon
, publishedby
, menutitle
, donthit
, privateweb
, privatemgr
, content_dispo
, hidemenu
, class_key
, context_key
, content_type
, uri
, uri_override
, hide_children_in_tree
, show_in_tree
, properties
0.0032482: Processed additional conditions
0.0037792: Added where condition: modResource.parent:IN(2,12,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29), modResource.published=1, modResource.hidemenu=0, modResource.deleted=0, modResource.context_key=web
0.0001431: Sorted by modResource.menuindex, ASC
0.0004220: SQL prepared "SELECT SQL_CALC_FOUND_ROWS modResource
.id
, modResource
.type
, modResource
.contentType
, modResource
.pagetitle
, modResource
.longtitle
, modResource
.description
, modResource
.alias
, modResource
.link_attributes
, modResource
.published
, modResource
.pub_date
, modResource
.unpub_date
, modResource
.parent
, modResource
.isfolder
, modResource
.introtext
, modResource
.content
, modResource
.richtext
, modResource
.template
, modResource
.menuindex
, modResource
.searchable
, modResource
.cacheable
, modResource
.createdby
, modResource
.createdon
, modResource
.editedby
, modResource
.editedon
, modResource
.deleted
, modResource
.deletedon
, modResource
.deletedby
, modResource
.publishedon
, modResource
.publishedby
, modResource
.menutitle
, modResource
.donthit
, modResource
.privateweb
, modResource
.privatemgr
, modResource
.content_dispo
, modResource
.hidemenu
, modResource
.class_key
, modResource
.context_key
, modResource
.content_type
, modResource
.uri
, modResource
.uri_override
, modResource
.hide_children_in_tree
, modResource
.show_in_tree
, modResource
.properties
FROM modx_site_content
AS modResource
WHERE ( modResource
.parent
IN (2,12,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29) AND modResource
.published
= 1 AND modResource
.hidemenu
= 0 AND modResource
.deleted
= 0 AND modResource
.context_key
= 'web' ) ORDER BY modResource.menuindex ASC "
0.0041840: SQL executed
0.0001559: Total rows: 384
0.0030110: Rows fetched
0.1772320: Checked for permissions "list"
0.0100720: Returning raw data
0.0012240: Tree was built
0.0005331: Start template tree
0.0042419: Created inline chunk with name "ad22a6773e8643db35baf6e56fa79c5d"
0.0067301: Created inline chunk with name "dc6d3757597108f87f958f868cf1591a"
1.3126249: End template tree
1.5312409: Total time
31 981 568: Memory usage