Hook vs. include

bastibeckr

Aktives Mitglied
19. Juli 2010
15
0
Hallo,

ich bin auf ein Problem gestoßen, das ich leider nicht nachvollziehen kann, vielleicht kann mir jemand helfen.

Das Hook-System ist großartig, da ich quasi an allen wichtigen Stellen PHP-Code ausführen kann. Allerdings habe ich gerade das Problem, dass der eingefügte Code (Laden von Wordpress-Funktionen) nicht funktioniert, wenn ich ihn via Hook einfüge.
Wenn ich genau den selben Code an der entsprechenden Stelle (z.b. globalinclude) mittels include oder require_once einfüge, funktioniert es.

Ich fände es schade, wenn ich damit leben müsste, denn genau dafür sind die Hooks ja gedacht.

Deshalb die Frage: Wie unterscheidet sich die Einbindung via Hook von der Einbindung via include / require ?

Herzlichen Dank für die Hilfe!
 

MBesancon

Administrator
Mitarbeiter
1. Oktober 2010
2.056
188
Erkelenz
AW: Hook vs. include

Ein großer Unterschied zwischen der Nutzung von Hooks und "includes" ist folgender:

Bei einem Update und dem Einspielen aller Dateien ist dein "include" erstmal weg und müsste neugesetzt werden. Ein Plugin greift immer auf den Hook zu und wäre auch nach einem Update weiterhin vorhanden.
 

Zillis-Web

Guest
AW: Hook vs. include

Wo bekommt man genauere Hinweise zu diesen "Hook"?

Das klingt ja richtig interessant was damit machbar ist.

Gruß Uwe
 

bastibeckr

Aktives Mitglied
19. Juli 2010
15
0
AW: Hook vs. include

Ein großer Unterschied zwischen der Nutzung von Hooks und "includes" ist folgender:

Bei einem Update und dem Einspielen aller Dateien ist dein "include" erstmal weg und müsste neugesetzt werden. Ein Plugin greift immer auf den Hook zu und wäre auch nach einem Update weiterhin vorhanden.

Danke : ) Das hab ich jetzt mal vorrausgesetzt. Sorry, ich weiß dass das nicht besonders nett war, aber mich interessiert wirklich der Unterschied zwischen dem Hook und dem include ; )
Weil es nämlich funktioniert, wenn ich den Code an der entsprechenden Stelle einfüge / includiere und eben nicht, wenn ich's über den Hook löse, was ja viel schöner wäre!!

Danke.

Edit: Mit den Frontendlinks hat's nix zu tun - es geht wirklich nur darum, was mit dem Quellcode passiert, wenn er via Hook an die entsprechende Stelle eingefügt wird. Muss ja nen Unterschied geben, sonst würd's in beiden Fällen funktionieren.
Eine Übersicht mit den Hooks / Nummern / NAMEN (wie in der "hooks"-defines.php) wäre nett, wenn ichs schneller schaffe, stelle ich meine Übersicht natürlich gern zur Verfügung.
 

andy j

Entwickler
7. April 2010
817
1
AW: Hook vs. include

es geht wirklich nur darum, was mit dem Quellcode passiert, wenn er via Hook an die entsprechende Stelle eingefügt wird. Muss ja nen Unterschied geben, sonst würd's in beiden Fällen funktionieren.

Ja es gibt einen Unterschied. Hier ein Beispiel:

PHP:
$foo = 'bar';
executeHook(...);

In der hook.php

PHP:
echo $foo; // leer (Variable nicht vorhanden)
echo $GLOBALS['foo']; // bar

Der direkte Zugriff auf Variable $foo ist nicht möglich.
 

bastibeckr

Aktives Mitglied
19. Juli 2010
15
0
AW: Hook vs. include

Hallo,

danke für die Antworten. Hab momentan viele Baustellen, deshalb die späte Antwort. Der Hook funktioniert, es handelt sich um den in der globalinclude.php ganz unten. Mit "der Hook funktioniert" meine ich: Wenn ich
PHP:
z.B. echo "test";
in mein Plugin schreibe, wird an der Stelle auch "TEST" ausgegeben...
Hab die Datei gerade nicht da, deshalb weiß ich den Namen / Nr. des Hooks nicht, aber es gibt nur einen an der Stelle.

Das mit der Variable ist ein guter Hinweis, leider betrifft es mein Problem nicht. Ich komm irgendwie nicht drauf, was es sein könnte, aber irgend einen Unterschied muss es ja geben. Momentan läuft der Shop mit geändertem Quellcode.

OFF: Allerdings hab ich eine Wordpress-Integration anzubieten, falls jemand Interesse daran hat. Im Blog kann der Warenkorb und sämtliche Sessionvariablen angezeigt werden und im Shop können Wordpress-Funktionen verwendet werden. Funktioniert super, keine Änderung am WP-Quelltext notwendig, auch keine Änderung am Shop-Quellcode nötig, sofern das mit dem Hook irgendwann funktioniert.
 

ralph

Aktives Mitglied
30. Juni 2009
267
0
AW: Hook vs. include

OFF: Allerdings hab ich eine Wordpress-Integration anzubieten, falls jemand Interesse daran hat. Im Blog kann der Warenkorb und sämtliche Sessionvariablen angezeigt werden und im Shop können Wordpress-Funktionen verwendet werden. Funktioniert super, keine Änderung am WP-Quelltext notwendig, auch keine Änderung am Shop-Quellcode nötig, sofern das mit dem Hook irgendwann funktioniert.

Ich habe Interesse daran. Eine Lösung mit geändertem Shopquellcode ist mir Recht.