Why Agility CMS has Page Management as a Headless CMS

It Just Makes Sense When Your Website is the Anchor

Joel Varty
Joel Varty
Mar 5, 2019
Why Agility Includes Page Management with its Headless APIs

The main benefit of headless CMS is that it provides a much more flexible and efficient way to maintain a sophisticated content architecture across multiple digital properties. The "compose once, publish everywhere" paradigm is a major factor in why folks choose headless CMS. Send content to mobile apps, websites, social networks, marketing automation platforms, and more... the list is as long as your digital strategy.

Most headless platforms eschew the concept of "page management." They claim that the separation of content from its presentation disallows the management of "pages," as they are only intended for a single output - your website. While this is true, it also ignores the fact that the main anchor for online content is your website, and it needs a special case.

 

Agility CMS quote

Why Page Management?

One of the main benefits of a headless CMS is that it enables companies to build a modern content architecture across different digital platforms and devices. Headless CMSs allow content teams to compose once and then publish everywhere, sending content to every platform and device customers are using.

However, while headless CMSs give you robust functionalities, some vendors claim that the separation of content and presentation that characterizes the headless architecture makes the concept of page management obsolete. In most headless CMSs you often get a blank site that you can configure the way you like. While that’s a great approach, we also provide out-of-the-box, and even go a bit beyond that. 

Despite being headless, we think differently. We see websites as the anchor for your digital experiences, which is why we give websites special treatment.

Since part of our premise is to make things easier for everybody, we’ve added a robust page management system that’s meant to simplify the lives of the content team, enabling them to create and manage actual pages on our sitemap.

One of the things that makes Agility CMS different from other CMSs is that it is content first and offloads the task of page management to the content marketing team. With Agility, content teams are enabled to update pages and sitemaps without the help of the IT team. 

Benefits of Page Management

Using Page Management, you can empower editors to create and manage pages for your digital solutions using re-usable building blocks (i.e. modules & page templates).

Editors can manage your site's page tree, page-level SEO properties, and determine what content and functionality will be on each page.

As a developer and architect, you still have full control over what page templates are available to the editor, where they can place modules within the page, and what the modules can do.

  • Empowered editors who can do more without a developer
  • Happier developers who can focus on new functionality and enhancements, and less time responding to new content requirements
  • Increased productivity
  • Fewer resources/expenses required

Why do you need Page Management in Headless CMS?

We've curated a list of common scenarios showcasing situations editors and/or developers may have experienced:

  • I need to create a new landing page specifically for the press. It will have the exact same content layout as the home page, but just different content.
  • I need to be able to set the SEO properties for each page such as Meta Tags and Meta Descriptions.
  • On the home page, we want the YoutTube video to be BELOW the Main Rich Text, but on our press page, we want the YouTube video to remain ABOVE the Main Rich Text.
  • Our CEO doesn't like it, can we have the YouTube video ABOVE the Main Rich Text area on the homepage again?

In the scenarios above, you can see that the editor's needs are impossible to predict. It's not their fault, it's just the nature of the game. Managing content comes with a lot of changes.

Not taking advantage of Page Management for your digital solution means It's not flexible for editors, so developers spend most of their time taking orders, tinkering with existing code to support content requirements, and wishing they were doing something else! Content changes should not have to involve developers.

So what does this ultimately mean?

  • Editors cannot create/manage pages on their own without a developer
  • Editors cannot control which components are on each page
  • Developers get bored or burnt out
  • More development resources/expenses required
  • Productivity on the website suffers

And, who's at fault in this? I'll give you a hint, it's not the editor, and it's not the developer... It's the architecture

Common Scenarios

Editor: I need to create a new landing page specifically for the press. It will have the exact same content layout as the home page, but just different content.

You would need to go back into your code and add another static page in your website to handle the routing for your new landing page, then create a new item in the CMS to represent the content for that page, take note of the content ID and then likely spend some time refactoring your code now that you are using it in two different places.

Editor: I need to be able to set the SEO properties for each page such as Meta Tags and Meta Description.

You would need to add these additional fields to the Landing Page content model, go back in your code, read those properties, and output them in the appropriate place.

Editor: On the home page, we want the YoutTube video to be BELOW the Main Rich Text, but on our press page we want the YouTube video to remain ABOVE the Main Rich Text.

This is where it gets tricky. Both the home page and press page are using the same content model and HTML template. The editor does not have the ability to set the order of content being rendered on the page, because that's hardcoded in your HTML template. Now you have some decisions to make. Do you hard-code some logic in your website to adjust the order only if the current page is the home page? Or do you split your code altogether and use a slightly different HTML template for each page? Neither option sounds great or scalable, but you have to get it done so you reluctantly choose one, deploy it and move on.

Editor: Our CEO doesn't like it, can we have the YouTube video ABOVE the Main Rich Text area on the homepage again?

🤬 Ya... we've all been there.

Editor: I need to create a new page for our online leaderboards, it needs to show the top 10 players, but also provide a detailed leaderboard where people can explore the entire list.

Alright, sounds fun. You get to play around with the Oculus Leaderboards API, create a new content model for this new type of page, create a new static page route, and mess around with some responsive tables. A few coffees later, and a sleepless night, and you get it done. This new leaderboard page now has two main components on the page, one is the top leaders, and the other is the full leaderboard.

