Loại bỏ tên function trong URL module NukeViet

Thứ năm - 14/10/2021 04:51
Trường hp bao gm func main (Trang chính), viewcat (Xem ch đề) và viewdetail (Xem chi tiết bài viết).

Trước khi loại bỏ:
http://123nukeviet.com/news/viewcat/kien-thuc-lap-trinh-nukeviet/
http://123nukeviet.com//news/viewdetail/loai-bo-ten-function-trong-url/

Sau khi loại bỏ:
http://123nukeviet.com/news/kien-thuc-lap-trinh-nukeviet/
http://123nukeviet.com/news/kien-thuc-lap-trinh-nukeviet/loai-bo-ten-function-trong-url/

Demo: Có thể download module 
bus-directory xem code,

Sử dụng đoạn mã bên dưới, trong file modules/ten-module/function.php
$post_id = 0; // ID bài viết$cat_id = 0; // ID chủ đề$alias = isset( $array_op[0] ) ? $array_op[0] : '';foreach( $array_cat as $cat ){       // Xây dựng URL chủ đề    $array_cat[$cat['id']]['link'] = NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&' . NV_NAME_VARIABLE . '=' . $module_name . '&' . NV_OP_VARIABLE . '=' . $cat['alias']; if( $alias == $cat['alias'] )      {                $cat_id = $cat['id'];       }}$alias_url = ''; // alias bài viết$page = 1; // Trang mặc định$per_page = 20; // Số lượng bản ghi trên một trangif( $op == 'main' ){       if( empty( $cat_id ) )    {                if( preg_match( '/^page\-([0-9]+)$/', (isset( $array_op[0] ) ? $array_op[0] : ''), $m ) )         {                   $page = ( int )$m[1];              }        }        else     {                if( sizeof( $array_op ) == 2 and preg_match( '/^([a-z0-9\-]+)\-([0-9]+)$/i', $array_op[1], $m1 ) and !preg_match( '/^page\-([0-9]+)$/', $array_op[1], $m2 ) )            {                         // Nếu thỏa mãn điều kiện này thì là chi tiết bài viết                  $op = 'viewdetail';                         $alias_url = $m1[1];                 $post_id = $m1[2];                 }                else              {                         if( preg_match( '/^page\-([0-9]+)$/', (isset( $array_op[1] ) ? $array_op[1] : ''), $m ) )                  {                           $page = ( int )$m[1];                       }                         $op = 'viewcat';           }        }}
 Lưu ý:
- Sử dụng hàm phân trang có rewrite để phân trang danh sách.
- Trong file modules/ten-module/funcs/viewdetail.php, modules/ten-module/funcs/detail.php bạn tiền hành bắt các biến đã được khởi tạo ở đoạn mã bên trên để xử lý tiếp.

Trường hp bao gm func main (Trang chính) và viewdetail (Xem chi tiết bài viết).
Trước khi loại bỏ:
http://mynukeviet.net/news/viewdetail/loai-bo-ten-function-trong-url/

Sau khi loại bỏ:
http://mynukeviet.net/news/loai-bo-ten-function-trong-url/

Sử dụng đoạn mã bên dưới, trong file modules/ten-module/function.php
$page = 1; // Trang mặc định$per_page = 20; // Số lượng bản ghi trên 1 trang$id = 0; // ID bài viếtif( $op == 'main' ){     if( sizeof( $array_op ) == 1 )     {                 if( preg_match( '/^page\-([0-9]+)$/', (isset( $array_op[0] ) ? $array_op[0] : ''), $m ) )          {                         $page = ( int )$m[1];               }                elseif( preg_match( '/^([a-z0-9\-]+)\-([0-9]+)$/i', $array_op[0], $m1 ) and !preg_match( '/^page\-([0-9]+)$/', $array_op[0], $m2 ) )          {                         $op = 'detail';                     $id = $m1[2];             }        }}
Lưu ý:
- Sử dụng hàm phân trang có rewrite để phân trang danh sách.
- Trong file modules/ten-module/funcs/detail.php bạn tiền hành bắt các biến đã được khởi tạo ở đoạn mã bên trên để xử lý tiếp.

 

Những tin mới hơn

Những tin cũ hơn

Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây