PHPackages                             zicht/url-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. zicht/url-bundle

AbandonedSymfony-bundle[Utility &amp; Helpers](/categories/utility)

zicht/url-bundle
================

Url utilities for Symfony

8.0.0(2y ago)030.5k[14 issues](https://github.com/zicht/url-bundle/issues)[1 PRs](https://github.com/zicht/url-bundle/pulls)4MITPHPPHP ^8.1

Since Nov 19Pushed 2y agoCompare

[ Source](https://github.com/zicht/url-bundle)[ Packagist](https://packagist.org/packages/zicht/url-bundle)[ RSS](/packages/zicht-url-bundle/feed)WikiDiscussions release/8.x Synced today

READMEChangelog (10)Dependencies (15)Versions (142)Used By (4)

`zicht/url-bundle`
==================

[](#zichturl-bundle)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/b82aaa90f1771131a67fef5aca8a22d13b7eebb2cbab143f9ea836b7772443c1/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f7a696368742f75726c2d62756e646c652f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/zicht/url-bundle/?branch=master)[![Code Coverage](https://camo.githubusercontent.com/d519a6db262366ad8b92ba3e2d6b36491438809ccf5296ea87aafc9ac1533ad6/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f7a696368742f75726c2d62756e646c652f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/zicht/url-bundle/?branch=master)[![Build Status](https://camo.githubusercontent.com/d46ea1306037a28924f8bc2b4b5c1e98afda27e8b0c64f21981332a38621929e/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f7a696368742f75726c2d62756e646c652f6261646765732f6275696c642e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/zicht/url-bundle/build-status/master)

This bundle is part of the [`zicht/cms`](https://github.com/zicht/cms) suite.

The ZichtUrlBundle provides the following features:

- URL "Aliasing" - use seo-friendly url's without routing. The principle is that any url can have an alias which is used to show "readable" url's to the user. The general approach works in a way that is interchangable: each aliased version of any url can be translated to the unaliased version and vice versa. HTML code in the content database should never refer to aliased urls, so this integrates tightly with TinyMCE in the admin.
- By implementing the ProviderInterface, any service can be turned into an object router; i.e.: link to "objects" in stead of paths. This is utilized in the `zicht/page-bundle` to be able to link to Page object
- Static references: named url's which can be injected anywhere in your project
- Validation constraints

Validator Constraints usage
---------------------------

[](#validator-constraints-usage)

```
Zicht\Bundle\RcoSiteBundle\Entity\Page\ContentPage:
    getters:
        body:
            - Zicht\Bundle\UrlBundle\Validator\Constraints\ContainsValidUrls: ~

```

Tinymce Form type extension
---------------------------

[](#tinymce-form-type-extension)

If the TinyMce form type is used from the admin bundle. The type is extended to transform external urls to internal urls. No additional configuration is required

Show public URLS of a page in the admin
---------------------------------------

[](#show-public-urls-of-a-page-in-the-admin)

To enable this feature, add the following to a page admin, and make sure that form\_theme.html.twig from the url-bundle is loaded.

```
// use Zicht\Bundle\UrlBundle\Admin\AliasOverviewType;

public function configureFormFields(FormMapper $formMapper): void
{
    parent::configureFormFields($formMapper);
    $formMapper
        ->tab('admin.tab.alias_overview')
            ->add('alias_overview', AliasOverviewType::class, ['record' => $this->getSubject()])
        ->end()->end();
}

```

Importing a csv with aliases
----------------------------

[](#importing-a-csv-with-aliases)

Use the command `php bin/console zicht:url:import-aliases url_aliases_file.csv --skip-header --csv-delimiter ';'`

This command can parse csv files that follow the following syntax:

```
PUBLICURL, INTERNALURL, TYPE, CONFLICTINGPUBLICURLSTRATEGY, CONFLICTINGINTERNALURLSTRATEGY
/home, /nl/page/1
/also-home, /nl/page/1

```

Note that the first line can be ignored using "--skip-header" TYPE, CONFLICTINGPUBLICURLSTRATEGY, and CONFLICTINGINTERNALURLSTRATEGY are optional.'

Events
------

[](#events)

### Sitemap

[](#sitemap)

There is an event that makes it possible to modify the resultset of the sitemap;

- `zicht_url.sitemap.filter`, which allows you to modify the result from the previous query and filter out items.

Maintainers
===========

[](#maintainers)

- Boudewijn Schoon

###  Health Score

43

—

FairBetter than 89% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community21

Small or concentrated contributor base

Maturity90

Battle-tested with a long release history

 Bus Factor3

3 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~29 days

Total

131

Last Release

792d ago

Major Versions

5.2.7 → 6.0.32023-03-10

6.0.3 → 7.2.12023-03-10

5.3.0 → 6.1.02024-01-05

6.1.0 → 7.3.02024-01-05

7.3.1 → 8.0.02024-05-02

PHP version history (9 changes)1.0PHP &gt;=5.3

2.5.0PHP ^5.6

3.0.0PHP ^7.0

2.20.1PHP ^5.6 || ^7

5.0.0PHP ^7.1

5.1.3PHP ^7.2

5.2.0PHP ^7.2 || ^8.0

6.0.0PHP ^7.4 || ^8.0

8.0.0PHP ^8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/22889608?v=4)[Fabrique automation](/maintainers/zicht-jenkins)[@zicht-jenkins](https://github.com/zicht-jenkins)

---

Top Contributors

[![boudewijn-zicht](https://avatars.githubusercontent.com/u/22885475?v=4)](https://github.com/boudewijn-zicht "boudewijn-zicht (70 commits)")[![erik-zicht](https://avatars.githubusercontent.com/u/33859362?v=4)](https://github.com/erik-zicht "erik-zicht (68 commits)")[![7ochem](https://avatars.githubusercontent.com/u/2794908?v=4)](https://github.com/7ochem "7ochem (64 commits)")[![pbergman](https://avatars.githubusercontent.com/u/1193198?v=4)](https://github.com/pbergman "pbergman (50 commits)")[![wtfzdotnet](https://avatars.githubusercontent.com/u/639376?v=4)](https://github.com/wtfzdotnet "wtfzdotnet (16 commits)")[![muhammedeminakbulut](https://avatars.githubusercontent.com/u/8781648?v=4)](https://github.com/muhammedeminakbulut "muhammedeminakbulut (9 commits)")[![drm](https://avatars.githubusercontent.com/u/154580?v=4)](https://github.com/drm "drm (8 commits)")[![timspiering](https://avatars.githubusercontent.com/u/4190866?v=4)](https://github.com/timspiering "timspiering (6 commits)")[![rikvanderkemp](https://avatars.githubusercontent.com/u/347308?v=4)](https://github.com/rikvanderkemp "rikvanderkemp (4 commits)")[![VMeijer-Zicht](https://avatars.githubusercontent.com/u/57255942?v=4)](https://github.com/VMeijer-Zicht "VMeijer-Zicht (1 commits)")[![wpbenner](https://avatars.githubusercontent.com/u/7580635?v=4)](https://github.com/wpbenner "wpbenner (1 commits)")

---

Tags

packagist

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/zicht-url-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/zicht-url-bundle/health.svg)](https://phpackages.com/packages/zicht-url-bundle)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k5.9M738](/packages/sylius-sylius)[2lenet/crudit-bundle

The easy like Crud'it Bundle.

1616.4k14](/packages/2lenet-crudit-bundle)[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.9M388](/packages/easycorp-easyadmin-bundle)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.4M203](/packages/sulu-sulu)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k61](/packages/open-dxp-opendxp)[oro/platform

Business Application Platform (BAP)

645143.5k115](/packages/oro-platform)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
