Channel: restriction by group and visibility [ '|', ('visibility', 'in', ['public', 'partial']), '&', ('group_ids', 'in', [g.id for g in user.groups_id]), ('visibility', '=', 'private')] Channel: public: published only [('website_published', '=', True)] Slide: channel-related group restriction [ '|', ('channel_id.visibility','in', ['public','partial']), '&', ('channel_id.group_ids', 'in', [g.id for g in user.groups_id]), ('channel_id.visibility', '=', 'private')] Slide: public: published only [('channel_id.website_published', '=', True), ('website_published', '=', True)]