-
Notifications
You must be signed in to change notification settings - Fork 9
Features
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.
- Creating a custom page (without using an article)
- Including a existing (remote) html page
- Working with a collection of data
- Decorating an existing component
- Modules on steroids
- Creating forms
- Routing and redirects
- Creating custom themes
- Multi-site with a single Joomla install
- Superb performance and caching
- Creating your own webservices
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
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
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
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
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
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
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:
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
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
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:
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.
Got a question or need help? We have a forum on Github Discussions where you can get in touch with us.