Соответствие шаблону Yii для URL

Мне нужно обработать оптимизированный для SEO URL-адрес в моем приложении Yii. Мои URL-адреса структурированы по шаблону: «domain.com/url-string/uniqueid». Например:

domain.com/properties-in-dubai/325fgd
domain.com/properties-in-USA/4577ds6
domain.com/properties-in-india/567dew
domain.com/apartments-in-anderi-mumbai/645fki

Приведенные выше строки URL и идентификатор заполняются нами. Когда пользователь обращается к этому URL-адресу:

  1. сначала необходимо проверить шаблон URL.
  2. во-вторых, извлеките строку I'd и URL и сопоставьте ее с моим хранилищем данных.
  3. в-третьих, когда указанный выше URL-адрес и я существую в нашем хранилище данных, передайте ссылочные параметры на существующую страницу поиска.

Пожалуйста, помогите мне решить эту проблему и дайте мне сон.


person Mohan Shanmugam    schedule 25.01.2014    source источник


Ответы (1)


Во-первых, вы добавляете новое правило в конфигурацию вашего urlManager приложения.

'rules' => array(
    '<slug>/<id:\d+>' => 'property/view'
    // ...
)

Затем вы можете получить слаг и идентификатор в действии:

class PropertyController extends CController
{
    public function actionView($slug, $id)
    {
        $id = (int) $id;

        // Check if $id, $slug exist; replace line below
        $exists = true;

        if($exists){
            // Redirect to elsewhere
            $this->redirect();
        }
    }
}
person Jacob Budin    schedule 25.01.2014
comment
спасибо за Ваш ответ. но когда я использую перенаправление, дружественный к SEO URL-адрес меняется. возможно ли сохранить тот же URL-адрес при перенаправлении - person Mohan Shanmugam; 26.01.2014