Plugin-Programmierung Lücken in der Doku

develonet

Aktives Mitglied
21. November 2010
23
0
Hallo ersteinmal,

ich versuche mich gerade in die PlugIn-API des JTL-Shop3 einzuarbeiten.
Eines vorab : das System gefällt mir richtig gut. Es bietet doch scheinbar alle Möglichkeiten, ohne dass man in Versuchung kommt, direkt im Core zumzuschmieren - denn der ist ja verschlüsselt...
Die Dokumentation ist ja leider noch nicht so richtig vollständig.

Daher kommen immer wieder Fragen auf... eine davon war, über welche Variable ich in welchem hook in den Artikeldetails auf den Artikel zugreifen kann.
Die Antwort habe ich inzwischen per Try'n'Error und endlos langen Debug-Ausgaben gefunden : $GLOBALS['AktuellerArtikel']

Nun stecke ich wieder fest. Ich möchte eine Datenbank-Tabelle für das Plugin anlegen und habe entsprechendes in der info.xml vermerkt und ein Script beigefügt.
Der Shop quittiert die Installation aber immer mit Fehler 205 Versuch eine nicht Plugintabelle anzulegen...

Wie muss eine Tabelle denn heißen, damit sie angelegt werden kann. Oder Übersehe ich was anderes? Das Script besteht nur aus einer "CREATE TABELE IF NOT EXISTS"-Anweisung...

Ich hoffe, dass gerade ein Wissensinhaber mitliest.

Vielen Dank für Eure Hilfe...

Grüße

PS: Ich entschuldige mich schonmal für evtl. dumme Fragen. Ich würde ja lieber mit Tipps und Rat im Forum vertreten sein - aber diese Verschlüsselung macht es mir leider unmöglich etwas Reverse-Engeneering zu betreiben, um mir meine Fragen selber zu beantworten.
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

und das nächste Problem.

Jetzt wollte ich meinen per PHP generierten HTML-Code auch in Artikel-Details ausgeben.
Nun bietet der Shop dafür also das Box-System, dass offenbar recht cool ist.

Dazu soll das Plugin also ne Box definieren.

entsprechende Infos stehen jetzt in der info.xml ...
Das Plugin meldet bei der Installation 85 -> Template-Datei fehlt ....
Wieso ? Der Name der Datei ist korrekt angegeben und die Datei liegt im Ordern version/100/frontend/template ....
Genau so spricht die Doku...

Was ist das Problem?
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

es ist frustrierend... das nächste große Fragezeichen :

laut Doku definiert ein Plugin über <FontendLink> eigene Links im Frontend.
Soweit sogut...

es ist wieder alles definiert :
-> eine php-Datei, die für smarty daten sammelt
-> eine Template-Datei, die diese Dinge dann anzeigt
-> die Dateien existieren genau da, wo es die Doku vorgibt
tpl im Ordner frontend/template
php im Ordner frontend

Es gibt keine Fehler beim Installieren des Plugins (Box und SQL sind auskommentiert, sonst gäbe es Fehler)

Nach einiger Zeit (ich glaube, erst, wenn ich im Backend in der Linkverwaltung gewesen bin) erscheint der Link auch im Frontend.
Leider ruft er weder die definierte php-Datei auf, noch zeigt er das definierte smarty-Template an...

Liegt das an mir?! Ich habe mich bisher nicht für sooo blöd gehalten...
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

fehler ist bekannt und bei JTL in der Analyse ;)

nur der letzte oder die anderen auch?

Ich fange wirklich gleich an zu heulen...

Egal in welche Richtung ich losgehe, nach 10m stehe ich vor einer Wand...
wenn die Jungs nicht so ängstlich mit dem php-Code wären, dann bekämen sie auch Hilfe aus der Community bei der Fehlersuche...

Finde ich diese Info, die Du hast im Bug-Forum ?
Da habe ich nämlich noch nicht gelesen, weil ich vorrausgesetzt habe, dass Leute Dinge nur dann dokumentieren, wenn sie sie ausprobiert haben.

-> da steht nichts dergleichen
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Achso - ich vergaß zu fragen :

Wie bekomme ich denn eine eigene Seite mit eigenem PHP und eigenem Template angezeigt?

Extern kann ja keine Lösung sein...

Es gibt ja offenbar irgendwo sowas wie Online-Watchers ...
Leider habe ich bisher nur Bilder davon gefunden und kein Plugin, dass man ausprobieren könnte
 

ag-websolutions.de

Sehr aktives Mitglied
29. Dezember 2009
14.548
232
AW: Plugin-Programmierung Lücken in der Doku

die fehlende Ausgabe eines frontend-links

was tabellen angeht....deren name muss sein

xplugin_PluginID_Tabname

