Trong cakephp mặc định sãn url sẽ là: …/controller/action
vd: http://vnland.vn/frontpages/preview/Ban-chung-cu-cao-cap
Rõ ràng url trên ta không thấy được nhiều thông tin,nhưng với url
http://vnland.vn/bat-dong-san/can-ban/chi-tiet/Ban-chung-cu-cao-cap
Cùng một nội dung hiển thị như nhau nhưng rõ ràng url thứ 2 mang nhiều thông tin và nhìn đẹp hơn url đầu.Hơn thế nữa việc rewrite lại url còn giúp cho các bộ máy tìm kiếm dễ dàng tìm ra trang web của bạn.
Ok,có thể thấy việc rewrite lại url mang lại khá nhiều điều,và chỉ cần một số thao tác bạn có thể rewrite lại url như mong muốn,hãy làm theo các bước sau:
bước1:mở file routes.php trong thư mục app/config/routes.php.
bước 2:chèn đoạn mã sau vào:
Router::connect(‘/bat-dong-san/:gi-cung-duoc-1/:gi-cung-duoc-2/:id’, array(‘controller’ => ‘frontpages’,'action’=>’preview’),
array( ‘pass’ => array(
‘id’
)
)
);
Nhìn vào dòng code trên các bạn có thể thấy …/frontpages/preview được thay thế bằng …/bat-dong-san/:gi-cung-duoc-1/:gi-cung-duoc-2/
Còn cái “:id” và array( ‘pass’ => array(‘id’) ) giúp bạn truyền tham số từ url xuống controller(nó là cái $id hay sử dụng trong các function edit($id){})
còn ở 2 cái “:gi-cung-duoc-1″ và …”:gi-cung-duoc-n” bạn có thể thay bằng bất cứ nội dung gì để url của bạn nhìn cho đẹp và đủ thông tin,lưu ý là số lượng “:gi-cung-duoc” bao nhiêu là tùy bạn nhưng cần đảm bảo số lượng phải đủ trên url mà bạn gọi ở vd trên mình dùng là 2:/:gi-cung-duoc-1/:gi-cung-duoc-2/ trên url là /can-ban/chi-tiet/.
Ok,vậy là các bạn đã có một url như mong muốn.^-^.
(i-php.net)