Skip to content
Johan Janssens edited this page Mar 10, 2021 · 18 revisions

Pages can do a lot, with more functionality and features being added every new release. Here is an overview of some of the things it can do already.

Table of contents

1. Creating a custom page (without using an article)

Instead of using the Joomla article manager to create a page you can create the page in a file using either markdown or html, and Pages will render it nicely in your Joomla template on your site.

In your page there is a header block that is called the frontmatter in which you can define all sorts of settings for the page, like the title, meta description, open graph tags.

Learn more: Page

2. Including a existing (remote) html page

Sometimes you want to be able to include custom html in your site. This is very hard to do in Joomla right now and a problem that often comes back. In Pages this is very simple

Learn more: Page > Examples

But that is not all, Pages takes this a step further and you can now include a page by it's url. For example, you can include parts of a published Google document in a site:

Learn more: Include any static html page

3. Working with a collection of data

Often you don't just want to render an individual page, but you want to be able to show a list of data coming from a database. Pages has a collection mechanism for that. Defining a collection is very easy.

Pages can get data from different sources: other pages, or filesystem, database, webservice. And you can create your own custom collections using the API. So you can easily integrate it with any third party extension for example.

Learn more: Collection > Frontmatter

4. Decorating an existing component

Site developers and integrators often need to put blocks of content around a component. Right now we use the modules for that, but that is often very hard. You need a module position in the right location, create the module, assign it, etc etc.

Pages solves this by offering a decorator. Basically this works as a wrapper, allowing you to add custom content around any component/menu item without needing modules

Learn more: Advanced > Decoration

5. Modules on steroids

Modules are great tools though, but you have limited control over them. With Pages further improves modules API in Joomla to allow you to:

  • inject content into any module position by creating a virtual module
  • instantiate an existing module on the fly
  • define your own module positions

Learn more: Templates > Modules

6. Creating forms

Often you want to create a simple form on your site, for example a contact form. Pages makes that super simple, no code required just a form definitio with spam filtering included.

Forms submissions can be sent through email, stored in a .csv or .json file, or they can be sent to a webservice using a webhook, all of this can be configured through the frontmatter.

Learn more: Forms

7. Routing and redirects

Pages comes with proper routing support, SEF and routing issues are a thing of the past. You can create routes using wildcards, you can define redirects, etc

Learn more:

8. Creating custom themes

Pages is built to work with any Joomla template out of the box and this will probably be the way you get started. If however you need more control or you are a designer who prefers to create custom designs Pages also offers the option to build a custom theme either for your whole site or only for specific pages.

Learn more: Themes

9. Multi-site with a single Joomla install

Pages even has multisite support allowing you to setup different sites with Pages using a single Joomla installation. This is useful if you are building landing pages, or micro-sites etc.

Learn More: Advanced Multisite

10. Superb performance and caching

Pages comes with a very advanced caching mechanism allowing you to cache your site and make it super fast, really super fast. Up to 10msec or less.

Learn more:

11. Creating your own webservices

Pages allows you to build a REST API without writing any code. You create a page, define a collection, set it as json and you have a full working.

Learn info: JSON REST API.

Clone this wiki locally