PluginID = exakt so, wie du dein Plugin in der info.xml benannt hast
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Genau so tat ich... :confused::confused::confused:

Code:
<PluginID>develonet_articlefinder</PluginID>
Code:
CREATE TABLE IF NOT EXISTS `xplugin_develonet_articlefinder_parameters` (
  `articleId` int(10) unsigned NOT NULL,
  `param1` varchar(500) NOT NULL,
  `param2` varchar(500) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Code:
CREATE TABLE IF NOT EXISTS `xplugin_develonet_articlefinder_parameters_names` (
`articleId` INT UNSIGNED NOT NULL ,
`param1_name` INT NOT NULL ,
`param2_name` INT NOT NULL ,
`finder_title` INT NOT NULL ,
PRIMARY KEY ( `articleId` )
) ENGINE = MYISAM DEFAULT CHARSET=latin1;
ich mache gerade ein Update auf 3.02 - mglw. behebt das ja Fehler...
Ich beginne dann jetzt erstmal die Adminsitrationseite im Backend zu bauen.
Wenn das auch nicht funktioniert, weil wieder irgendein Bug dazwischenhaut... tjoa.. dann muss ich meinem Kunden einen anderen Shop empfehlen.
Denn ohne das Plugin will der nicht online gehen - das hat habe ich auch für seinen alten Shop programmiert.

Diese Geschichte hat mich bereits 2 Tage gekostet, wobei 4-6h angedacht waren... für den Kunden bedeutet das eine Verteuerung von 400%!!!
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Die Erkenntnis mit der Benamung der DB-Tabellen entstammt übrigens leider nicht der Dokumentation - genau da sollten solche wirklich elementaren Informationen aber stehen - sondern dem Anti-Spam-Plugin...

Vielen vielen Dank für diese Stückchen Code...

Genau dem entnehme ich jetzt nämlich auch die Taktik für das Backend. Denn auch darüber schweigt sich die Doku aus...
 

ag-websolutions.de

Sehr aktives Mitglied
29. Dezember 2009
14.548
232
AW: Plugin-Programmierung Lücken in der Doku

gern geschehen....bis auf das bekannt prob mit dem frontend-Link ist alles drin enthalten was du brauchst ;)

versuchs mal mit kürzen PluginID.....TabellenName....ohne "IF NOT EXISTS"

eigene Seite:
Gibt den info.xml - Schalter <FullscreenTemplate>....funktrioneirt aber genau so wenig wie <Template> ;)

wenn die Jungs nicht so ängstlich mit dem php-Code wären, dann bekämen sie auch Hilfe aus der Community bei der Fehlersuche...

kommt nicht gut.....die Verschlüsselung hat wenig mit Ängstlichkeit zu tun.....und dass der Plugin-Support derzeit noch in wenig hinten ansteht dürfte doch klar sein......99,9% haben....wenn sie denn überhaupt Probleme haben....Probleme mit dem Shop als solches....und nicht mit der Plugin-Entwicklung
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Cool ... der Backend-Part scheint zu funktionieren.
Und das mit dem SQL-File funktioniert jetzt auch... ich weiß aber nicht, ob es an der Version 3.02 oder am weglassen von "IF NOT EXISTS" liegt.

vmtl. liegt es am IF NOT EXISTS...

Es ist für mich aber einfach abwegig eine Tabelle anzulegen, wenn die schon existiert und damit nen Fehler zu verursachen... aber die werden einfach das QUERY prüfen und sagen

PHP:
if(substr( (preg_replace('/^( )*CREATE TABLE( )+/','',$queryString),0,8 ) != 'xplugin_' ){

...error...
}

BOX-Template wird aber immernoch vermisst... möchte mal wissen wo die Pluginverwaltung das sucht...
 

boaa-group

Sehr aktives Mitglied
28. Dezember 2007
4.932
9
Thailand, Bangkok
AW: Plugin-Programmierung Lücken in der Doku

Liegt am weglassen von "IF NOT EXISTS" da dies nie notwendig sein wird... entweder das plugin ist installiert, dann gibts die tabelle, oder es is noch nicht installiert dann gibts die tabelle nicht ;)

Lücken hat das System nur was updates angeht, da dafür immer erst das Plugin deinstalliert werden muss und somit vom Nutzer getätigte Einstellungen die in der Datenbank gespeichert werden verloren gehen...

PS: http://forum.jtl-software.de/plugin...nis-fuer-interessierte-und-programmierer.html <- wäre toll wenn auch du fertige plugins dann hier melden würdest...
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Naja, so halb...

wird das Plugin deinstalliert, dann werden die Tabellen nicht gelöscht (macht insofern Sinn, als das die Daten halt erhalten bleiben - und das werden in meinem Fall sehr viele)

- wenn man nun wieder installiert, hat man den SQL-Fehler (der zwar ignoriert wird, aber spätestens im Logfile auftaucht)

