Zeitversetzes Bloggen - trotzdem Trackback etc.

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Tscherno
Regular
Posts: 17
Joined: Wed Oct 19, 2005 1:13 pm
Contact:

Post by Tscherno »

Ich meinte nicht Cron per PHP abbilden, sondern schon per richtigen Cron Job. Dachter eher an eine spezielle Seite bzw. Parameter, welche aufgerufen wird und dann den Cron Event feuert. Daran könnte sich dann jedes beliebige Plugin hängen.

Aber wenn ich das mit dem external_plugin-Hook richtig verstehe, gibt es auch die Möglichkeit als Plugin einen Event zu starten? Ist das irgendwo genauer dokumentiert?

PS: Kann man das ganze Team irgendwie finanziell unterstützen?
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Okay, diese Cron-Sache gibt es bereits. Die nennt sich bei uns allerdings einfach external_plugin, tut aber das gleiche.

Für die Dokuementation kanni ch nur auf http://www.s9y.org/43.html verweisen - das beste und einfachste ist aber, wenn Du Dir einfach bestehende Plugins ansiehst. popfetcher hatte ich ja schon erwähnt, aber backup und blogpdf sind auch gute Beispiele für Plugins, die external_plugin Hooks verwenden. Das simpelste external_plugin-Beispiel ist aber glaub ich das livesearch plugin.

Eine finanzielle Unterstützung für das ganze Team gibt es so nicht - einige der Entwickler haben aber eigene Wunschlisten oder können per paypal/SourceForge Donations annehmen. Da die Entwickler alle unerschiedlich viel zum Projekt beigetragen haben und beitragen, wäre es etwas problematisch, das finanzielle gemeinsam zu regeln, da würde sich schnell Zwiespalt entstehen, weshalb wir uns bei unserem kleinen Team eher dagegen entschieden haben. Jannis trägt soweit ich weiß alle Hosting-Kosten, also er würde da sicher am ehesten von "Team-Zahlungen" für Serverkosten profitieren...

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Tscherno
Regular
Posts: 17
Joined: Wed Oct 19, 2005 1:13 pm
Contact:

Post by Tscherno »

Ok

Aber als eigenes Plugin wird man nicht verhindern können, dass Pings bzw. Trackbacks mehrfach gesendet werden... Am geschicktesten wäre wohl wirklich eine Erweiterung von serendipity_event_weblogping und serendipity_event_trackback...
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Doch, ein Plugin kann seine eigene Datentabelle erstellen und so "buch führen", welche Pingbacks schon gesendet wurden.

Optimalerweise sollte das Plugin bei aufruf seines events prüfen welche Artikel noch nicht getrtackbacked wurden und dann bei den einträgen das TB ausführen, wo der Zeitpunkt gerade erreicht wurde...

Einen hook auf das external_plugin kann man ohne probleme in weblogping und/oder trackback mit einbauen...

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Tscherno
Regular
Posts: 17
Joined: Wed Oct 19, 2005 1:13 pm
Contact:

Post by Tscherno »

Ist klar. Aber wie soll das Plugin wissen ob schon beim Anlegen ein Trackback bzw. Ping gesendet wurde?
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Indem das Plugin an den Hook einsetzt, bei dem ein Eintrag veröffentlicht wird (backend_saveEntry).

Das Plugin prüft dann, ob die Veröffentlichungszeit in der Zukunft liegt.

Wenn ja: Trackback verhindern, keinen Eintrag in der Trackback-Tabelle vornehmen. Die nächste Zeit muss das Plugin dann beim external_plugin event prüfen, ob die Zeit des Eintrags erreicht wurde, und dann das Trackback auslösen und in der Tabelle vermerken.

Wenn nein: Trackback senden, Eintrag in der Tabelle vornehmen. Da der Eintrag nun gesetzt ist, wird das Plugin beim external_plugin Event diesen Eintrag nicht mehr berücksichtigen.

Für bereits bestehende Einträge beim Zeitpunkt der Anlegung des Plugins sollten alle bestehenden Einträge in der Trackback-Tabelle als "erledigt" eingefügt werden.

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Post Reply