1

我需要在我的Yii应用程序中处理一个对 SEO 友好的 URL 。我在模式中的 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 字符串和 ID 由我们填充。当用户访问此 URL 时:

  1. 首先需要验证 URL 模式。
  2. 第二个提取 Id 和 URL 字符串并与我的数据存储匹配。
  3. 第三,当上面的 URL 和我存在于我们的数据存储中时,将引用的参数传递给现有的搜索页面。

请任何人帮助我解决这个问题并让我睡觉。

4

1 回答 1

1

首先,将新规则添加到urlManager应用程序配置中。

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

然后您可以在操作中检索 slug 和 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();
        }
    }
}
于 2014-01-25T22:47:32.660 回答