url tarafından dil seçerek CakePHP'de - part 2

0 Cevap php

Tamam, ben şimdi (http://stackoverflow.com/questions/4550670/cakephp-choosing-language-by-url) URL tabanlı yerelleştirme çalışma var, ama nasıl dilini değiştirecek bir bağlantı oluşturmak için? Denedim

<?php echo $html->link('English', array('language'=>'eng')); ?>

ama öyle her şeyi (yerine www.example.com/eng/blah/blah ve www.example.com/blah/blah/language:eng) URL'nin sonunda language:eng ekler ve tüm dil geçiş olmamasıdır.

Yolları şimdi bu gibi görünmelidir:

Router::connect('/registered/:language/:controller',  
                array('prefix' => 'registered', 'registered' => true, 'layout'=> 'registered'),
                array('language' => '[a-z]{3}'));
Router::connect('/registered/:language/:controller/:action/*', 
                array('prefix' => 'registered', 'registered' => true, 'layout'=> 'registered'),
                array('language' => '[a-z]{3}'));

Ben de app_helper de url yöntemi overriden ettik:

    function url($url = null, $full = false) {
        if(!isset($url['language']) && isset($this->params['language'])) {
          $url['language'] = $this->params['language'];
        }
        return parent::url($url, $full);
   }

How to set the link to work the way it should be? Thanks

0 Cevap