在别人博客里掏出来的,效果还不错.
默认的附件页面伪静态链接是http://日志链接/attachment/attachment-name/ 这种链接又长又丑,所以就想美化下!
打开模板下的”functions.php”在”?>”前添加以下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | //设置附件的固定链接 add_filter( 'attachment_link' , 'v7v3_attachment_link' ,10,2); function v7v3_attachment_link($link,$post_id){ return home_url( '/v7v3/' .$post_id. '/' ); } //设置附件的 rewrite 规则 add_action( 'generate_rewrite_rules' , 'v7v3_generate_rewrite_rules' ); function v7v3_generate_rewrite_rules($wp_rewrite){ $wp_rewrite->rules = v7v3_remove_rewrite_rules($wp_rewrite->rules); $wp_rewrite->extra_rules_top = v7v3_remove_rewrite_rules($wp_rewrite->extra_rules_top); $new_rules = array(); $new_rules[ 'v7v3/([0-9]+)/?$' ] = 'index.php?attachment_id=$matches[1]' ; $wp_rewrite->rules = $new_rules + $wp_rewrite->rules; } //删除附件原来的 rewrite 规则 function v7v3_remove_rewrite_rules($rules){ foreach ($rules as $key => $value) { if ( strpos($value, 'attachment' ) !== false ){ unset($rules[$key]); } } return $rules; } |
加上以上代码后附件页面的链接就成了http://siteurl/v7v3/media-id/
是不是 很美观了!
别忘了固定链接重新保存下伪静态哦!
标签:WordPress
发表评论