J'ai actuellement un shortcode qui permute dynamiquement les emplacements sur une page pour rendre chaque page spécifique à un emplacement.
Par exemple l'url
http://mywebsite.com/offers/scotland/
Serait le H1 de mon site Web être
Special Offers Scotland
Mais maintenant, je veux également changer la balise de titre pour permettre l'optimisation des moteurs de recherche d'effets. Je ne sais pas s'il est possible de le faire dans mon shortcode car il s'exécutera dans la boucle et donc le header.php a déjà terminé le chargement.
Tout conseil serait grandement apprécié.
Vous avez raison de penser que la boucle étant évaluée après l'en-tête, vous ne pourrez pas y obtenir le contenu de la boucle.
La façon la plus simple de le faire est probablement avec jQuery. Quelque chose comme ça:
<script type="text/javascript">
$(document).ready(function() {
document.title = 'blah';
});
</script>
Placez ce code dans votre boucle et le titre de la page sera modifié une fois le document prêt. Cependant, cela peut ne pas être une solution souhaitable, car certains moteurs de recherche n'évaluent pas JavaScript. Vous pouvez utiliser Google Webmaster Tools pour voir à quoi ressemble la page pour le robot Google.
En tant que solution alternative, je pense que All in One SEO Pack a les fonctionnalités que vous décrivez: