# Choose what gets published

Understand the shared eligibility rules that keep private and excluded content out of public outputs.

Understand the shared eligibility rules that keep private and excluded content out of public outputs.

## How it works

`Cybermaps\SEO\PublicationEligibility` supplies a shared base resolver and channel-specific inclusion decisions to the sitemap repository, AI publication inventory, text chunks, IndexNow, and content reports. It evaluates:

1.  WordPress publication state, public object type, password protection, URL, and site search-engine visibility;
2.  supported Genesis and Mai Theme noindex, canonical, redirect, archive, term, author, and home-page signals;
3.  supported singular noindex and canonical metadata from active Yoast SEO, Rank Math, and All in One SEO installations;
4.  Cybermaps global and per-resource exclusions; and
5.  surface-specific sitemap or AI inclusion controls.

A redirect or canonical pointing away from the resource makes that resource ineligible. Each result retains reason keys and source signals for diagnostics and reports.

Content Intelligence Reports use the dedicated `report` channel. It retains the base public/search indexability decision and extension filters, but does not treat an XML-only exclusion, AI-only exclusion, or Content Discovery Strategy Publish-off group as a reason to hide an otherwise search-indexable resource from content review.

Developers can add compatibility adapters with `cybermaps_seo_compatibility_adapters` and filter the final typed result with `cybermaps_indexability_decision`.

`Cybermaps\Core\PublicationPostTypes` supplies the shared public post-type inventory to XML, AI, HTML, reporting, media-audit, status, and editor surfaces. It excludes `attachment` consistently; attachments can still be discovered as media belonging to an eligible page or post.
