Thứ Năm, 25 tháng 2, 2010

Cách rewrite url trong cake php

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.^-^.

Không có nhận xét nào:

Đăng nhận xét