|
|||
|
Hi!
Ich arbeite gerade an einem Plugin, dass eine eigene Listen- und Detailansicht besitzen soll. Deren Einträge Besitzen auch jeweile ein Bild. Ich habe in der Tabelle eine Spalte frames_image hinzugefügt und sofort war in der Detailansicht das Element um Bilder hinzuzufügen vorhanden. Super praktisch!! Leider funktionierte dieses Element nicht und es hat mich einen ganzen Tag gekostet um es zum laufen zu bringen. 1. Im Veyton-Buch ist nur die Rede davon dass das Plugin funktionen wie _get, _set, _getParams usw. besitzen muss. Es gehört jedoch nicht zu meinem Programmierstil Klassenmember mit einem Unterstrich zu benennen, deshalb habe ich das auch nicht gemacht. Die MediaImages-Klasse(funktion:setMainFile) erstellt jedoch eine Instanz meiner Klasse und greift auf die Member _table, _master_key und _image_key zu. Es sollte unbedingt kommuniziert werden, dass diese Member Teil einer Interfacedefinition sind und nicht umbenannt werden dürfen bzw. vorhanden sein müssen. 2. Trotzdem hat mein Plugin noch nicht funktioniert. In der Zeile, in der die Instanz erzeugt erstellt wird, wurde die ausführung des PHP-Codes einfach beendet. Try-Catch hatte nicht gebracht. Keine Fehlermeldung, nichts. Nach zwei Stunden hatte ich die Idee, dass ich meine Klasse mit require_once in der Klasse MediaImages einbinde. Nun hat alles funktioniert. Ich halte es für keine gute Vorgehensweise, eine Veytonklasse ändern zu müssen, damit ein Plugin funktioniert. Nach dem nächsten Veytonupdate wird das Plugin nicht mehr funktionieren. Gibt es eine Möglichkeit auf require_once verzichten zu können? lg, michael |
|
|||
|
Hi!
Ich glaube, ich habe die Antwort selber gefunden: HTML-Code:
<code> <hook>page_registry.php:bottom</hook> <order>1</order> <active>1</active> <phpcode><![CDATA[ require _SVR_WEBROOT.'plugins/mlr_racers/classes/class.mlr_frames.php'; ]]></phpcode> </code> lg, michael |
|
|||
|
Hallo Michael
Herzlichen Dank für deinen Forum-Beitrag! Ich habe einen ganzen Tag damit verbracht herauszufinden, weshalb immer der Fehler "Class xxx not found in ../xtFramework/classes/class.MediaImages.php" kommt, wenn ich in meinem Plugin ein Bild hinzufügen möchte. Irgendwann wurde mir dann klar, dass die Klasse nicht geladen wird, obwohl ich diese gemäss Buch als Hookpoint eingebunden hatte. Zum Glück bin ich dann doch noch auf diesen Eintrag gestossen ;-) Gemäss Buch bindet man die Klasse über den Hookpoint "store_main.php:bottom" ein. Damit steht die Klasse aber logischerweise nur im Frontend zur Verfügung nicht aber im Backend. Ein kleiner Nachtrag zu deiner Lösung. Falls jemand die Klasse bereits über "store_main.php:bottom" eingebunden hat, diesen Hookpoint wieder löschen, da sonst die Klasse 2x eingebunden wird -> weisse Seite im Frontend. LG |
![]() |
| Lesezeichen |
| Stichworte |
| feld, image, pluginklasse |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Installation PlugIn Länderabhängige Artikelpreise | moz4711 | Installation und Konfiguration | 0 | 30.04.2011 15:40 |
| Neues Plugin PayPal | MisterPiet | Fragen zur Software | 0 | 20.03.2011 18:52 |
| VEYTON - Neues Feld in der Anmeldung/Adressänderung | foster80 | Fragen zur Software | 1 | 26.11.2010 11:35 |
| Plugin Dresdner-Cetelem Kreditbank live sehen? | patston | Fragen zur Software | 9 | 23.12.2009 19:11 |