The rewrite rules are correct, but because you are modifying the $wp_rewrite
directly, you aren’t getting the benefit of being able to add the rule to the top of the stack using add_rewrite_rules
.
You are on the right track with the location of the rule in the array, but rules at the top are checked first, and the first rule to match is used.
Replacing your two functions with the code below should handle the query_var and the rewrite rule + positioning.
/**
* Adds rewrite rule for template variation paramater
*/
function gtp_add_variation_rewrite_rules() {
add_rewrite_tag( '%variation%', '([0-9]*)' );
add_rewrite_rule( 'products/(.+?)/variation/([0-9]*)/?$', 'index.php?post_type=products&products=$matches[1]&variation=$matches[2]', 'top' );
}
add_action( 'init', 'gtp_add_variation_rewrite_rules' );
Related Posts:
- Need help with add_rewrite_rule
- remove “index.php” from permalinks
- Custom post type permalink endpoint
- How to add a custom URL placeholder to author archives?
- URL Rewrite + Page + Custom Post Type = Unusual Redirect
- Make post slug have priority over category slug
- Using two permalinks for one post
- flexible rewrite ‘ramble’ URLs with WordPress
- Change the custom post type permalink
- Custom rewrite rules for feeds of custom queries (query_var query strings in URL)?
- Rewrite url / permalink for default archive – yearly / monthly
- Permalinks, Rewrites, Get Variables, Oh My!
- Change permalink for a single post entry
- How to Modify Existing Rewrite Rules?
- rewrite_rule for custom post type doesn’t affect get_permalink
- Add ‘articles’ prefix before blog posts url without affecting pagination
- custom permalink/shortlink with base62 encoded post ID
- When is it a good idea to build a permalink structure from scratch?
- WordPress not respecting template hierarchy (fetches index.php instead of single.php or page.php)
- Call to a member function add_rule() on a non-object
- I need a custom permalink for my website
- Permalinks: Page Not Found
- Why is add_rewrite_endpoint incompatible with /%category%/%postname%/ permalink structure?
- Re-write specific custom post type category URL to go to another page
- Remove custom taxonomy base from URL
- remove sub-category of Custom Post Type from permalink structure
- add_rewrite_rule not working for me
- Is a permastruct possible on pages?
- Using WP Rewrite, but just not “getting it”
- Rewrite rule for a query string
- Share same Slug for a Custom Post Type and 2 Taxonomies
- How to remove specific category from URL in WordPress
- Rewrite CPT permalinks and include WPML language
- Custom permalink leads to index page
- Rewrite rule intended for CPTs gives 404 for pages
- Permalink structure between 2 custom post types and a taxonomy
- Permalinks only for posts
- wordpress how to replace url /bar with foo/bar for custom post type
- Getting back a permalink from custom url
- Order custom post type posts by custom field with pretty URL
- Adding URL prefix for foreign language support
- Exclude single page from permalink rule
- help to remove last trailing slash using add_rewrite_rule
- add_rewrite_rule – Page Slug from “/foo-bar/” to “/foo/bar/”
- How can I set up a secondary permalink structure?
- Rewrite rule not passing variable
- How to Use metada Value in Url and is it possible? [duplicate]
- Safest way to create a custom permalink
- corrupted URLs – can’t leave starting page
- rewrite based slug standar post wp
- Create different permalinks for same post
- remove SLASH on single_post but KEEP on categories and parent pages
- Multiple Taxonomy Items for Separate URLs
- Multiple URL rewrite rules and get every prams
- Using a template file for a specific custom URL
- WordPress Multisite ABSPATH and get_home_path() to check for htaccess or web.config file
- Redirect page to homepage, keeping URL
- Add slug to default post permalinks ONLY
- how to have same rewrite rules for 2 different post type?
- Permalink structure /page/page/cpt-post gives 404 with pagination
- What permastrusture tags are generated out of the box right after creating custom post types and taxonomies?
- No Ones Been Able to Override my WordPress Rewrite Rule Issue!
- Rewrite posts url as they’re all children of a page
- a way to support totally different url structure
- Multiple Permalink Patterns for one page
- Pretty Filter URL
- WordPress Pagination Custom Rewrite Rule for Pages
- rewrites and custom links in page need help with add_rewrite_rule
- Prevent guessing slug
- WordPress permalink still not working (error or not understood?)
- WordPress custom permalinks, pages are now 404
- Add additional URL variations for a Post
- How to get pretty URLs with add_query_arg in permalinks
- Child pages with same slug
- Rewrite my default post URL
- How to reset canonical URLs / fix redirect loop
- how to add rewrite rule to wordpress default post type
- How to add a variable as a tag base?
- WPML – how to get the permalinks to display also the default language
- How do I add /blog/ as a prefix to permalink structure for posts, categories & tags?
- Custom permalinks with hierarchical taxonomy – getting PHP warning
- Rewrite URLs for LeadPages due to subdirectory installation
- Remove parent page from url
- Access or edit custom generated permalinks with WP_Rewrite
- Add custom query vars to pretty permalinks
- All in One Seo and Permalinks
- Adding custom query var to a single post without redirecting to its root slug
- How do I get the correct URL?
- Flush rewrite rules with scheduled event (cron)
- Extra url paths as variable
- How to change URL of my pages?
- Add Custom Pagination Permalink
- Customize category permalinks
- Update permalinks
- Losing the original URL when using add_rewrite_rule
- URL to an image in a post is changing when permalink is set to custom. Can I avoid this?
- permalinks url with woocommerce
- How to get the perfect WordPress, WooCommerce, Custom Post Type pretty permalinks?
- Blog url disappears
- make a new structure tag that does some processing