# Simple routing for multilanguage website

**URL:** <https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297>\
**Category:** Questions\
**Tags:** v3\
**Created:** [November 13, 2019, 2:58pm UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297 "2019-11-13T14:58:54Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Vitali](https://avatars.discourse-cdn.com/v4/letter/v/bc8723/32.png) [@Vitali](https://forum.getkirby.com/u/Vitali)\
**Post date:** [November 13, 2019, 2:58pm UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297/1 "2019-11-13T14:58:54Z")

</div>

Hello everyone,

for some reason my brain refuses to figure out how routes work in Kirby 3.

For example i´ve got a multi-language website with the following url:  
[mywebsite.de/de/meta/imprint](http://mywebsite.de/de/meta/imprint)

And i want it to route to a shorter url:  
[mywebsite.de/de/imprint](http://mywebsite.de/de/imprint)

This is what i have so far:

```auto
      'routes' => [
    [
      'pattern' => '(:any)',
      'language' => 'de',
      'action' => function ($uid) {
        
        $page = page($uid);
        
        if(!$page) $page = page('meta/' . $uid);
        if(!$page) $page = site()->errorPage();
        
        return $page;
        
      }
    ],
    [
      'pattern' => 'meta/(:any)',
      'language' => 'de',
      'action' => function($uid) {
          go($uid);
      }
    ]
  ]

```

I tried a lot of other configurations but nothing worked so far. Help is much appreciated!`Preformatted text`

---

<div class="post-metadata">

**Author:** ![texnixe](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/texnixe/32/5754_2.png) [@texnixe](https://forum.getkirby.com/u/texnixe)\
**Post date:** [November 13, 2019, 6:55pm UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297/2 "2019-11-13T18:55:49Z")

</div>

Your routes should look like this:

```auto
    'routes' => [
        [
          'pattern' => '(:any)',
          'language' => 'de',
          'action' => function ($language, $uid) {
            
            $page = page($uid);
            
            if(!$page) $page = page('meta/' . $uid);
            if(!$page) $page = site()->errorPage();
            
            return site()->visit($page, $language);
            
          }
        ],
        [
          'pattern' => 'meta/(:any)',
          'language' => 'de',
          'action' => function($language, $uid) {
              go($language. '/' . $uid);
          }
        ]
    ]

```

The first param of the anonymous function is the language

---

<div class="post-metadata">

**Author:** ![Vitali](https://avatars.discourse-cdn.com/v4/letter/v/bc8723/32.png) [@Vitali](https://forum.getkirby.com/u/Vitali)\
**Post date:** [November 14, 2019, 10:57am UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297/3 "2019-11-14T10:57:16Z")

</div>

Works perfectly, thank you very much!!

---

<div class="post-metadata">

**Author:** ![Vitali](https://avatars.discourse-cdn.com/v4/letter/v/bc8723/32.png) [@Vitali](https://forum.getkirby.com/u/Vitali)\
**Post date:** [November 14, 2019, 11:02am UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297/4 "2019-11-14T11:02:56Z")

</div>

**Another question:** What do i do to set this route for every language of my website (could be a lot of languages).

---

<div class="post-metadata">

**Author:** ![texnixe](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/texnixe/32/5754_2.png) [@texnixe](https://forum.getkirby.com/u/texnixe)\
**Post date:** [November 14, 2019, 11:44am UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297/5 "2019-11-14T11:44:16Z")

</div>

Should be possible by setting the language option to `*`

---

<div class="post-metadata">

**Author:** ![Vitali](https://avatars.discourse-cdn.com/v4/letter/v/bc8723/32.png) [@Vitali](https://forum.getkirby.com/u/Vitali)\
**Post date:** [November 14, 2019, 12:02pm UTC](https://forum.getkirby.com/t/simple-routing-for-multilanguage-website/16297/6 "2019-11-14T12:02:43Z")

</div>

You just made my life simpler, it works! Thank you!
