Grundkurs Plugins schreiben

  • Seite 4 von 11
08.01.2014 11:32
avatar  ( gelöscht )
#46 RE: Grundkurs Plugins schreiben - Grundlagen
Gast
( gelöscht )

Habe das mit dem Plugin Obere Leiste wieder rückgängig gemacht. Es trehten dann doch gewisse Fehler auf. Warscheinlich löst das Laden des Templates für die obere Leiste noch andere Dinge aus. Das Laden des Templates habe ich ja beim Laden des Plugins unterdrückt. Also warte ich erst mal bis das mit den Einstiegspunkten in den Templates kommt. Beim Template geomap funktioniert das allerdings prima mit dem Plugin anstatt des Templates.


 Antworten

 Beitrag melden
11.02.2014 21:28
avatar  Olaf
#47 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Welche Elemente kann man mit der Anweisung "{{template_stoploading(Element)}}" alles nicht ausführen lassen?
Sind das nur die Templateabschnitte wie "Obere Leiste" oder "Beitrag schreiben" oder kann man auch zwischen den makierten Punkten in diesen Templaten die ""{{template_stoploading(Element)}}" Anweisung ausführen lassen?

Zitat von Christian im Beitrag #41

Richtig ist {{template_stoploading(foben)}}
foben ist der interne Name für dieses Element. "Obere Leiste" ist hingegen nur eine Beschreibung.

Gibt es irgendwo eine Liste über die internen Namen?

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
13.02.2014 16:46 (zuletzt bearbeitet: 13.02.2014 16:47)
avatar  Olaf
#48 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Ich finde es einfach blöd,das sich Xobor so viel Mühe und Arbeit mit den Pluginsystem für die Öffentlichkeit gemacht hat und man als User hier einfach auf den "Trokenen" gelassen wird.Es werden entweder keine Fragen beantwortet oder nur so kurz,das man denken muß,jeder Buchstabe kostet Geld.
Wie soll ein einfacher User,der nicht das Programmieren studiert hat,wissen,wie man z.B. eine Data Variable im Pluginsystem anlegen soll?Das zu schaffen und auch noch gleichzeitig die Arbeitsweise zu verstehen ist ein reines Abenteuer.
Die Info von den Machern von den Pluginsystem ist einfach zu mager,um mit den System effektiv arbeiten zu können.
Ich hatte mir mal einen Assembler gekauft,da gab es ein ganzes Buch zu der Bedienung.Da blieb aber keine Frage mehr offen.Natürlich könnt Ihr das nicht zu Euren System bieten,verstehe ich auch,aber ich wünsche mir ein bisschen mehr Info,damit auch ein nicht studierter ein paar schöne Plugins schreiben kann.

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
13.02.2014 17:13
#49 RE: Grundkurs Plugins schreiben - Grundlagen
avatar
Techniker

Bzgl template_stoploading
Eine offizielle Liste wird noch kommen aber ist aktuell noch nicht verfügbar.

Allerdings kann man schon selber herausfinden, wie der interne Name einer Template-Seite lautet.
Dazu gehe man einfach in die Template-Entwicklung und lege sich ein Template an (man muss es nicht aktivieren), falls noch kein eigenes vorhanden ist. Dann geht man auf "edit" und klickt das gewünschte Template an.
Schaut man sich nun seine Adressleiste etwas genauer an, so wird man folgenden Parameter entdecken

admin/?page=template&option=viewtemplate&option=edittemplateitem&templatename=bottom&templateid=305&templateboard=588501

bottom steht hier für "Untere Leiste" und ist somit der interne Name.

Mit der genannten Templatefunktion, kann man also das Laden der dort angegebenen Templates verhindern. Es gilt allerdings zu beachten, dass die Funktion vor dem laden des zu stoppenden Elementes aufgerufen werden muss.

Wir versuchen so viele Fragen wie möglich und zeitnah zu beantworten aber da dieses System sich noch in Entwicklung befindet und es noch eine Menge zu tuen gibt, können wir leider schlecht rund um die Uhr jede Frage innerhalb von ein paar Minuten beantworten.

Bzgl. dem Beschreiben von Variablen haben wir allerdings schon einige Beispiele in den Docs
https://www.xobor.de/plugin-doc-api.html


 Antworten

 Beitrag melden
14.02.2014 11:01
avatar  Olaf
#50 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Zitat von Christian im Beitrag #49

