Ich habe an meinem ersten WordPress-Plugin gearbeitet, und es funktioniert, zum größten Teil. Wenn ich jedoch das Plugin aktiviere, wird der Bildschirm zum Bearbeiten der Seite komplett durcheinander gebracht. Ich habe einen Screenshot angehängt.HTML von benutzerdefinierten Plugin-Shortcode auf Bildschirm Bearbeiten in WordPress
Jetzt denke ich, ich verstehe, warum, aber ich bin nicht sicher, wie es zu beheben. Ich habe das Plugin als Preisangebot eingerichtet, und wenn der Benutzer den Shortcode im Texteditor platziert, wird er auf dieser Seite angezeigt. Alles, was mit dem Shortcode verbunden ist, wird jedoch auch auf dem Bildschirm "Seite bearbeiten" angezeigt, wie auf dem Foto, das ich oben geteilt habe.
Hier ist ein Codeausschnitt, der das Problem zeigt. Ich verdichte das natürlich, aber das gibt mir das gleiche Ergebnis. Die "Hello World" und der Lorem Ipsum erscheinen immer noch auf dem Bildschirm der Bearbeitungsseite wie auf dem Screenshot.
<?php
function price_quote_display() {
?>
<h1>Hello World</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus laoreet sit amet felis nec molestie. Ut porttitor neque nec metus feugiat tincidunt.
</p>
<?php
}
//function calls html from shortcode
function register_shortcode(){
add_shortcode('price-quote','price_quote_display');
}
//sets up and calls function that contains shortcode
add_action('init', 'register_shortcode');
?>
Jede Idee, warum das HTML innerhalb des priceQuoteDisplay
zeigt auf der Bearbeitungsseite Bildschirm? Danke für jede Hilfe.
Sie Ihre Frage aktualisieren können alle relevanten Code enthalten in einer [Minimal, vollständig und prüfbare Beispiel] (https://stackoverflow.com/help/ mcve)? Dies wird uns helfen, das Problem leichter zu erkennen. – FluffyKitten
Danke für den Vorschlag. Ich habe die Frage so bearbeitet, dass sie ein wenig einfacher ist, aber das Problem immer noch weitergibt. – Coltvant
Das macht es klarer zu sehen, was passiert :). Ich bemerke: Sie rufen 'add_shortcode' über' add_action' auf init auf, was zu früh sein könnte. In jedem Plugin-Shortcode, den ich geschrieben habe, habe ich gerade den 'add_shortcode' direkt nach der Deklaration der Funktion eingefügt (d. H. Nicht in irgendwas einhaken), da das Plugin nur dann geladen wird, wenn WP dafür bereit ist. Eine andere Sache, die Sie versuchen sollten, ist, den Inhalt von Ihrer 'priceQuoteDisplay'-Funktion zurückzugeben, anstatt sie direkt anzuzeigen (obwohl ich dachte, Sie sollten es auf Ihre Weise tun können). – FluffyKitten