Re: [TYPO3-german] eID (pi_base) Frage
Darf ich nochmal nachfragen? Ich habe nun folgendes zusammengebastelt: - eine HTML-Datei namens ajax.html und folgendem Inhalt: !-- ###DOCUMENT_BODY### -- pHallo, AJAX./p !-- ###CONTENT_HEADER### --!-- ###CONTENT_HEADER### -- !-- ###CONTENT### -- !-- ###CONTENT### -- !-- ###DOCUMENT_BODY### -- - ...das TS: ajaxCall = PAGE ajaxCall { typeNum = 991 config { disableAllHeaderCode = 1 disableCharsetHeader = 1 disablePrefixComment = 1 xhtml_cleaning = 0 admPanel = 0 no_cache = 1 } 10 = TEMPLATE 10 { template = file template.file = fileadmin/_layout/ajax.html workOnSubpart = DOCUMENT_BODY subparts { CONTENT_HEADER temp.ARTICLE-HEADER CONTENT styles.content.get } } } - ...und das JS (jQuery): $(document).ready(function(){ $(nav ul li ul li a).click(function () { link = $(this).attr(href); getContent(link); $(this).blur(); return false; }); }); function getContent(link){ $.ajax({ // erweitere aufzurufenden Link url: link+'type=991', dataType: html, success: function(html) { console.log(html = + html); $(#post .row article.eightcol).html(html); } }); } Das Tutorial, das mir als Vorlage diente, ist dieses da: http://www.interaktionsdesigner.de/2008/12/12/typo3-seiten-dynamisch-nachladen-mit-jquery/ Das html im jQuery-Teil bleibt leer, die Anzeige der Website ebenso. nicht mal der statische Text von ajax.html wird angezeigt... Testseit hier: test.rowild.at Ändere ich im JS ?type=991 auf ?typeNum=991, wird die GANZE Seite in den entsprechenden Bereich nachgeladen (inkl. header, Nav etc...). Kann mir jemand bei der Fehlersuche helfen, bitte? Danke! Eine Frage, die sich mir auch stellt, ist, ob im ajax-html-Template eine workOnSubpart überhaupt notwendig ist? (Versuche es wegzulassen, haben keinen Unterschied bewirkt - es funktioniert trotzdem nicht...) LG, Robert Hallo Robert, vergiss eID in dem Zusammenhang, das klappt nicht, zumindest nicht ohne ganz erhebliche Schwierigkeiten. Dein AJAX-Call ruft ganz trivial normale TYPO3-Seiten auf. Diese Seiten erhalten ein eigenes Template (so dass keine Menüs ausgeliefert werden) und ein eigenes setup mit dieser Zeile: config.disableAllHeaderCode = 1 damit wird verhindert, dass HEAD ausgegeben wird, du bekommst also also rein den Content der Seite. Was da drin ist, ist völlig egal, es wird einfach eine TYPO3-Seite ausgeliefert, es sind also alle Inhaltselemente möglich, die TYPO3 kann. Natürlich musst du den AJAX-Call so aufbauen, dass der zurückgelieferte Inhalt in einen HTML-Container deiner rechten Spalte geschrieben wird, aber das ist eine Frage des korrekten JavaScripts - und des passenden Templates der Seiten, die über AJAX aufgerufen werden. --- eine zweite Variante wäre, mit einem zweiten page-Objekt zu arbeiten und das über typeNum zu unterscheiden. Dafür gibts eine Anleitung, z. B. hier: http://www.typo3-tutorials.org/tutorials/entwicklung/typo3-und-ajax-wie-geht-das.html erkläre ich also nicht weiter. Beides ist möglich, von Fall zu Fall ist das eine oder das andere praktischer. Wichtig ist nur, dass du nicht über eID gehst, das ist dafür nicht gemacht. (Wird in dem Link auch erläutert, also lass dich nicht irre machen) eID soll einfache Inhalte, die explizit nicht über die gesamte Frontend-Engine von TYPO3 laufen müssen (also z. B. Inhalte einer Extension) schnell auszuliefern. Gruß Peter Am 11.09.2012 um 21:22 schrieb Robert Wildling: Hi, Ich versuch mich grade mal an AJAX mit TYPO3 und stehe nun seit 2 Tagen vor der Frage, ob folgendes möglich ist: 2-spaltiges Layout: links die Navi, rechts der Inhalt (ohne Fusszeile etc, ganz simple) Der Inhalt rechts soll via AJAX gewechselt werden, wobei veschieden viele Content Elemente verwendet werden. Mir geht der Knoten nicht auf: geht das überhaupt? Wie weiß das script, welche Inhalte es auslesen soll und wie formatieren? Wenn man den weg über einen eigenen pageType geht, was muss das script der eingebundenen Ext machen, damit alle Inhalte ausgelesen werden? Bzw. das TS korrekt zurücKgegeben wird? Die Anleitungen, die ich bis jetzt gefunden habe, beschäftiugen sich entweder mit den Auslesen ganz bestimmter Daten wie zB FE-User-Listen oder zeigen ein Kontaktformularbeispiel. Aber ich konnte noch kein Tutorial finden, das erklärt, wie eine ganze Seite per AJAX erneuert wird... Danke für eure Hinweise und Tipps im Voraus! Viele Grüße, Robert ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german -- Xing: http://www.xing.com/profile/Peter_Linzenkirchner Web: http://www.typo3-lisardo.de Facebook:
Re: [TYPO3-german] eID (pi_base) Frage
Hallo Robert, Der Aufruf muss lauten: index.php?id=260amp;type=991 index.php?id=246amp;type=991 als type, nicht typeNum. Ansonsten kommt die Seite mit dem Seitentyp 0, also die Standardseite. Wenn ich http://test.rowild.at/index.php?id=246type=991 eintippe, dann kommt in der Tat gar nichts. Das hat erst mal nichts mit AJAX zu tun, sondern mit deinem Template bzw. der Template-Verarbeitung. Hier muss der rohe Inhalt erscheinen, den du per AJAX nachladen willst. Der Seitentyp wird erkannt, weil keine Fehlermeldung kommt. !-- ###DOCUMENT_BODY### -- pHallo, AJAX./p !-- ###CONTENT_HEADER### --!-- ###CONTENT_HEADER### -- !-- ###CONTENT### -- !-- ###CONTENT### -- !-- ###DOCUMENT_BODY### -- - ...das TS: ajaxCall = PAGE ajaxCall { typeNum = 991 config { disableAllHeaderCode = 1 disableCharsetHeader = 1 disablePrefixComment = 1 xhtml_cleaning = 0 admPanel = 0 no_cache = 1 } 10 = TEMPLATE 10 { template = file Schreibt man das nicht groß? template = FILE meines Wissens. template.file = fileadmin/_layout/ajax.html workOnSubpart = DOCUMENT_BODY subparts { CONTENT_HEADER temp.ARTICLE-HEADER CONTENT styles.content.get } } } Teste mal so: ajaxCall = PAGE ajaxCall { typeNum = 991 config { disableAllHeaderCode = 1 disableCharsetHeader = 1 disablePrefixComment = 1 xhtml_cleaning = 0 admPanel = 0 no_cache = 1 } 10 = TEXT 10.value = Ajax. } Wenn jetzt Ajax erscheint, dann stimmt was mit dem Template nicht, evtl. ja der Pfad oder tatsächlich die Schreibung von FILE. Kann mir jemand bei der Fehlersuche helfen, bitte? Danke! Eine Frage, die sich mir auch stellt, ist, ob im ajax-html-Template eine workOnSubpart überhaupt notwendig ist? (Versuche es wegzulassen, haben keinen Unterschied bewirkt - es funktioniert trotzdem nicht...) Wenn du keinen Subpart brauchst, kannst du es weglassen, aber der Fehler liegt woanders. Gruß Peter -- Xing: http://www.xing.com/profile/Peter_Linzenkirchner Web: http://www.typo3-lisardo.de Facebook: http://tinyurl.com/lisardo-multimedia ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
Re: [TYPO3-german] eID (pi_base) Frage
lieber Peter - herzlichen Dank für dein Adlerauge! 10 = TEMPLATE 10 { template = file Schreibt man das nicht groß? template = FILE meines Wissens. Genau das war es! Jetzt funzt's! Danke nochmals! LG, Robert ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
[TYPO3-german] eID (pi_base) Frage
Hi, Ich versuch mich grade mal an AJAX mit TYPO3 und stehe nun seit 2 Tagen vor der Frage, ob folgendes möglich ist: 2-spaltiges Layout: links die Navi, rechts der Inhalt (ohne Fusszeile etc, ganz simple) Der Inhalt rechts soll via AJAX gewechselt werden, wobei veschieden viele Content Elemente verwendet werden. Mir geht der Knoten nicht auf: geht das überhaupt? Wie weiß das script, welche Inhalte es auslesen soll und wie formatieren? Wenn man den weg über einen eigenen pageType geht, was muss das script der eingebundenen Ext machen, damit alle Inhalte ausgelesen werden? Bzw. das TS korrekt zurücKgegeben wird? Die Anleitungen, die ich bis jetzt gefunden habe, beschäftiugen sich entweder mit den Auslesen ganz bestimmter Daten wie zB FE-User-Listen oder zeigen ein Kontaktformularbeispiel. Aber ich konnte noch kein Tutorial finden, das erklärt, wie eine ganze Seite per AJAX erneuert wird... Danke für eure Hinweise und Tipps im Voraus! Viele Grüße, Robert ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
Re: [TYPO3-german] eID (pi_base) Frage
Hallo Robert, vergiss eID in dem Zusammenhang, das klappt nicht, zumindest nicht ohne ganz erhebliche Schwierigkeiten. Dein AJAX-Call ruft ganz trivial normale TYPO3-Seiten auf. Diese Seiten erhalten ein eigenes Template (so dass keine Menüs ausgeliefert werden) und ein eigenes setup mit dieser Zeile: config.disableAllHeaderCode = 1 damit wird verhindert, dass HEAD ausgegeben wird, du bekommst also also rein den Content der Seite. Was da drin ist, ist völlig egal, es wird einfach eine TYPO3-Seite ausgeliefert, es sind also alle Inhaltselemente möglich, die TYPO3 kann. Natürlich musst du den AJAX-Call so aufbauen, dass der zurückgelieferte Inhalt in einen HTML-Container deiner rechten Spalte geschrieben wird, aber das ist eine Frage des korrekten JavaScripts - und des passenden Templates der Seiten, die über AJAX aufgerufen werden. --- eine zweite Variante wäre, mit einem zweiten page-Objekt zu arbeiten und das über typeNum zu unterscheiden. Dafür gibts eine Anleitung, z. B. hier: http://www.typo3-tutorials.org/tutorials/entwicklung/typo3-und-ajax-wie-geht-das.html erkläre ich also nicht weiter. Beides ist möglich, von Fall zu Fall ist das eine oder das andere praktischer. Wichtig ist nur, dass du nicht über eID gehst, das ist dafür nicht gemacht. (Wird in dem Link auch erläutert, also lass dich nicht irre machen) eID soll einfache Inhalte, die explizit nicht über die gesamte Frontend-Engine von TYPO3 laufen müssen (also z. B. Inhalte einer Extension) schnell auszuliefern. Gruß Peter Am 11.09.2012 um 21:22 schrieb Robert Wildling: Hi, Ich versuch mich grade mal an AJAX mit TYPO3 und stehe nun seit 2 Tagen vor der Frage, ob folgendes möglich ist: 2-spaltiges Layout: links die Navi, rechts der Inhalt (ohne Fusszeile etc, ganz simple) Der Inhalt rechts soll via AJAX gewechselt werden, wobei veschieden viele Content Elemente verwendet werden. Mir geht der Knoten nicht auf: geht das überhaupt? Wie weiß das script, welche Inhalte es auslesen soll und wie formatieren? Wenn man den weg über einen eigenen pageType geht, was muss das script der eingebundenen Ext machen, damit alle Inhalte ausgelesen werden? Bzw. das TS korrekt zurücKgegeben wird? Die Anleitungen, die ich bis jetzt gefunden habe, beschäftiugen sich entweder mit den Auslesen ganz bestimmter Daten wie zB FE-User-Listen oder zeigen ein Kontaktformularbeispiel. Aber ich konnte noch kein Tutorial finden, das erklärt, wie eine ganze Seite per AJAX erneuert wird... Danke für eure Hinweise und Tipps im Voraus! Viele Grüße, Robert ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german -- Xing: http://www.xing.com/profile/Peter_Linzenkirchner Web: http://www.typo3-lisardo.de Facebook: http://tinyurl.com/lisardo-multimedia ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
Re: [TYPO3-german] eID (pi_base) Frage
:-) Bist ein echte Helfer - Danke dir!! Hallo Robert, vergiss eID in dem Zusammenhang, das klappt nicht, zumindest nicht ohne ganz erhebliche Schwierigkeiten. Dein AJAX-Call ruft ganz trivial normale TYPO3-Seiten auf. Diese Seiten erhalten ein eigenes Template (so dass keine Menüs ausgeliefert werden) und ein eigenes setup mit dieser Zeile: config.disableAllHeaderCode = 1 damit wird verhindert, dass HEAD ausgegeben wird, du bekommst also also rein den Content der Seite. Was da drin ist, ist völlig egal, es wird einfach eine TYPO3-Seite ausgeliefert, es sind also alle Inhaltselemente möglich, die TYPO3 kann. Natürlich musst du den AJAX-Call so aufbauen, dass der zurückgelieferte Inhalt in einen HTML-Container deiner rechten Spalte geschrieben wird, aber das ist eine Frage des korrekten JavaScripts - und des passenden Templates der Seiten, die über AJAX aufgerufen werden. --- eine zweite Variante wäre, mit einem zweiten page-Objekt zu arbeiten und das über typeNum zu unterscheiden. Dafür gibts eine Anleitung, z. B. hier: http://www.typo3-tutorials.org/tutorials/entwicklung/typo3-und-ajax-wie-geht-das.html erkläre ich also nicht weiter. Beides ist möglich, von Fall zu Fall ist das eine oder das andere praktischer. Wichtig ist nur, dass du nicht über eID gehst, das ist dafür nicht gemacht. (Wird in dem Link auch erläutert, also lass dich nicht irre machen) eID soll einfache Inhalte, die explizit nicht über die gesamte Frontend-Engine von TYPO3 laufen müssen (also z. B. Inhalte einer Extension) schnell auszuliefern. Gruß Peter Am 11.09.2012 um 21:22 schrieb Robert Wildling: Hi, Ich versuch mich grade mal an AJAX mit TYPO3 und stehe nun seit 2 Tagen vor der Frage, ob folgendes möglich ist: 2-spaltiges Layout: links die Navi, rechts der Inhalt (ohne Fusszeile etc, ganz simple) Der Inhalt rechts soll via AJAX gewechselt werden, wobei veschieden viele Content Elemente verwendet werden. Mir geht der Knoten nicht auf: geht das überhaupt? Wie weiß das script, welche Inhalte es auslesen soll und wie formatieren? Wenn man den weg über einen eigenen pageType geht, was muss das script der eingebundenen Ext machen, damit alle Inhalte ausgelesen werden? Bzw. das TS korrekt zurücKgegeben wird? Die Anleitungen, die ich bis jetzt gefunden habe, beschäftiugen sich entweder mit den Auslesen ganz bestimmter Daten wie zB FE-User-Listen oder zeigen ein Kontaktformularbeispiel. Aber ich konnte noch kein Tutorial finden, das erklärt, wie eine ganze Seite per AJAX erneuert wird... Danke für eure Hinweise und Tipps im Voraus! Viele Grüße, Robert ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german -- Xing: http://www.xing.com/profile/Peter_Linzenkirchner Web: http://www.typo3-lisardo.de Facebook: http://tinyurl.com/lisardo-multimedia ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german