Wir versuchen so viele Fragen wie möglich und zeitnah zu beantworten aber da dieses System sich noch in Entwicklung befindet und es noch eine Menge zu tuen gibt, können wir leider schlecht rund um die Uhr jede Frage innerhalb von ein paar Minuten beantworten.

Wenn man nach zwei Tagen immer noch keine Antwort bekommen hat,dann kann man aber nicht von Minuten reden...

Erstmal Danke für die Info der internen Namen der Templaten.Damit kann ich was anfangen.
So ganz ist aber meine Frage mit den "template_stoploading" nicht beantwortet worden,deshalb frage ich nochmal ein wenig genauer:
Ich möchte eine Änderung in den Templateabschnitt "Thread - Flat" zwischen "{{message==true.start}}....{{message==true.end}}" machen.Gibt es eine Möglichkeit,nur diesen Abschnitt mit z.B. mit "{{template_stoploading(message)}}" zu stoppen und dann im Plugin diesen geänderten Abschnitt "message" wieder genau dort einzusetzen?
Oder muß ich die ganze Template "Thread - Flat" stoppen und dann die ganze Template im Plugin einsetzen und dann meine Änderung einbauen?

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
14.02.2014 11:24
#51 RE: Grundkurs Plugins schreiben - Grundlagen
avatar
Techniker

Mit der Funktion kann man nur komplette Template-Elemente stoppen. Einen Teil in einem Element kann man so leider nicht stoppen. Demzufolge müsstest du das komplette Element selbst implementieren, wenn du es stoppst.


 Antworten

 Beitrag melden
23.02.2014 16:58
avatar  Olaf
#52 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Ich habe nochmal eine Frage:
Was bedeuten die Zahlen nach den Inline Elementen?(Bild "plugin elemente")
Und warum kann man sie nicht ansprechen,wo aber die Einsprungpunkte im Template gesetzt sind?(Bild "Template").

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/
Bildanhänge
imagepreview

Template.jpg

download

imagepreview

plugin elemente.jpg

download


Aufgrund eingeschränkter Benutzerrechte werden nur die Namen und (falls vorhanden) Vorschau-Grafiken der Dateianhänge angezeigt Jetzt anmelden!

 Antworten

 Beitrag melden
23.02.2014 22:32
#53 RE: Grundkurs Plugins schreiben - Grundlagen
avatar
Techniker

die Zahlen bedeuten die Codes für die Templates-Types.

Was meinst du mit nicht ansprechen? Das von dir gezeigte hast du doch ausgewählt in dem andderem Bild


 Antworten

 Beitrag melden
24.02.2014 06:08 (zuletzt bearbeitet: 24.02.2014 06:10)
avatar  Olaf
#54 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Zitat von Christian im Beitrag #53
die Zahlen bedeuten die Codes für die Templates-Types.

Kannst Du mir das Bitte genauer erklären?Was bedeutet 1_standart,110_standart,,111_standart,,144_standart und wofür wird es im Plugin gebraucht?
Zitat von Christian im Beitrag #53
Was meinst du mit nicht ansprechen? Das von dir gezeigte hast du doch ausgewählt in dem andderem Bild

Wenn ich einen Code zu einen Inline Element hinzufüge,dann wird er trotz der gesetzten Einsprungpunkte in der Template nicht gesetzt oder ausgeführt.Ich kann also kein Inline Element ansprechen.Warum ist das so?

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
24.02.2014 09:25
#55 RE: Grundkurs Plugins schreiben - Grundlagen
avatar
Techniker

111 = Gaia
1 = standard
144 = Business
110 = ProSilver

Nicht alle Ticks sind in jedem Template vorhanden. Das kann man anhand dieser Anzeige erkennen.
Wird es mit aufgelistet, gibt es diesen Tick dort.

Zu dem anderen Problem benötige ich mal einen Link und welches Plugin es ist, damit ich mir das mal anschauen kann.


 Antworten

 Beitrag melden
24.02.2014 20:14
avatar  Olaf
#56 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Zitat von Christian im Beitrag #55

111 = Gaia
1 = standard
144 = Business
110 = ProSilver

Nicht alle Ticks sind in jedem Template vorhanden. Das kann man anhand dieser Anzeige erkennen.
Wird es mit aufgelistet, gibt es diesen Tick dort.


Das ist eine wirklich wichtige Info von Dir,wodurch sich jetzt meine zweite Frage erübrigt hat.

