2014-01-25 1 views
1

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

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-адреса заполнены нами. Когда пользователь обращается к этому адресу:

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

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

ответ

1

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

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

Затем вы можете получить пулю и ID в действии:

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(); 
     } 
    } 
} 
+0

спасибо за ваш ответ. но когда я использую перенаправление, соевый URL-адрес Seo изменяется. можно ли поддерживать тот же URL-адрес при перенаправлении –

+0

, достигнутый форвардом –