Rewrite lại url cho page template wordpress, ví dụ mình có url: https://abc.com/ket-qua-hoc-tap/?sinhvien_id=4&nam_hoc=2022
Như vậy đường dẫn cần rewrite lại cho đẹp vào seo nữa, ý tưởng sẽ là https://abc.com/ket-qua-hoc-tap/nguyen-van-a/4/2022, như vậy đường dẫn url của chúng ta sẽ đẹp hơn nhiều và có lợi cho seo nữa đúng không nào
Sau đây là code (code dùng trong class)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
function custom_query_var( $vars ){ $vars[] = 'sinhvien_name'; $vars[] = 'sinhvien_id'; $vars[] = 'nam_hoc'; return $vars; } function custom_rewrite() { add_rewrite_rule( '^ket-qua-hoc-tap/([^/]*)/([^/]*)/([^/]*)/?', 'index.php?page_id=2&sinhvien_name=$matches[1]&sinhvien_id=$matches[2]&nam_hoc=$matches[3]', 'top'); } add_action('init', array($this,'custom_rewrite')); add_filter( 'query_vars', array($this,'custom_query_var')); |
1 2 3 4 5 6 7 8 9 10 11 12 |
function custom_query_var( $vars ){ $vars[] = 'code'; return $vars; } function custom_rewrite() { add_rewrite_rule( '(.+)/([^/]*)/?', 'index.php?pagename=$matches[1]&code=$matches[2]', 'top'); } add_action('init', array($this,'custom_rewrite')); add_filter( 'query_vars', array($this,'custom_query_var')); |
Chúng ta sẽ sử dụng như sau (sinvien_name chỉ là cho đẹp url thôi không cần quan tâm):
1 2 3 |
global $wp_query; $sinhvien_id = $wp_query->query_vars['sinhvien_id']; $nam_hoc = $wp_query->query_vars['nam_hoc']; |
Nhớ refresh permalink lại nha (đường dẫn tĩnh) thì nó mới có tác dụng không là ra 404 page đó
Mọi sự sao chép xin ghi rõ nguồn là fcwordpress.net
Chuyên trang về wordpress: hướng dẫn thiết kế theme, plugin, thủ thuật wordpress