xxxi habe the_title() das gibt in diesem Fall etwas Text zurück Blue & Whiny
Wie wir sehen, besteht das Problem darin, dass das &-Zeichen anders aussieht
wie drehe ich mich Blue & Whiny hinein Blue & Whiny ich habe versucht: htmlspecialchars_decode(the_title()), html_entity_decode(the_title()),htmlspecialchars(the_title()) und nichts.
ich möchte konvertieren & zu &
Es gibt nicht viel Code zu teilen, ich mache einfach das: <?php the_title() ?> und ich bekomme Blue & Whiny. Wenn ich benutze get_the_title() es wird nichts angezeigt
Irgendwelche Ideen? Vielen Dank
bearbeiten1. Ich werde einen Code teilen:
<script type="text/javascript">
function showShareUI() {
var act = new gigya.services.socialize.UserAction();
act.setUserMessage("Check out this article.");
act.setTitle("Trends on Explore Talent - <?php the_title(); ?>");
act.setDescription("<?php get_the_content(); ?>");
act.setLinkBack("<?php the_permalink(); ?>");
act.addActionLink("Check out this article", "<?php the_permalink(); ?>");
var image = {
src: 'http://xxx.com/wp-content/uploads/2011/05/BOTTOM_BANNER.jpg',
href: '<?php the_permalink();?>',
type: 'image'
}
act.addMediaItem(image);
var params =
{
userAction: act, // The UserAction object enfolding the newsfeed data.
onError: onError, // onError method will be summoned if an error occurs.
onSendDone: onSendDone // onError method will be summoned after
,showEmailButton: true
// Gigya finishes the publishing process.
};
gigya.services.socialize.showShareUI(conf, params);
}
function onError(event) {
alert('An error has occured' + ': ' + event.errorCode + '; ' + event.errorMessage);
}
function onSendDone(event)
{
document.getElementById('status').style.color = "green";
document.getElementById('status').innerHTML = 'The newsfeed has been posted to: ' + event.providers;
}
</script>
Ich habe alles versucht. Das fängt an mich zu ärgern…
Hast du es versucht html_entity_decode(the_title()) von allein? Und wenn ja, was ist das Ergebnis
– Mick Hansen
13. Juli 2011 um 18:37 Uhr
Ich habe es getan, ich habe alles separat versucht, und es wird nicht dekodiert
– Patriotische Kuh
13. Juli 2011 um 18:38 Uhr
Was Sie wollen, ist anzuzeigen Blue & Whiny wie Blue & Whiny oder was anderes machen???
Wenn es nicht funktioniert, vergewissern Sie sich, dass Sie kein anderes Problem haben – z. B. das Übergeben einer Zeichenfolge, die doppelt codiert ist, oder das Ausführen htmlentities() später wieder auf die Saite.
Überprüfen Sie dies mit einer wörtlichen Zeichenfolge und var_dump() In der Ausgabe sollten Sie die decodierte Version sehen. Dann var_dump(the_title())um sicherzustellen, dass Sie tatsächlich das bestehen, was Sie glauben html_entity_decode().
html_entity_decode sollte den Trick machen. Wenn nicht, versuchen Sie, den dritten Parameter anzugeben $charset.
Diese Lösung hat bei mir funktioniert. Wenn es für zukünftige Leser hilfreich ist, hier ist meine spezifische “Disqus” -Implementierung: disqus_title='<?=addslashes(html_entity_decode(get_the_title($post->ID), ENT_QUOTES, 'UTF-8'))?> | Company Name' (json_encode() funktioniert auch anstelle von addslashesobwohl die Syntax leicht angepasst werden muss).
– mulse
19. Mai 2014 um 19:28 Uhr
Merkator
the_title() druckt direkt den Titel, also Hinzufügen html_entity_decode() direkt drumherum geht das nicht. Sie können es jedoch mit seinem dritten Funktionsargument vom Drucken abhalten. Z.B
Es gibt auch get_the_title()das den Titel nicht direkt druckt, aber im Gegensatz zu die ID des Beitrags benötigt, dessen Titel Sie möchten the_titledie den Titel des aktuellen Beitrags in druckt Die Schleife. Sie müssen also so etwas tun:
Und eigentlich sollten Sie in der Lage sein, einfach Folgendes zu tun:
<?php echo $post->post_title ?>
Der einzige Grund, warum diese Hilfsfunktionen da sind, ist, Dinge für Sie zu maskieren und Tags und anderes Zeug hinzuzufügen. Wenn Sie nur die rohe Eingabe möchten, können Sie sie direkt ausdrucken.
Dies wird jedoch nicht alle Ihre Probleme beheben, da Sie es in einer JavaScript-Zeichenfolge wiedergeben, sodass Sie bestimmte Zeichen mit Escapezeichen versehen müssen. json_encode() sollte den Trick machen, aber siehe die Frage “Übergeben Sie einen PHP-String an eine Javascript-Variable (einschließlich Escaping von Zeilenumbrüchen)” für weitere Details.
Hast du es versucht
html_entity_decode(the_title())
von allein? Und wenn ja, was ist das Ergebnis– Mick Hansen
13. Juli 2011 um 18:37 Uhr
Ich habe es getan, ich habe alles separat versucht, und es wird nicht dekodiert
– Patriotische Kuh
13. Juli 2011 um 18:38 Uhr
Was Sie wollen, ist anzuzeigen
Blue & Whiny
wieBlue & Whiny
oder was anderes machen???– Balaniwasch
13. Juli 2011 um 18:40 Uhr
Ja, ich möchte konvertieren
&
zu&
– Patriotische Kuh
13. Juli 2011 um 18:41 Uhr
@waitinforatrain wird richtig widerhallen
– Patriotische Kuh
13. Juli 2011 um 18:59 Uhr