Publish action
A type of processing action defined in PageSeeder configuration files that allows users to publish content to external systems or locations. It is one of several action types that can be configured to extend PageSeeder's publishing capabilities.
Overview
Publish actions are defined using <action> elements with type="publish"in the following configuration files:
publish-config.xml– controls publishing across groups, folders, documents, or search results in a projectdocument-config.xml– controls publishing for specific document typesurl-config.xml– controls publishing for specific URL types
Action structure
A publish action consists of:
<action type="publish">– the parent element that defines the action type<source>– specifies what content can be published (required inpublish-config.xml)<target>– defines one or more publishing targets that correspond to Ant script targets
Source element
In publish-config.xml, each publish action must specify a source:
<source type="folder" />
Valid source types include:
group– publish an entire groupfolder– publish a folderbatch– publish search resultsdocument– publish a specific document (requiresextensionattribute)publication– publish from publication root documents (requires PageSeeder v6.2+)
Target element
Each target defines a specific publishing destination or process:
<target name="psml-to-website" role="contributor">
<description>Publish to website</description>
<param name="depth"
label="Depth of XRefs to publish"
type="number"
min="1"
max="8" />
</target>Key attributes:
name– must match the Ant script target name (required)role– minimum role required (contributor|manager|approver)perspective– controls visibility (developer|none)override– if true, replaces default targets with the same name
Parameters: Targets can include <param> elements to allow users to customize the publishing process with options like depth, filters, or destination settings.
Example
Publishing a folder to a website with depth control:
<publishing>
<action type="publish">
<source type="folder" />
<target name="psml-to-website">
<description>Publish to website</description>
<param name="depth"
label="Depth of XRefs to publish"
type="number"
min="1"
max="8" />
</target>
</action>
</publishing>Related action types
export– exports content to different formats (PDF, DOCX, etc.)process– performs custom processingupload– uploads content to PageSeeder