Question

Je suis en train de modifier un tout petit peu un wordpress, mais je suis niveau 0 en php, donc je sucent un peu: /

Je veux ajouter un bouton personnalisé « tweet this » (je sais qu'il est déjà un gazillion d'entre eux, je voulais juste le faire moi-même, pour le plaisir)

Alors, j'essaie ceci:

<a href="http://twitter.com/home?status=<?php strip_tags(the_excerpt()) ?>" >tweet this</a>

the_excerpt () retourne "<p> ... excerpt ... </p>" et la fonction strip_tags ne supprime pas ces balises <p>!

Que dois-je faire de mal?

Merci et désolé s'il est évident.

Était-ce utile?

La solution

Votre problème est que the_excerpt() ne retourne pas son contenu strip_tags(), mais les sorties directement à l'aide echo. Alors strip_tags() (qui aurait besoin d'un echo précédent par la façon de faire un travail) ne peut rien faire.

Utilisez get_the_excerpt () à la place (saut de ligne insérée par souci de clarté, retirer lors de l'utilisation):

<a href="http://twitter.com/home?status=
<?php echo strip_tags(get_the_excerpt()); ?>" >tweet this</a>

Par ailleurs, je voudrais également urlencode() l'extrait, vous êtes lié à des ennuis autrement si elle contient des guillemets "double ou d'autres personnages drôles.

Autres conseils

Cela ne semble pas juste par le bon sens: <?php strip_tags(the_excerpt()) ?>, le doc WP expliqué, API the_excerpt doc , il a dit qu'il fait écho au lieu de le renvoyer. Eh bien, utilisez ob_start pour contourner le problème.

ob_start("callback");
the_excerpt();
$excerpt = ob_get_contents();

?>
<a href="http://twitter.com/home?status=<?php echo strip_tags($excerpt) ?>" >tweet this</a>
<?php

Note:. Je n'ai pas d'expérience API WordPress

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top