concrete5-community / url_aliases
A ConcreteCMS package to create alias URLs of pages, files and external URLs
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:concrete5-package
Requires
- php: ^7.3 || ^8
- concrete5/core: ^8.5.4 || ^9
This package is auto-updated.
Last update: 2025-09-09 15:33:23 UTC
README
URL Aliases
This repository contains the URL Aliases package for ConcreteCMS.
Installation Methods
- To support the author, you can install URL Aliases on recent versions of ConcreteCMS through the ConcreteCMS Marketplace - see https://market.concretecms.com/products/url-aliases/e1683d19-8b4c-11f0-b970-0affd5227f07
- For composer-based Concrete instances, simply run
composer require concrete5-community/url_aliases
- Manual installation:
- download a
url_aliases-vā¦.zip
file from the releases page - extract the zip file in your
packages
directory
- download a
Then, you have to login in your Concrete website, go to the Dashboard > Extend Concrete > Add Functionality, and install the package.
Introduction
The URL Aliases package is a powerful tool designed to enhance URL management within your ConcreteCMS website. It provides a simple yet effective way to create clean, human-readable URLs that act as aliases for your existing content, including pages, files, and external URLs.
Instead of being stuck with the default URLs generated by the CMS, you gain full control over the addresses your users see. This is especially useful for creating short, memorable links for marketing campaigns or simply making your content easier to navigate.
Key Features
- Create URL Aliases for Pages: Map a custom URL to any page on your site, regardless of its original path.
- Alias Files: Provide user-friendly URLs for files, such as PDFs or images, which normally have long, complex paths.
- Redirect to External URLs: Use your own domain to create short aliases that redirect to other websites. This is perfect for linking to social media profiles, partners' sites, or specific product pages.
- Flexible and Customizable: Easily manage, edit, and delete all your URL aliases from a single, intuitive interface within the ConcreteCMS dashboard.
- Redirect by Browser Language: You can define an alias that points to page A for English, to page B for German, and to page C for any other language.
Why You'll Love It
- Enhanced User Experience: Clear and simple URLs are easier for users to remember and share, leading to better navigation and a more professional feel.
- Marketing and Analytics: Create short, targeted URLs for specific campaigns, which can be easily tracked and analyzed for performance.
- Complete Control: Break free from the CMS's predetermined URL paths and create addresses that best serve your content and your audience.
- Hit Count: See how many times an alias is being visited (including the date/time of the last visit)
- Test Interface: You can easily test if an alias works as expected (also with browser languages that differ from your default one)
- Support for Fragment Identifiers: When the alias target is a page, you can specify the exact point where the browser should land (for example,
/target#point-in-page
) - Sopport for POST Forwarding: When the users send POST requests to the alias, you can configure the package to forward that data via POST
How It Works
This package intercepts requests that result in a 404 ā Not Found response.
When such a request is detected, it checks whether the requested path (and optionally the parameters received via the query string) matches a defined URL alias.
If a matching alias is found, the package rebuilds the response and issues a redirect to the alias destination.
This approach ensures there are no conflicts with existing pages (no surprises!) and optimizes speed (no alias searches when not needed).
Usage
Browse to the System & Settings > URL Aliases dashboard page.
There you can manage all the URL aliases.
Requirements and Limits
- Minimum PHP version: 7.3
- Aliases do not automatically resolve child pages. For example:
- you have a page at path
/about
- you have a page at path
/about/me
- you create an alias named
/alias
that points to/about
/alias
would resolve to/about
- but
/alias/me
won't resolve to/about/me
- you have a page at path
- Forwarding files via POST is not supported: the package will only forward normal fields received via POST
Do you really want to say thank you?
You can offer me a monthly coffee or a one-time coffee š