Release Notes
These are the latest Content Publisher release notes.
We are rolling out today several new features, some previously experimental (and feature flagged), others are fully new to all users. This release covers the web dashboard (content.pantheon.io), our CLI (pcc), the Google Docs add-on as well as our SDKs – JS (v5.0.0), Drupal (v1.0.2) and WordPress (v1.2.7).
Here is the full list:
Content Publisher is transitioning to a more sophisticated authentication system. Until now, authentication in Content Publisher was fully based on the users’ Google Workspace account. This introduced limitations in many areas of the product. The new system we are rolling out is a major step forward:
- Authentication is now managed by the main Pantheon.io user management system, users can sign-up and sign in either with a Google Workspace account or using a standard login and password account. Users of the main Pantheon platform can use their existing account for that.
- Once authenticated in the system, users can connect their Google Workspace account(s) with the ability to connect several Google Workspace accounts..
- Once Google Workspace accounts are connected, the functionalities are exactly the same as with the previous authentication system.
The new system does not impact functionality, however returning users logging in after this release will have to first sign-in, then connect their Google Workspace accounts (see screencast if curious).
We introduced this exciting new capability previously as experimental, and are now rolling it out to all users. The Approval Workflow allows administrators to request mandatory approval for any content being sent for publishing by contributors. For more information on this feature, see our documentation page.
Dashboard users can now directly create a Content Collection in the web dashboard (instead of previously having to do this through the CLI). This was also experimental and has now been rolled out to all users.
We previously introduced the ability for dashboard users to manage their webhooks in the web interface directly. We are now improving the webhook management interface by providing a way for users to access their webhooks logs inside the dashboard, this can be extremely useful to troubleshoot publishing problems downstream.
We improved the Content Publisher CDN serving page assets (images, videos and others) to visitors (both from the documents body and the metadata fields). Now based on Imagor, it includes image optimization capabilities.
Content Publisher Next.js starter kit now supports Next.js version 15.
The release also includes several other enhancements and bug fixes.
We’re excited to announce a significant update to Content Publisher with lots of useful new capabilities. The release includes a new version of our back-end and admin interface, an update of our Google Docs add-on as well as a new version of our Javascript SDK (3.13.1)
Google Docs users can now apply styles from their website to content within their documents. This feature offers editors more flexibility, allowing them to use a broader range of styles than those offered by standard Google Docs styling. The design remains driven by your website's design system, enforcing the separation between content and presentation.
See it in action below:
As part of the Webstyles feature, Content Publisher now offers the option to convert tables in Google Docs into responsive tables or grids. This can help your tables display effectively across different screen sizes. To convert a table, apply the new "responsive table" style. (This conversion is best suited for certain table types and depends on their structure.)
We've added a new web interface in the admin panel, allowing collection managers to update collection settings such as name and URL, and set up webhooks for publishing events. This provides non-technical users with direct access to these settings, reducing the need to use the CLI for these tasks.
- Support for Google Tabs in our GQL API
- Image Text Wrapping support in Google Docs
- Proper Image Cropping
As well as a list of bug fixes and enhancements improving the overall editorial experience.
We released a new minor version of the service (back-end + admin interface + Google Docs add-on + JavaScript SDK 3.12.1 ).
This release includes bug fixes and minor enhancements, the main important ones being listed below:
- Various improvements to smart components user interface in Google Docs which improve both usability and stability.
- Add access to full page real-time preview for users not able to allow iFrame embedding of their website.
- Update GenAI augmented search and metadata suggestion default settings to Gemini 2.0 model.
- Add last published date and link for already published content in the Preview Editor. This lets users know if a content is actually being published for the first time or already live.
- Next.js Starter kit implement an infinite listing of articles in a collection as a more standard way to browse articles
- JavaScript SDK and Next.js starter kit introduce new Content Publisher CSS classes. See here for more information.
- Better management of empty lines in Google Docs, both in paragraphs and bulleted and numbered lists.
- Fix hyperlinks on inline images.
- Realtime update to the collection structure when used concurrently by different users to avoid conflicts on changing the content tree.
- Support for Google Docs document.api (this feature is still experimental and feature flagged, please contact us if curious) which unlocks several new capabilities such as
- Google docs tabs (experimental).
- Image Text wrapping (experimental).
- Automatic transformation of tables in responsive grids (coming soon).
- Use of Webstyles within Google Docs (coming soon).
- Many others
The release includes several other minor bug fixes and enhancements.
The new Image-Text-Wrapping support (experimental)
This release introduces a few bug fixes and enhancements to our WordPress plugin. See release log in Github for more information.
This release introduces a few bug fixes and enhancements to our WordPress plugin. See release log in Github for more information.
This release introduces a few bug fixes and enhancements to our WordPress plugin. See release log in Github for more information.
This release introduces version 1.0 of the Content Publisher Drupal Module, a complete redesign from previous alpha versions. This version deeply integrates with the Drupal content management framework, providing enhanced capabilities and a standard Drupal development experience for working with Content Publisher.
- Drupal entity integration: Content Publisher documents are now implemented as standard Drupal entities, allowing full utilization of Drupal's entity API and features.
- Configurable metadata fields: Content Publisher metadata fields are now standard Drupal-configured fields, supporting the "Manage Display" feature and Layout Builder.
- Searchability: Content Publisher content is now indexed and searchable by Drupal, enabling unified content discovery experiences.
- Smart Components: Smart Components are implemented as fieldable Drupal entities, removing reliance on Drupal SDC. This allows for flexible content rendering using any Drupal field type or module.
- Real-time preview: Real-time preview functionality has been fixed and now supports multi-collection configurations.
- Configuration panel: The module's configuration panel has been improved and clarified.
- Leverages Drupal's entity system for content management.
- Integrates with Drupal's field UI and display management.
- Enables Drupal search indexing of Content Publisher content.
- Provides a flexible and extensible architecture for Smart Components.
The module is available on drupal.org. An active Content Publisher collection is required. Content Publisher is currently in private beta.
The Content Publisher team released a new minor version of the service (back-end + admin interface + Google Docs add-on + CLI + JS SDK). This release includes:
- Improve UX to insert smart components in Google Docs.
- Add token’s last used dates in the token management interface.
- Implement Google Drive Picker flow to let administrator grant access to a doc they haven’t authorized yet.
- A short list of bug fixes
We released a new minor version of the service (back-end + admin interface + Google Docs add-on). This release includes mostly bug fixes and minor enhancements, the main important one being listed below:
Let users connect their documents with inactive content collections to facilitate setup (collection can show as inactive either because the setup is not finished or because the website they are connected to is not responding)
“URL” metadata field type has been renamed as “File/Media” for better clarity.
Smart Component user interface now supports the option of adding a list of values for a given field type.
The metadataFields discovery API now includes all default metadata fields (these were omitted previously).
Preview and publish webhooks now provide the SiteID to facilitate how to use several content collections on a single website.
Support hyperlink on inline images.
We just released a new version of the service (back-end + admin interface + Google Docs add-on + CLI + JS SDK v3.11.2). Now available:
Managing tokens for authenticating to the service was confusing as part of it was managed in the CLI and other was in the Content Management UI. The system was also confusing because of unclear terminology and language. We solved that by providing an upgraded Auth Token user interface in the Content Management UI. See the related documentation page.
Content Publisher was first made to work with and ingest content from Google Docs but was always thought as an open content integration service to which we could connect other content sources. With this new version of the service, we are releasing an open API that allows developers to programmatically ingest content in Content Publisher, opening the possibility for third parties to develop new 3rd party connectors to our service. Do you want to use Content Publisher from MS Word, Notion, Obsidian or other authoring tool? Now you can make it by developing yourself as an integration! Visit the documentation for the Ingest API for more information.
Up to now, all documents published in Content Publisher were made available to our Search service available as part of the Delivery API. Simple is beautiful but this was a bit too simple… we learned from beta users that you sometimes need to publish yet exclude specific documents from search. This can now be done very simply using a toggle in the main Content Overview screen of the Content Management UI.
This release also brings minor improvements and bug fixes including:
- Fixing the proper support of superscript in the Google Doc formatting support.
- Better support of browsers disabling 3rd party cookies in the Preview Editor.
- Fixing styling of Table of Contents from Google Docs that could be broken in some edge cases.
- Add a new icon in the Preview Editor for responsive view mode.
- Better support Google Docs header formatting that could result in design issues.
- UX improvements to the Smart Component popup
We released a new minor version of the service (back-end + admin interface + Google Docs add-on + CLI + JS SDK v3.11.1). This release includes:
- Minor usability improvements to our Content Management UI (permission management).
- Browser SDK bug fixes (see the browser sdk doc page if curious about that feature).
- Bug fix on our GQL content query engine, fixing unreliable filtering results in some specific cases.
- Better management of Google Docs viewers roles allowing them to still use the real-time preview in read-only mode.
- Fixing edge authentication cases that generated errors when an add-on user would connect with one Google Workspace account while connected to the Content Management UI with another.
- Improve CLI performances.
- Stop stripping empty paragraphs in our Content Ingest API allowing users to use these for spacing.
- Various Vertex indexing fixes and optimizations.
We released a new minor version of the service (back-end + admin interface + Google Docs add-on + CLI + JS SDK v3.11.0). This release includes:
We improved the interaction for suggesting Gen-AI generated metadata fields, making it possible to enable/disable automatic suggestions, as well as letting the user request a new set of suggestions. All in all, the user interface is now slicker and easier to understand.
The site structure of a Next.js website using the starter kit reflects the content structure defined in the content collection, making it possible to leverage Content Publisher content structure for site navigation on Next.js without development.
Other improvements include
- A better Article layout for the playground websites.
- Performance improvements to the CLI.
- Fixing a UI issue with the boolean metadata filed type which, in some instances, could not be saved through the metadata popup.
- Error messaging in edge cases for Google Docs viewers (without Editor role)
- Other minor bug fixes.
We released a new minor version of the service (back-end + admin interface + Google Docs add-on + CLI + JS SDK). This release includes:
- Usability improvements to the Preview Editor (still feature flagged)
- Add of a fallback full-page preview solution when site preview is not possible in an iFrame
- Usability improvements to the Collection Explorer and the Metadata editor (file field supporting now direct drag & drop)
- Fixing some styling filtering when ingesting Google Docs
- Better handling of permissions edge-cases in the Google Docs add-on
- Internal optimization of our infrastructure
- Code and automated testing optimization
Today, we’re introducing a new side-by-side Docs and Website Preview Editor. It is being rolled out progressively to specific users under a feature flag. Please contact us if you’d like to access the Preview Editor immediately.
Side-by-Side Docs & Website Preview Editor
This new experience makes it easy to see how content from Docs will render on your Website:
- Edit your Doc and see how it renders on your Website in a single browser tab—no more juggling multiple windows
- Get quick access to the preview directly from the content explorer in the administration interface (see below)
- Toggle between ‘desktop’ and ‘mobile preview’ to check responsive rendering
- Simply change the zoom factor for a better preview if your screen feels too small.
- Adjustable pane widths
Content administration improvements
- Improved user interface for managing collection permissions.
- Simplified Settings navigation
- Several bug fixes and enhancements to the UX.
- Direct access to Preview Editor (see above) from the content explorer
Google Docs add-on improvements:
- Metadata editor improvements (moved to a pop-up window)
- Simplified the publishing experience by removing a step
- Simplified Metadata schema configuration (moved to the collection sidebar)
- Added a “refresh” button to the component's UX
- Other simplifications and bug fixes for permissions
Next.js SDK/Starter Kits:
- The Preview Header has been removed to accommodate the new Preview Editor UX (above)
- Various bug fixes and minor enhancements to the delivery API libraries
- Fixed document title changes not saving or being overwritten on publish.
- The smart component editor now uses default values as input placeholders, allowing a pleasant preview of the components.
- Fixed Gen-AI metadata recommendations not being adjusted to the latest revision of content.
- Fixed intermittent auth issue causing 403 access denied error on the publish page.
- Small style adjustments to make some buttons more consistent with our design system.
- A unified admin UI (available at https://pcc.pantheon.io/auth) streamlines access to settings, publishing permissions, and content collections management.
- Users can now view and edit metadata directly within the interface, eliminating the need to go to the Google document.
- GenAI suggestions for title, description, tags, and slug fields speed up content preparation (feature flagged, contact Content Publisher squad for access).
- A link to the real-time content preview is now provided on that same page.
- The collection management interface includes a search component and a "Move to" dialog for improved navigation and organization.
- A new Publish flow in the Google Docs add-on allows users to choose the publishing location of the document’s content and review/edit its metadata in a web popup for a smoother experience, including GenAI recommendations.
- This release also includes bug fixes and UI improvements to the Universal Component editor and metadata schemas.
- Updated UI for new universal component. The new universal component (an improved interaction to manage smart components with a web U.I. for configuring your components, one single “universal” Pantheon component on the sidebar (choosing the behavior is handled in the component interface), enforcing the use of “@ Pantheon component” to create components.
- Make it clearer when an error originates from an API request.
- Generative search results summary will always try to return summaries in English.
- Fix an issue that caused the server to silently fail if a schema parsing error caused it to not return any schema.
- Fast real-time previews are fast again (~1 sec). .
- Refreshed UI for site structure management (still under a feature flag). See the updated U.I. in our documentation. Major improvements: allows to reach “edit” and “preview” of any document from the content structure. More to come.
- Universal component editor (see above).
- Support variants for component schema.
- Support LLM preamble.
- Fixed issue with vertexai indexing of documents.
- Support for LLM preamble (how to use it).
- Fixed interactive question bug.
- The starter kit designs have been refreshed.
- Missing or invalid PCX credentials no longer block builds/deployments.
- Fix some issues that prevented to be accepted the validation of wordpress.org as we work to publish the plugin on the wordpress.org plugin directory.
- Fix that ensures good rendering of content on non-standard WordPress page builders like WPBakery or others.
- Retrieve Title, Description, Tags, and Categories automatically from Content Publisher metadata.
- Allows editing in WordPress to let users leverage tools such as YOAST.
- Retrieve Featured Image from Content Publisher metadata and store it in the WordPress image library.
- Github public repository: pantheon-content-publisher
The WordPress plugin uses the PHP Sdk that was also released.
- Allows publishing from Content Publisher to Drupal with no manual publishing steps.
- Manages connection between Content Publisher and Drupal.
- Expose Content Publisher API to Drupal Views so that a Drupal developer can build a site with content from Content Publisher without code (besides the specific style and designs that the Website might require).
- Expose Content Publisher Smart Components as Single Directory Components (SDC) in Drupal
- Github public repository: pcc-drupal-module
The Drupal module uses the PHP Sdk that was also released.
- PHP API to retrieve content from an existing Content Publisher collection.
- Github public repository: pcc-php-sdk
- Added Title and Description as standard metadata fields for any collection. These can be used to render the HTML title and meta description tag on the front end for standard SEO purposes. They will also be used in Pantheon Content Exchange (PCX) admin user interface for content management purposes.
- Preserve the relative width of table columns so that users can still control the layout of tables from Google Docs.
- Content out of sync banner notifies users in Gdoc when the published version of a document is out of sync and older than the document they just opened, making it easier to identify if re-publishing is needed.
- Collection visibility: you can now define private content collections and specify the collaborators you want to be able to access these collections. This can be managed in the dashboard or using the CLI. and collaborators now supported. Can be managed on the dashboard at https://pcc.pantheon.io/auth
- Header elements which were marked up as “subtitle” in Google docs are now exported with a data-pcc-is-subtitle attribute in HTML.
- Code blocks are now exported with a data-pcc-is-codeblock attribute in HTML (it was previously named data-pcc-iscodeblock).
- Fixed issue on auth dashboard where you are still logged in, but no data loads. (refresh token issue).
- Added command to import WordPress posts into a PCC collection. See doc.
- Added commands for managing collaborators and visibility.
- Deprecate vue, gatsby starter kits, and vue SDK.
- Released v1.1.2 of Content Publisher Plugin for WordPress that allows direct publishing from Gdocs to WordPress via Content Publisher. See plugin documentation.
- Added compatibility check for drawing images, since we no longer attempt to support them in the exported document.
- Fixed some playground bugs (500 error on unpublished article URL, better video embed responsiveness, improved lead capture component UX, word wrapping)
- Improved UX feedback if you try to edit the site URL for the playground site
- Playground now supports viewing published articles without authentication
- Improved publish & preview performance, especially on large documents
- Increased default pagination page size for deprecated queries (articles, articlesv2)
- Released v1.1.1 of Content Publisher Plugin for WordPress that allows direct publishing from Gdocs to WordPress via Content Publisher. See plugin documentation.
- Streamlined UX: After adding, updating, or deleting a metadata field, the user is redirected to the metadata management screen instead of the home screen, which saves time and many clicks when editing several fields.
- Streamlined UX: The confirmation step that occurs upon hitting the Publish button has been removed. Clicking Publish now immediately publishes the document, which is what most users expected to accelerate work.
- Site metadata schema can now only be updated by the site’s administrator
- Error management. A new error card design is used for all unexpected errors in the add-on to avoid non-digest errors.
- Management Access Token dashboard accessible at https://pcc.pantheon.io/auth
- Management API documentation can be found at https://pcc.pantheon.io/docs/pcc-openapi-spec
- Search queries LLM updated to Gemini Flash 1.5
- Real-time previews are faster and more stable
- PCC_GRANT cookies are now set with SameSite=None so that they can be loaded in an iframe preview context.
- New CLI command to delete a site: pcc site delete <id>
- Improved error message for CLI admin commands when the site being referred to could not be found.
- Fix: Smart components exported in markdown format are no longer wrapped in <u> underline tags.
- Fix: Sites without https protocol were not always appearing in “connectable sites” list.
- Fix: Metrics was always showing sign-in, even if you had already connected analytics to the site.
- Added beta for site content structure management under feature flag (pcx-site-structure). This release allows a user to organize its collection of documents under a hierarchy and to manage which document can be visible or not in the hierarchy. The hierarchy is made available to the Website and is typically used to build navigation interface. Reach out if interested to try the feature.
- Improved error messaging at edge cases.
- Improved Google Analytics metric syncing.
- Fixed issue breaking article search results.
- Added queries and helper methods for fetching site information
- Added support for setting filters for webhook events that will be published. If a webhook notification to be sent does not match the specified event filters it will not be published.
- New theme for the Playground Website. The new website shows an improved design overall. The theme uses a dark mode to illustrate that our Google Docs publishing workflow maintains structure but strips styling to enforce proper design and brand integrity on the target Websites.
- Improved error messages across the board.
- VertexAI results support pagination, respect pageSize, and will populate all asked-for fields (previously some fields such as createdAt were not being properly returned). See instructions how to use it here).
- Improved token security
- Additional validation for URL inputs in the Page Metadata fields
- CLI’s --version command replaced with version and fixed (previously only printed “unknown”)
- CLI preview command now supports document URL instead of only a document’s id (quality of life change)
- Fix: Opening the add-on for a blank document now produces a helpful message.
- Site metadata card includes “about this site” details
- Faster card load times + especially faster landing page after file scope permission has been granted.
- Fix: There was an issue where the markdown for an article was sometimes not including the attributes for smart components (in this edge case: smart component is a link + the smart component name has an underscore + exported as markdown)
- Improve: Automatically generated reports of product usage now include information about sites and fixed a configuration issue from the reports being generated daily.
- Fix: There was an issue where sometimes users in a different org were not able to access PCC in documents stored in a shared drive owned by another org.
No updates
- Implemented “add sample content”.
- Site metadata card includes “about this site” details.
- Improved error message when an error occurs while inserting a smart component from @ menu.
- Smart component insert from @ menu broke after recent Google change - it has been fixed.
- Fixed incorrect table structure, where the header row was embedded as a separate table.
- Fixed code snippets being sometimes incorrectly parsed.
- Image styles are exported to be mobile-responsive.
- Developers can now access their site’s schema by asking for the metadataFields graphQL field in the site retrieval query.
- Improved support for Nextjs App Router
- Update preview bar behavior, style and copy for both React and Vue. By default, it will now appear at the top of the page, pushing all other content down and providing simpler access to sharing and links.
- Breaking change: Removed support for Vue 2 (read about Vue 2’s end of life here)
- Fixed protocol forwarding in PantheonAPIHandler.
- No longer exporting PantheonContext from /server entrypoint; only from main entrypoint.
- Support boolean & textarea site/document metadata fields
- Support textarea field for smart components
- Playground URLs can no longer be changed
- Only admins can change the URL of a site
- Improved add-on performance
- More stable real-time previews
- Support added for shorthand site URLs (mysite.com works the same as https://mysite.com)
- Improved preview and publish UX
- Resolve exception thrown when trying to remove a document from vertexai that hadn’t been connected to a site yet
- Fixed over-aggressive merging of lists
- Partial fix: Fix 1 of 2 edge cases that could cause the entire document to be bolded if the document’s default text style is bold and __experimentalFlags contentOnly flag is true in ArticleRenderer.
- disableAllStyles no longer applies to functional components provided to componentMap (react and vue SDKs)
- New metadata field for smart components: textarea
- Improved exception messages when a GraphQL error is encountered
- Added updateConfig function which will override the default PCC connection settings that PCCConvenienceFunctions will use.
- Fix component schema always returning as an empty object from the PantheonAPI.
- Fix how headers (especially temporary preview auth token) is set for non-app router PantheonAPI sites.
- @pantheon-systems/pcc-browser-sdk now supports preserveImageStyles
- Fix a regression introduced with 3.4.0 that prevented Real Time Preview to work on Front End Sites using the latest version of the SDK.
- Introduced a new experimental flag preserveImageStyles that can be used in the ArticleRenderer component, in combination with onlyContent property set to true, in order to strip all Gdoc custom styles (except the supported standard style elements specified here ) but keep the Image styles.
- Support Next.js app router and provide app router starter kit
- Implement support for filtering by metadata with an array
- Default value of Date metadata type is now today, instead of 1970 (start of Unix epoch)
- Updated UI for some of the add-on including:
- Better listing of Sites available for connection.
- Removal of the UI letting users initiate the creation of a Site (this needs now to be done via CLI)
- Differentiated interface for Playground sites
- Google Doc drawings are now supported
- Faster load times
- Superscript and subscript are now exported as their own sup and sub tags instead of as styling (so these will not be stripped when using the disableAllStyles experimental flag).
- VertexAI search results always return results with the most up-to-date metadata
- Article results always return snippets (previously only results generated by VertexAI provided this)
- Fixed comments from documents sometimes being captured on preview/publish
- Improved reliability of real-time updates/previews
- Adds `getArticleTitle` to /component exports for usage in decoupled title rendering
- Fixed component preview not working for some sites.
- Fixed crash sometimes occurring in metadata edit card.
- Fix image upload button visual error.
- Fix component title incorrect when inserting using @ option.
- Enable admin permissions.
- Fix OL/UL nesting for markdown exports (potential breaking change for PDE)
- GQL search supports arrays for metadata filters
- For Pantheon internal use: Added commands for managing target environment (production or staging) and inspecting API endpoints used by the CLI.
- Fix webhook command: the secret was not being correctly updated.
- Added a static site generation (SSG) example to next.js starters.