The Programmatic SEO page field
3 min read
The Programmatic SEO page field (type pseo_page, in the Relational group of the field type picker) stores a link to one generated page. Use it to say "this hotel belongs to this city page", "related guide", or to link a normal post to the page that describes its topic.
It is a Pro field type (it needs the Programmatic SEO feature, available on the Pro, Business and Agency plans). For the other relational types see Relational fields.
Add the field
- In Field Groups add a field and choose type Programmatic SEO page.
- In Type settings choose the Programmatic SEO task: "Editors can only pick pages this task generated." The first task is preselected.
- Save the field group.
If no task is chosen the edit screen shows "Choose a Programmatic SEO task in this field's settings before editors can pick a page."
Picking a page
On the edit screen the field is a search picker with the usual relational look (one item). It searches the live pages of the chosen task by URL or title, 20 at a time ("Porto — /guides/porto"). Only one page can be selected and only pages of the configured task are accepted: a posted ID from another task, or a page that does not exist, is stored as empty. Editors need the edit_posts capability. The field is not offered in front-end forms.
What it prints and returns
Where | Result |
|---|---|
Printed through | A link to the page with its title: |
| The page ID (an integer), for example |
The page is hidden, removed, moved, shadowed by real content or converted | The formatted output is empty (nothing is printed); the stored ID stays |
The page is live again (shown, or restored by a run) | The link prints again |
Because the stored value is the page's ID, the link follows the page: if the page's URL or title changes, the link updates. If the page is deleted the field prints nothing.
Importing values
When a CSV or a field import fills the field, a cell can contain the page ID or the page's exact title (case-insensitive). The page must belong to the configured task and be active. Anything else is not matched and the value is skipped.
Good to know
- The field is stored as a
BIGINT UNSIGNEDcolumn that matches the page ID of the generated pages table. - Deleting a task deletes its pages, so fields pointing at them print nothing afterwards.
- A page converted to a post is no longer a generated page: the field prints nothing for it. Use a Post object field for the real post after converting.
- After a license expires the field type is shown as locked and existing values stay unchanged; see Limits and plans.
Still stuck? Contact support