J'utilise Buddypress et un plugin appelé Teambooking. Le plugin Teambooking ne connaît pas l'existence de Buddypress et utilise la chaîne de requête Wordpress par défaut (/? Author = "id", où id est le numéro d'identification de l'utilisateur) pour créer et afficher un lien vers la page d'un auteur. Mais Buddypress fournit des pages de profil pour les utilisateurs. Je veux donc être capable d'attraper quand quelqu'un clique sur le lien de la page d'auteur standard (/? Author = "id") et rediriger la page vers la page de profil utilisateur Buddypress. Je pensais pouvoir utiliser le hook 'template-redirect' pour attraper cet événement, mais cela ne fonctionne pas, parce que le hook n'est déclenché que lorsque la page de destination est chargée, et que Wordpress redirige automatiquement l'URL qui a la chaîne de requête /? author = "id" à la page index.php, parce qu'il n'y a pas de page author.php.Comment rediriger une requête d'auteur d'auteur vers une page de profil d'utilisateur buddypress dans Wordpress
Je ne peux pas utiliser $ _SERVER ["QUERY_STRING"] pour analyser l'URL, car comme je l'ai dit, Wordpress redirige automatiquement vers index.php, en supprimant la chaîne de requête. Je pensais aussi que je pourrais créer une page author.php, de sorte que WordPress arrête de rediriger vers index.php, et ensuite utiliser 'template_redirect' hook pour rediriger le author.php vers la page de profil buddypress, mais ça n'a pas été le cas. ne travaille pas non plus. J'ai créé author.php sur le répertoire de mon thème mais Wordpress continue à rediriger vers index.php.
Des idées sur la façon de cette redirection de la requête /? Author = "id" à la bonne page de profil buddypress de l'utilisateur?
Cela doit toujours arriver avec les plugins qui ne sont pas au courant de l'installation de Buddypress.
grâce
-Malena
Salut Rob, merci pour votre réponse, j'avais essayé également d'utiliser Is_author() avant, mais ne fonctionnait pas, mais ce parce qu'un autre plugin, Yoast SEO, interférait et redirigeait une requête pour la page auteur (/? author = id) vers index.php. Voir ma réponse ci-dessous. Une fois que j'ai désactivé Yoast SEO, les choses fonctionnent avec is_author(). J'ai utilisé une version modifiée de votre code pour dériver l'identifiant, car l'URL n'a pas de slug mais plutôt une chaîne de requête (? Author = id), que j'ai dû analyser. – malena