Editor: Oh, can we have the top leaders on our home page as well?

Ok, that didn't come up as a requirement during discussions, but that's fine. It's not too complicated to extract that functionality into a reusable component. So you do just that, you spend some time refactoring your code and then you add it to your landing page HTML template and deploy your update.

Editor: The top leaders are showing on the press page, we don't want it to show there.

Oh, right! It's using a shared HTML template between the home and press page. You now need to handle that logic in your code as well, further complicating your solution.

Learn more here.

The Elements of Page Management In Agility CMS

With Agility CMS, you can define three things that make development and editing simple. Page templates, module definitions, and digital channels and sitemaps. Let’s take a look at these three elements. 

 headless cms page management editor tools

  • Page Templates: Templates allow developers to determine a name and a set of modules where content editors can add content. Developers can also write code to render this template into an HTML document. 
  • Modules: Modules are reusable sets of fields that can go from a header to more complex UI elements such as a sliding image carousel. In short, modules are the building blocks that enable complex websites. 
  • Digital Channels and Sitemaps: A sitemap is a content structure that developers use to render the website. In Agility CMS, websites have one or more sitemaps defined, each in its own channel, enabling multi-site management and granular control over each digital property. 

Headless Page Management In Agility CMS

Most developers and architects start building their content using simple content definitions, and while that’s a good way to get started, it doesn’t scale well. That’s why we offer users a built-in page management system. 

Page management empowers editors to create and manage content using reusable building blocks, also called modules. Using these building blocks, editors can manage their site’s page tree, edit SEO, and determine content relationships and the functionalities of each page. Also, developers can choose which modules editors can add, where they go, and what they do. 

Page management also includes page templates. We provide the ability to create templates to narrow down the possibilities of what kind of content your website shows, giving the editors the tools to customize them. Each page template has content zones that give editors a location to drag and drop modules.

Empowering Content Editors and Developers. 

The main thing about Agility CMS is that instead of coding and routing each page individually, developers now have to code only a few page templates and modules. These templates can be reused across the website, sharply reducing the amount of work that developers need to do from the beginning. 

Now, with the help of page management, content editors can create and move pages around the sitemap in any way they see fit, adding modules to the websites and updating the properties of these modules as well. 

If you’re ready for more effective content management or you’re looking to future-proof your company, start a conversation with our experts or contact us to request a demo

How Agility CMS Handles Pages

Agility CMS allows you to define 3 things that make working with pages really easy for both content editors and developers to work with. Developers set up the templates and definitions, while content editors determine how and where they want to use those templates and definitions. This part of the content architecture is fundamental to the success of any CMS solution that includes a website.

Page Templates

This allows a developer to determine a template name and a set of module zones that content editors can drop content into using modules. The developer can then write code in the website to render this template into HTML.

Modules

Modules are the building blocks that enable a content editor to create a complex website structure with tools the developer has set up for them to be successful.

Modules in Agility CMS

This allows a developer to define a set of fields to render a reusable item inside a module zone of a template. This can be anything as simple as a header with a description that is rendered as an <H2> and a <P> element.

top header module in agility cms

Or, it could be a complex user interface component, such as a slider carousel, contact form, or a listing of blog posts.

blog module in Agility CMS

The developer has the choice of what properties the content editor will have to work with.

These can be simple text, number, or date fields; they can be image or file attachment fields, or they can link to other content that is defined elsewhere, such as shared content, or can be a contact us form for collecting leads and sending them to your CRM or Personalization extension.  

contact us module in Agility CMS

What's more, those shared content items or lists can then link to other shared content as well!

Digital Channels & Sitemaps

Digital Channel vs Agility Instance

Each Agility CMS website can have one or more sitemaps defined, each in its own digital channel. Each digital channel can be used to control a separate digital property. This could, for example, be used for a contest or a completely separate branded site.

Essentially a sitemap is a nested content structure which the developer will use to render on the website. Giving the content editor the control to manage multiple channels of page content is an extremely powerful and cost-effective way to manage content.

Learn more: How to Know Whether You Need a New Agility Instance or a Digital Channel (agilitycms.com)

Shared Content is Paramount

We still believe in a "content first" approach to designing your content architecture, and that starts with the shared content section of Agility CMS. This is where all your main lists and items will live, and this is where you'll create most of your content that is reused across multiple destinations or endpoints, such as your app, social networks, etc.

The pages section, however, is often the first place that users look to find the content they are working on, as the primary responsibility of your content teams is the website itself, and finding what page something on just makes sense to people.

Ready for More Effective Content Management?

At Agility CMS, our goal is to help you grow through smart, strategic, and agile content management. We’re here to guide you on implementing a future-proof content-first approach, headless content architecture, including JAMstack implementation, omnichannel marketing, SEO-friendly CMS, and more. Need answers? Start a conversation with our experts by opening the chatbox or request a demo here. You can also try Agility CMS for FREE and spin a new instance with our Gatsby starter.

Free Workshop Recommended For You!

GraphQL Webinar
Back to All ResourcesBack to All Resources