Zur Info:
Ich wollte Marios Plugin "Durchschnittliche Beiträge im Forum" unter dem Avatar anzeigen lassen und hatte das Inline Element "profile_under_avatar" ausgewählt im Template "Mitglieder Profil".Da ich mein Plugin im Business Template erprobte und es nie angezeigt wurde,weil es diesen Einsprungpunkt nur für das Standarttemplate gibt,wußte ich nicht.
Deshalb meine Frage von oben:"Ich kann also kein Inline Element ansprechen.Warum ist das so?".

Getestet und im Standarttemplate funktionierte es einwandfrei.

Ich Danke Dir für diese wichtige Info.

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
08.03.2014 10:52 (zuletzt bearbeitet: 08.03.2014 11:12)
avatar  Olaf
#57 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Ich habe Fragen zu einer der bestimmt serverlastigsten Funktion vom Pluginsystem.
Ich möchte die gesamte Mitgliederliste mit der getDeepList()-Funktion abfragen.Ich weiß,das es auch die Schleife {{users.startlist}}....{{users.end}} im Template "Mitgliederliste" gibt,aber ich möchte sie nicht dort abfragen,aber die Variablen stehen leider nur dort zur Verfügung.
In der Dokumentation funktioniert Dein Beispiel jedenfalls so nicht (Schreibfehler in Deinem Beispiel schon korrigiert (getDeepList(),target_type : "3",),meine PluginID ist "tester"):

1
2
3
4
5
 
idata = {target_type : "3", limit : "all"}  
xobor.plugin("tester").getDeepList(idata,function(res){
alert(res.length + " Mitglieder im Forum")
});
 
 


(Ich weiß,das im Beispiel mit "res.length" nur die Mitgliederanzahl ausgegeben wird)
Wie kann ich die Abfrage im Pluginsystem schreiben,das die Variable(Array) "res" mit den Mitgliederdaten gefüllt ist?
Und kann ich überhaupt in jeder Template vom Forum mit der getDeepList()-Funktion im Pluginsystem alle Daten abfragen?

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
08.03.2014 22:50
#58 RE: Grundkurs Plugins schreiben - Grundlagen
avatar
Techniker

Daten die über die JS-Api bezogen werden, sind bis auf ganz wenige Ausnahmen überall verfügbar im Forum (ausgenommen der Administration).
Die getDeep und getDeepList können z.B. von überall im Forum aufgerufen werden.

Das von dir genannte Beispiel zeigt im alert() zwar nur die Anzahl der Mitglieder an aber in "res" steht alles. "res" ist hierbei ein JS-Object durch das man iterieren kann (z.B. mit jquery each). Im Objekt steht die User-ID (der key des Objects), Nickname und Benutzertitel als value.

Ich sehe allerdings, dass das Bsp hinsichtlich der List nicht richtig ist (muss nachgebessert werden)

richtig würde es in diesem Fall so aussehen

1
2
3
 

xobor.plugin('DEINEPLUGINID').getDeepList({target_type: 3, limit:'all'},function(a){alert(Object.keys(a).length)})
 
 



oder den Inhalt mal in der Console anzeigen

1
2
3
 

xobor.plugin('DEINEPLUGINID').getDeepList({target_type: 3, limit:'all'},function(a){console.log(Object.keys(a).length)})
 
 


 Antworten

 Beitrag melden
09.03.2014 11:29
avatar  Olaf
#59 RE: Grundkurs Plugins schreiben - Grundlagen
Ol
Mitglied

Zitat von Christian im Beitrag #58
oder den Inhalt mal in der Console anzeigen

1
2
3
 

xobor.plugin('DEINEPLUGINID').getDeepList({target_type: 3, limit:'all'},function(a){console.log(Object.keys(a).length)})
 
 




So ganz funktioniert es noch nicht...

Mein eingesetzten Code nach Deinem Beispiel:

1
 
xobor.plugin('tester').getDeepList({target_type: 3, limit:'all'},function(a){console.log(Object.keys(a).length)})
 



Die Ausgabe ist dann in der Console:

Fehler in Plugin: 138600_plugin_tester_test Fehlermeldung: ReferenceError: xobor is not defined

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
09.03.2014 19:42
#60 RE: Grundkurs Plugins schreiben - Grundlagen
avatar
Techniker

ja dann stimmt bei dir was nicht und die plugin.js wird nicht richtig geladen


 Antworten

 Beitrag melden
Bereits Mitglied?
Jetzt anmelden!
Mitglied werden?
Jetzt registrieren!