Как использовать SEO-адреса в CakePHP без идентификатора? - PullRequest
1 голос
/ 14 июля 2010

Существует ли простой способ маршрутизации моих URL-адресов без указания идентификатора в URL-адресе.Например, у меня есть:

www.mywebsite.com / id-article-title.html, и я хочу только www.mywebsite.com/article-title.html

С уважением

Ответы [ 2 ]

2 голосов
/ 14 июля 2010

Добавьте столбец URL в вашу таблицу БД.Тогда вы можете сделать findByUrl().Как отмечено выше, это хорошо документировано.

function view($url = null) {
    if (!$url) {
        $this->Session->setFlash('Invalid url');
        $this->redirect(array('action'=>'index'));
    }
    $this->set('something', $this->Something->findByUrl($url));
}

Вы можете создать beforeSave методы для обработки ваших URL-адресов для уникальности и кодирования uuencoding.

Вы можете исключить необходимость указывать www.domain.com/controller/view/latest-news, используя маршрутыкак:

Router::connect('/*', array('controller' => 'somethings', 'action' => 'view'))

Теперь www.domain.com/latest-news вернет ту же страницу.

0 голосов
/ 14 июля 2010

Не пробовал, но я думаю, что ссылка ниже может вам чем-то помочь

добавление дружественных URL в приложение для торта

с использованием URL-слагов в cakephp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...