TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

jetzt buchen

Probleme mit userFunc


Autor Nachricht
Verfasst am: 09. 01. 2012 [14:23]
TheFreeman
Themenersteller
Dabei seit: 08.07.2006
Beiträge: 444
Hallo,

ich habe Probleme mit meiner userFunc.

Ich möchte gerne Mobile-Geräte auf eine seperate PID umleiten.
Dazu habe ich in die localconf.php folgende Funktion eingebaut:

PHP
function user_checkMobile() {
	if(preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge|
maemo|midp|mmp|mobile safari|opera mini|opera m(ob|in)i|palm(os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up
\.(browser|link)|vodafone|wap|linux|windows(ce|phone)|xda|xiino/i',$_SERVER['HTTP_USER_AGENT']) || 
preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|awa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|
ar(ch|go)|as(te|us)|attw|au(di|\-m|r|s)|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm
\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|
\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1u|g560|gene|gf
\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp(i|ip)|hs\-c|ht(c(\-| 
|_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac(|
\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt(|\/)|klon|kpt 
|kwc\-|kyo(c|k)|le(no|xi)|lg(g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m
\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-||o|v)|zz)|mt(50|p1|v)|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|
5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|
\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i
\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh
\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v)|sy(01|mb)|t2(18|50)|t6(00|10|1<img src="typo3conf/ext/mm_forum//res/smilies/icon_cool.gif" alt="icon_cool.gif" />|ta(gt|lk)|tcl
\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|
\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|9<img src="typo3conf/ext/mm_forum//res/smilies/icon_cool.gif" alt="icon_cool.gif" />|w3c(\-|)|webc|whit|wi(g|nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas
\-|your|zeto|zte\-/i',substr($_SERVER['HTTP_USER_AGENT'],0,4)))
	{
		header('Location: http://www.meinedomain.de/mobile.html');
	}
}


Im Root-Setup steht:
TYPOSCRIPT
[userFunc = user_checkMobile]
# tu nichts!
[end]


Der Filter funktioniert super. Nur leitet das System im LOOP auf die Seite mit der PID 30 (mobile.html). Aber auf der PID 30 liegt ein weiteres ROOT-Template, wo im Setup NICHTS von der userFunc auftaucht. daher verstehe ich das nicht, warum das so ist. Ich kann keinen Fehler finden.

Bin am verzweifeln. icon_redface.gif

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 09.01.2012 um 14:24.]

Je mehr ich weiss, desto mehr weiss ich, wie wenig ich weiss.
Profil
Verfasst am: 09. 01. 2012 [15:34]
LuP
Dabei seit: 12.04.2007
Beiträge: 270
Hallo,

es sieht so aus, als ob das Template von ROOT vererbt wird.
Versuch mal bitte in den Seiteneigenschaften von der Seite PID 30,
unter Options > Clear: Constants und Setup beide Haken zu setzen.

VG,
LuP

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 09.01.2012 um 15:35.]
Profil
Verfasst am: 09. 01. 2012 [16:54]
TheFreeman
Themenersteller
Dabei seit: 08.07.2006
Beiträge: 444
Hi,

also clear constants, clear setup & wurzelebene ist aktiviert.
Das ist auch der Grund, warum ich nicht weiter weiss. icon_cool.gif

LG Daniel

Je mehr ich weiss, desto mehr weiss ich, wie wenig ich weiss.
Profil
Verfasst am: 09. 01. 2012 [23:57]
Chrissli
Dabei seit: 19.04.2010
Beiträge: 295
Boah,
die RegExp ist ja dicke, und die funktionoert (oO) ??

Egal,
schau doch mal unter Templates im ObjectBrowser
der Unterseite das Setup durch, ob hier vielleicht doch etwas
geerbt wird

God's in his Heaven -
All's right with the world!
ProfilICQ
Verfasst am: 12. 01. 2012 [09:38]
igorshmigor
Dabei seit: 17.03.2006
Beiträge: 888
Versuch mal
TYPOSCRIPT
[userFunc = user_checkMobile()]

also mit Klammern am Ende.

ProfilWWW
Verfasst am: 12. 01. 2012 [10:19]
TheFreeman
Themenersteller
Dabei seit: 08.07.2006
Beiträge: 444
Danke für den Tip.
Habe jetzt aber einfach meine Lösung weggeschmissen und mir die
Extension cwmobileredirect installiert und Ihr werdet es nicht
glauben, aber auch hier entsteht ein Loop.banghead.gif

Also muss der Fehler woanders liegen. Ich finde den aber nicht.
Bitte um Hilfe.icon_redface.gif

Je mehr ich weiss, desto mehr weiss ich, wie wenig ich weiss.
Profil
Verfasst am: 12. 01. 2012 [10:37]
igorshmigor
Dabei seit: 17.03.2006
Beiträge: 888
Ach wie dumm von mir, habe die Frage zu schnell überflogen und falsch verstanden.

Hast Du im TS-Setup der Seite mobile.html auch simulatestatic aktiviert?

ProfilWWW
Verfasst am: 12. 01. 2012 [10:52]
TheFreeman
Themenersteller
Dabei seit: 08.07.2006
Beiträge: 444
Nein, ich benutze realURL, daher habe ich folgende Konfig:
config.simulateStaticDocuments = 0

Je mehr ich weiss, desto mehr weiss ich, wie wenig ich weiss.
Profil
Verfasst am: 12. 01. 2012 [11:03]
igorshmigor
Dabei seit: 17.03.2006
Beiträge: 888
Naja gut, dann halt RealURL. Hast Du auf der Seite mobile.html realurl aktiviert? Hast Du schonmal die Weiterleitungs-Extension und -Script weggelassen und geschaut, ob die URL dann korrekt aufgerufen werden kann? Nicht dass die Seite aufgrund falscher URL-Konfiguration nicht gefunden wird und dann deshalb immer wieder auf eine Fehlerseite umgeleitet wird (oder je nach Standardkonfiguration die Startseite) und diese wieder versucht auf die mobile.html weiterzuleiten usw.

ProfilWWW
Verfasst am: 12. 01. 2012 [11:30]
TheFreeman
Themenersteller
Dabei seit: 08.07.2006
Beiträge: 444
Hmm...nein, ohne der Extension klappen die URLs und auch die
Navigation in den beiden Bereichen, wie es soll.

Je mehr ich weiss, desto mehr weiss ich, wie wenig ich weiss.
Profil