Estoy usando bbPress y bbPress usa la reescritura para que:
index.php?bbp_user={id}
se convierte
/forums/users/{login}
Quiero cambiarlo/agregarlo para que sea:
/forums/users/{id}
La razón es que el inicio de sesión de algunos usuarios es su correo electrónico, por lo que no queremos eso en la URL de la página de perfil.
Tengo el código para cambiar los enlaces que funcionan:
function bbp_custom_author_link( $url, $user_id, $user_nicename){
$url = site_url()."/forums/users/".$user_id;
return $url;
}
add_filter( 'bbp_get_user_profile_url', 'bbp_custom_author_link', 10, 3);
Pero sigo recibiendo errores 404 cuando haces clic en el enlace. Estoy tratando de agregar una regla de reescritura para solucionarlo, pero no funciona:
function bbp_custom_author_rewrite(){
add_rewrite_rule(
"^forums/users/([^/]*)$",
"index.php?bbp_user=$matches[1]",
"top"
);
}
add_action( 'init', 'bbp_custom_author_rewrite', 10);
Sigo recibiendo errores 404. Traté de agregar flush_rewrite_rules();
y volver a guardar los enlaces permanentes, pero no cambió.
.