Skip to content

Instantly share code, notes, and snippets.

@danlefebvre
Created June 23, 2012 16:22
Show Gist options
  • Save danlefebvre/2978881 to your computer and use it in GitHub Desktop.
Save danlefebvre/2978881 to your computer and use it in GitHub Desktop.
WP rewrites
<?php
//functions.php
/**
* En gros, ce que tu fais c'est définir un path avec une regex, ici "custom-post-type/([^/]+)/?$" , qui correspond à "custom-post-type/anything-you-want"
* En ensuite tu redéfini les variables de l'objet $wp_query. Les variables sont accessibles dans ton fichier de thème avec la fonction get_query_var()
* Un bon outil pour tester les rewrites : http://wordpress.org/extend/plugins/monkeyman-rewrite-analyzer/
*/
add_action( 'generate_rewrite_rules', 'my_rewrite_rules' );
function my_rewrite_rules( $wp_rewrite )
{
$wp_rewrite->rules = array(
'custom-post-type/([^/]+)/?$' => $wp_rewrite->index.'?post_type=custom-post-type&taxonomy=custom-taxonomy&term='.$wp_rewrite->preg_index(1)
) + $wp_rewrite->rules;
}
//taxonomy.php
$post_type = get_query_var('post_type');
$taxonomy = get_query_var('taxonomy');
$term = get_query_var('term');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment