Wordpress: Zugreifen auf die Funktion eines Plugins von einem Thema

8

Ich versuche, etwas Funktionalität von einem Plugin hinzuzufügen, das ich in ein Wordpress-Thema gemacht habe, aber ich habe wenig Freude. Die Dokumentation hilft mir nicht wirklich, das Problem zu lösen. Vielleicht kann hier jemand helfen.

Ich habe ein Plugin in Wordpress, das aktiviert ist und gut funktioniert. Die Klasse für dieses Plugin hat eine Funktion namens generateHtml, auf die ich gerne von einem Wordpress-Theme aus zugreifen möchte. Aber was auch immer ich versuche, ich kann anscheinend nicht auf den Code meines Plugins zugreifen.

Kann mir entweder eine Zusammenfassung dessen geben, was ich tun muss, um ein Thema zu erhalten, das auf Code von einem Plugin zugreift, und / oder darauf hinweisen, dass ich in meinem Code falsch liege:

Plugin:

%Vor%

Abschnitt aus der Kopfzeile des Themas:

%Vor%

Momentan sehe ich nur "Nö" und "Funktion NICHT gefunden". Danke für jede Eingabe.

Lee,

    
Lee Theobald 23.10.2009, 18:19
quelle

2 Antworten

6

Für den Anfang ist "imagerotator_show" keine Funktion; es ist der Name einer Art von Aktion. Wenn Sie die Funktion add_action () verwenden, fügt Wordpress Ihre Methode nur zur Liste der Funktionen / Methoden hinzu, die aufgerufen werden sollen, wenn eine bestimmte Aktion ausgelöst wird. Daher wird Ihr zweiter Test immer mit 'Funktion NICHT gefunden' antworten.

Die wahrscheinlichste Ursache des ersten Problems besteht darin, die Methode, die Sie als öffentliche Methode aufrufen möchten, nicht zu deklarieren. Sie machen den Code auch härter als nötig.

Die bewährte Methode zum Deklarieren von Methoden und Registrieren von Hooks aus einer Klasse sieht in etwa so aus:

%Vor%

Dies ermöglicht Ihrer Klasse, alle ihre Implementierungsdetails privat zu halten. Wenn Sie my_special_method () aufrufen müssen, tun Sie dies wie folgt:

%Vor%     
Craig Trader 23.10.2009, 19:01
quelle
1

@andrew, da ich nicht kommentieren kann Ich dachte, ich würde Ihre Nebenfrage beantworten. Siehe:

Ссылка

Dort wird erklärt, dass Sie beim Definieren einer Callback-Funktion von einem Objekt die Array-Funktion verwenden müssen. Es heißt im Grunde, dass man die Funktion 'my_hook_implementation' vom Objekt $ this erhält und sie als Callback-Parameter für den Add-Action-Hook verwendet. Das liegt daran, dass Sie die Funktion im Bereich des Objekts definiert haben und Sie den Bereich definieren müssen, damit PHP weiß, über welche Funktion Sie sprechen. Der Bereich ist das Objekt, auf das sich die Variable $ th bezieht.

    
sethreidnz 11.11.2013 07:34
quelle