Klasse ins Framework einbinden - wie?
Ich möchte mein Trackback-Modul dahingehend ausbauen, dass es auch Trackbacks empfangen kann.
Dafür benötige ich eine Datei, die von einem anderen Client aus aufgerufen wird und die per XML-RPC übermittelten Daten verarbeitet. Diese Datei hat bei mir folgenden Pfad:
TL_ROOT/system/modules/meinmodul/trackback_server.php
Ich habe das ganze jetzt zwar grundsätzlich am Laufen, allerdings ist diese Datei bisher komplett prozedural geschrieben und quasi komplett vom Framework getrennt.
Frage: wie mache ich das so, dass ich innerhalb des TL-Frameworks bleibe?
Wahrscheinlich muss in eine neue Klasse bauen, nur wie bekomme ich die dann von TL eingebunden? Welche Klasse muss ich mit meiner neuen Klasse erweitern?
Liste der Anhänge anzeigen (Anzahl: 1)
Hi Torben,
Zitat:
Dies geschieht nur nicht, wenn Du direkt die Modul-Datei aufrufst.
Genau das ist der Fall.
Ich erkläre noch mal kurz, was das Modul macht: Es besteht aus zwei Komponenten, dem trackback_client und dem trackback_server. Der Client sendet beim Speichern eines Newsbeitrags einen sog. Trackback bzw. Pingback an den Server. Das funktioniert auch schon problemlos, da die entsprechende Funktion (trackback_client::sendPing) als Callback beim Speichern eines Beitrags aufgerufen wird.
Der Server soll jetzt diese Anfrage annehmen und verarbeiten. D.h., er ruft zunächst die Seite, von der er den Pingback erhalten hat, auf und sucht in den <head>-Tags nach einem solchen Tag:
<link rel="pingback" href="http://localhost/~dirkweimar/typolight-2.8.1/system/modules/z_trackback/Trackback_server.php">
Hat er das gefunden, sendet er direkt an die dort stehende URL seinerseits die Antwort.
Die Pfade sind jetzt natürlich alle noch lokal, weswegen das bei Dir nicht funktionieren wird, aber zur Veranschaulichung hilft es vielleicht, wenn ich das Paket hier anhänge:
Anhang 1648
Zur Veranschaulichung habe ich die Serverdatei zweimal dazugepackt: einmal so, wie es klappt (trackback_server.php, prozedural) und eine Kopie (trackback_server_FRAMEWORK.php) mit meinem nicht funktionierenden Versuch, das ins Framework einzubinden.
Ich hoffe, ich konnte es einigermaßen erklären ...