Adding Rewrite Rules in WordPress
In total two actions and one filter need to be triggered until we have the rule added:
add_action('init', 'my_add_rewrite_rule');
function my_add_rewrite_rule() {
add_rewrite_rule('^leaf/([0-9]+)/?', 'index.php?page_id=$matches[1]', 'top');
}
add_filter( 'rewrite_rules_array','my_update_options_table' );
function my_update_options_table( $rules ){
update_option( 'rewrite_rules_save', $rules );
}
add_action( 'wp_loaded','my_flush_rules' );
function my_flush_rules(){
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
…
tags: & category: -