PHPackages                             mxp/redirect-generator - 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. [PDF &amp; Document Generation](/categories/documents)
4. /
5. mxp/redirect-generator

ActiveTypo3-cms-extension[PDF &amp; Document Generation](/categories/documents)

mxp/redirect-generator
======================

Generate redirect entries from a given set of URLs and export all to CSV

3.0.0(1y ago)112GPL-2.0-or-laterPHPPHP ^7.4 || ^8.0

Since Sep 15Pushed 1y agoCompare

[ Source](https://github.com/mxpgmbh/redirect_generator)[ Packagist](https://packagist.org/packages/mxp/redirect-generator)[ Docs](https://github.com/mxpgmbh/redirect_generator)[ RSS](/packages/mxp-redirect-generator/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (2)Versions (11)Used By (0)

TYPO3 Extension `redirect_generator`
====================================

[](#typo3-extension-redirect_generator)

> This is a fork of [redirect\_generator from Georg Ringer](https://github.com/georgringer/redirect_generator).

This extensions creates proper redirect entries from a CSV file.

Each target entry will be matched by the routing configuration. If the target is `http://demo.vm/company/contact`, the redirect will be created to the related page id!

[![Add Redirect](Resources/Public/Screenshots/redirect-add.png)](Resources/Public/Screenshots/redirect-add.png)

Installation
------------

[](#installation)

### Requirements

[](#requirements)

- TYPO3 12
- EXT:redirects

### Setup

[](#setup)

Install as any other extension:

- *Composer*: `composer require mxp/redirect-generator`

Configuration
-------------

[](#configuration)

Set the following extension configuration options to enable email notifications:

- *notification\_email*: A comma separated list of e-mail addresses to send notification emails of the export and import commands
- *notification\_level*: Set the level of notification messages you want to receive:
    - 0 (error): Only receive error messages
    - 1 (warning): Receive error and warning messages
    - 2 (info): Receive all messages
- *allow\_empty\_import\_file*: If true an empty CSV file will silently skip the import, otherwise an error is thrown

Usage
-----

[](#usage)

### Add single redirect

[](#add-single-redirect)

Use the following CLI command:

```
./bin/typo3 redirect:add /any-url https://domain.tld/your-final-url
```

The following options are available:

- `--status-code`: Define the status code, allowed are *301*,*302*, *303* and *307*.
- `--dry-run`: If set, the redirect won't be added
- `--overwrite existing`: Overwrite existing source URLs with the given target. Uses notification level 2 (info) when actually overwriting something

### Import CSV

[](#import-csv)

Use the following CLI command:

```
./bin/typo3 redirect:import
```

```
source;target;status_code
/fo/bar;http://t3-master.vm/examples/extensions/news;301
/fo/bar2;http://t3-master.vm/examples/extensions/news;307
/fo/bar3;http://t3-master.vm/exakqwkqkwmples/extensions/news;301
```

A sample CSV file can be found at `EXT:redirect_generator/Resources/Private/Examples/ImportBasic.csv`

In addition an additional column `external` can be added to the CSV. It can be 0 (false) or 1 (true). If 1, the target is interpreted as an external URL and not mapped against a TYPO3 page.

The following options are available:

- `--dry-run`: If set, the redirect won't be added
- `--external-domains`: Provide a comma separated list of domains which are external
- `--delete-file`: If set the CSV file is deleted after (a successful or unsuccessful) import
- `--overwrite existing`: Overwrite existing source URLs with the given target. Uses notification level 2 (info) when actually overwriting something

> This command can be run in the scheduler (select *Execute console commands* as class)

### Export Redirects

[](#export-redirects)

Export all redirects as CSV. The optional option `--transform-target-url` transform the target url like `t3://page?uid=1106` into the final URL.

Use the following CLI command:

```
./bin/typo3 redirect:export export.csv --transform-target-url
```

> This command can be run in the scheduler (select *Execute console commands* as class)

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance39

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor2

2 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 ~272 days

Recently: every ~184 days

Total

8

Last Release

528d ago

Major Versions

0.3.0 → 1.0.02022-11-30

1.2.0 → 2.0.02023-06-01

2.1.0 → 3.0.02024-12-05

### Community

Maintainers

![](https://www.gravatar.com/avatar/fda1102569d77f647264d972ec21bf6f832504e277df481057b75b0252630368?d=identicon)[mk-mxp](/maintainers/mk-mxp)

---

Top Contributors

[![rk-mxp](https://avatars.githubusercontent.com/u/35734421?v=4)](https://github.com/rk-mxp "rk-mxp (34 commits)")[![georgringer](https://avatars.githubusercontent.com/u/1905663?v=4)](https://github.com/georgringer "georgringer (24 commits)")[![mk-mxp](https://avatars.githubusercontent.com/u/55182845?v=4)](https://github.com/mk-mxp "mk-mxp (8 commits)")[![ayacoo](https://avatars.githubusercontent.com/u/5963331?v=4)](https://github.com/ayacoo "ayacoo (4 commits)")[![nwm-dev](https://avatars.githubusercontent.com/u/83211211?v=4)](https://github.com/nwm-dev "nwm-dev (4 commits)")[![mxpgmbh](https://avatars.githubusercontent.com/u/62594408?v=4)](https://github.com/mxpgmbh "mxpgmbh (3 commits)")[![mikestreety](https://avatars.githubusercontent.com/u/354085?v=4)](https://github.com/mikestreety "mikestreety (1 commits)")

---

Tags

exportcsvimportextensionredirecttypo3

### Embed Badge

![Health badge](/badges/mxp-redirect-generator/health.svg)

```
[![Health](https://phpackages.com/badges/mxp-redirect-generator/health.svg)](https://phpackages.com/packages/mxp-redirect-generator)
```

###  Alternatives

[league/csv

CSV data manipulation made easy in PHP

3.5k166.1M646](/packages/league-csv)[georgringer/redirect-generator

Generate redirect entries from a given set of URLs and export all to CSV

1645.5k](/packages/georgringer-redirect-generator)[highsolutions/laravel-lang-import-export

A Laravel package providing artisan commands to import and export language files from and to CSV.

25292.3k](/packages/highsolutions-laravel-lang-import-export)[avro/csv-bundle

Symfony2 CSV Bundle

3039.8k1](/packages/avro-csv-bundle)

PHPackages © 2026

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