问题
Is it possible to rewrite only one category ?
I have a category "Photos" and just for this category.
I just want to rewrite it from /category/photos
to /photos
回答1:
You can do it with WP Rewrite API. Add this to functions.php
add_action('init', 'register_rewrites');
function register_rewrites() {
add_rewrite_rule('^photos$', 'index.php?category_name=photos','top');
}
Remember to reload your rewrite settings: go to Settings -> Permalinks and click on Save button - no changes needed.
回答2:
The Yoast SEO plugin has this function build in, I recommend this plugin in general.
no-category-base-wpml only does this
If you don't want to install a plugin for this. Around the web there are many tutorials which do this:
- http://thisismyurl.com/6704/remove-category-url-wordpress/
- http://www.webdevtuts.net/php/how-to-remove-category-from-wordpress-url-structure/
- http://www.wprecipes.com/how-to-remove-category-from-your-wordpress-url
Too enable this for just one category I would advise the following:
- create a page called
photos
. - create a theme template page for this photo page
- In is set up a new query_posts* getting the category 'photos'
- Include the
category.php
file. - assign that template to the photo page.
Not tested but should work. Because the page has the correct URL and should include the category. Questions, aks.
*query_posts is bad for performance if you want to do it totally correct use the pre_get_posts filter. It's requires more knowledge.
来源:https://stackoverflow.com/questions/12528800/rewrite-category-wordpress