Zum Inhalt springen

reinen XML-Inhalt ausgeben

Erstellt am 2. Januar 2008 · 14 Antworten · letzte Antwort am 3. Januar 2008

Tags: RealURL, URLs & Routing, Frage

Unbekannter Benutzer ·

Hallo,

ich möchte über meine Extension reinen XML-Code ausgeben. Das heißt: die Seite soll kein Menü und sonst nichts dergleichen anzeigen. Nur die XML-Ausgabe, die von meiner Extension kommt. Das wäre die erste Frage.
Die zweite Frage: Wie kann ich den URL-Aufruf von z.B. domain/kategorien/test.xml auf meine Extension umleiten, damet eben jener XML-Inhalt ausgegeben werden kann?
(ich weiß, man kann es mit RealURL machen, weil aber nicht genau wie)

Danke

digedag ·

Probier's doch mal mit diesem Ansatz für die XML-Ausgabe:

XML_OUTPUT = PAGE
XML_OUTPUT {
  typeNum=123
  config.disableAllHeaderCode = 1
  config.metaCharset = utf-8
  config.additionalHeaders = Content-Type:text/xml;charset=utf-8
  config.xhtml_cleaning = 0
  config.admPanel = 0
  config.sendNoCacheHeaders = 1
  config.no_cache = 1
  
  ## Inserting the USER cObject for HTML rendering
  10 < plugin.tx_deinplugin
  10.userFunc = tx_deinplugin_class->main
}

Die Angaben zum Plugin musst du natürlich noch korrigieren.

Unbekannter Benutzer ·

Hm...

Ich habe den Extensionnamen angepasst, aber nichts tut sich.
Wenn ich die Seite aufrufe wird weiterhin alles mit Menü usw. angezeigt.
Was kann ich falsch gemacht haben?

Ist vielleicht der Aufruf falsch? Darf ich die Seite überhaupt in meinen normalen Seitenbaum aufnehmen?

Ungelöst ist leider auch noch, dass ich ja auch keine HTML-Datei aufrufen will, sondern eine XML-Datei (und zwar in einem frei definierbaren Verzeichnis)

Unbekannter Benutzer ·

Ich habe es jetzt hinbekommen, dass Typo beim Aufruf von text.xml etwas liefert. Allerdings eine leere Seite (also null Quellcode). Von meiner Extension-Ausgabe auch keine Spur...

digedag ·

Hast du den Parameter type=123 mit in deiner URL?

Wenn du die den Default-Type verwenden willst, musst du den Seitentyp (typeNum) natürlich wieder entfernen.

Unbekannter Benutzer ·

Nein. An der URL hängt nichts. Soll ja auch nicht, weil eine reine XML-Datei aufgerufen werden soll.
In der RealURL-Konf. habe ich folgendes zu stehen:
...
'test.xml' => array(
'keyValues' => array(
'type' => 123,
),
),
...

digedag ·

Dann häng doch zum Test mal noch

XML_OUTPUT {
  20 = TEXT
  20.value = TEST
}

mit ran, um zu prüfen, ob die PAGE geladen wird.

Wenn das geht, ist dein Plugin vermutlich nicht richtig konfiguriert. Liefert es denn eine Ausgabe, wenn du es "normal" auf einer Seite einbindest?

Unbekannter Benutzer · · Beste Antwort

Ja, die Test-Ausgabe kommt -- also wird die Seite wohl geladen.
Und: Ja, mein Plugin erzeugt eine Ausgabe wenn es auf einer normalen Seite eingebunden wird (testweise per Echo UND per Return in der Main-Funktion)

digedag ·

Dann prüf nochmal, daß dein TS-Code stimmt. Bei Plugin-ID und Klassenname schleichen sich ja schnell mal Tipfehler ein.

Ich wüsste ansonsten nicht, woran es nochliegen könnte. Mehr gibt es da nicht einzustellen...