Der Einwand mit dem Plugin-Update ist bei Änderungen an der Plugin-DB aber gut zu wissen. Da müsste man prüfen, ob die Tabellen da sind und halt nen ALTER TABLE vor das CREATE TABLE schreiben.
Aber das wird vermutlich wieder verboten sein.
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Hat vielleicht einer von Euch nen Rezept, wie ich n Ajax-Request an ein Plugin loswerde?
Einfach die entsprechende Datei ansprechen funktioniert nicht, weil das mit nem 403-header zurück kommt.
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

Ah ok... ich hab was, das funktioniert...
Wie, verrate ich aber nur per PN, weil bei wenig verantwortungsvollem Umgang mit dieser Technik diverse Sicherheitslücken aufgetan werden können...
 

ag-websolutions.de

Sehr aktives Mitglied
29. Dezember 2009
14.548
232
AW: Plugin-Programmierung Lücken in der Doku

wird das Plugin deinstalliert, dann werden die Tabellen nicht gelöscht (macht insofern Sinn, als das die Daten halt erhalten bleiben - und das werden in meinem Fall sehr viele)

- wenn man nun wieder installiert, hat man den SQL-Fehler (der zwar ignoriert wird, aber spätestens im Logfile auftaucht)

da stimmt aber dann was nicht.....bei deinst werden sehr wohl die Tabellen gelöscht
 

develonet

Aktives Mitglied
21. November 2010
23
0
AW: Plugin-Programmierung Lücken in der Doku

nein, war alles schick...
Es gab auch keinen Fehler beim wieder installieren.
Danach waren die Tabellen immernoch da... ;)
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Affiliate Plugin Empfehlung für JTL Shop 5 Plugins für JTL-Shop 0
Neu 🌟Neues Plugin: digi·access - Die Lösung für Barrierefreiheit Plugins für JTL-Shop 17
Neu Plugin Debugging installiertes Plugin sorgt für 2-3 Sekunden längere Ladezeit seit JTLShop5 Plugins für JTL-Shop 2
Neu Suche JTL-Plugin-Entwickler für Bewertungsanzeige in Google (Rich Snippets) Plugins für JTL-Shop 4
Neu Trackingdaten nicht mit Advanced shipment tracking PRO plugin synchronisiert WooCommerce-Connector 3
Neu Expresskauf lässt sich in Paypal Plugin nicht ändern Plugins für JTL-Shop 1
Neu Eigenes Plugin erstellen (Versandkostenfrei mit Optionen) Plugins für JTL-Shop 1
Neu WooCommerce Anbindung ohne Plugin WooCommerce-Connector 7
Neu Plugin führt zu Abgleich fehler Technische Fragen zu Plugins und Templates 0
Neu Retouren Plugin à la Amazon Altenativen Plugins für JTL-Shop 0
Neu Plugin zur Preisanpassung - Hook gesucht Technische Fragen zu Plugins und Templates 1
Neu 💙 Neues Plugin: Animiertes Suchfeld (Animierte Suchvorschläge anzeigen) Plugins für JTL-Shop 4
Neu Shop 5.4 - Plugin läuft nicht mehr "class EventDispatcher is not available" Plugins für JTL-Shop 2
Neu Keine erneute Consent-Abfrage nachdem Plugin hinzugefügt wurde Plugins für JTL-Shop 2
Neu Plugin für Checkout Prozess Plugins für JTL-Shop 5
Neu Amazon Pay (Checkout v2) Plugin 1.2.18 seit gestern werden keine Zahlungen mehr eingezogen Plugins für JTL-Shop 0
Neu KBA Finder Plugin (CiN) - Probleme Plugins für JTL-Shop 2
Neu Artikel Upload Probleme mit Wawi Version 1.9.6.5 und B2B Market Plugin WooCommerce-Connector 6
Neu Sinnvoll? Skript- oder Plugin-Lösung für (Nicht-ganz-)Dropshipping? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Paypal Checkout Plugin - Kaufdetails an Paypal übergeben Einstellung Plugins für JTL-Shop 5
Neu Apple Pay in PayPal Plugin für die Schweiz Plugins für JTL-Shop 4
Neu Bekomme das GPSR Plugin nicht installiert Plugins für JTL-Shop 2
Neu 💙 Neues Plugin: Adresse Auto-Complete (Adressdaten automatisch befüllen) Plugins für JTL-Shop 0
Neu Budget Plugin? Plugins für JTL-Shop 0
Neu Produktsicherheit "GPRS Plugin" (Testkunden) gesucht Plugins für JTL-Shop 3
Neu 💙 Neues Plugin: JTL-ServerDashboard Pro (kompakte Serverinformationen anzeigen) Plugins für JTL-Shop 0

Ähnliche Themen