Donc, j'ai créé une URL personnalisée AUTEUR comme
domain.tld/user-nicename, et j'ai maintenant des liens comme domain.tld/john-doe.
Mon functions.php est
// AUTHOR
add_filter('author_rewrite_rules', 'no_author_base_rewrite_rules');
function no_author_base_rewrite_rules( $author_rewrite ) {
global $wpdb;
$author_rewrite = array();
$authors = $wpdb->get_results("SELECT user_nicename AS nicename from $wpdb->users");
foreach($authors as $author) {
$author_rewrite["({$author->nicename})/?$"] = 'index.php? author_name=$matches[1]';
}
return $author_rewrite;
}
if( !is_admin() ) {
add_action('init', 'author_rewrite_so_22115103');
}
function author_rewrite_so_22115103() {
global $wp_rewrite;
if( 'author' == $wp_rewrite->author_base ) $wp_rewrite->author_base = null;
}
Je crée des utilisateurs par programme avec wp_inser_user, où je définis toutes les informations nécessaires.
Mais lorsque j'approche de domaon.tld/new-user, j'ai 404 NOT FOUND, jusqu'à ce que j'ai ré-enregistré des permaliens.
Alors la question est, comment puis-je définir exactement cette ré-économie de permaliens par programme après chaque utilisation
Il suffit d’utiliser la documentation flush_rewrite_rules();
ici .