[TYPO3-german] Probleme mit meiner userFunc

Daniel Mönig daniel at thefreeman.de
Mon Jan 9 14:36:35 CET 2012


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:

function user_checkMobile() {
	
if(preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hipto
p|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\.(br
owser|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|a
u(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(a
d|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|ik
om|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)|mme
f|mo(01|02|bi|de|do|t(\-||o|v)|zz)|mt(50|p1|v)|mwbp|mywa|n10[0-2]|n20[2-3]|n
30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2
im|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|
18)|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|98)|w3c(\-|)|webc|whit|wi(g|nc|nw)|wmlb|w
onu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i',substr($_SERVER['HTTP_USER_AGE
NT'],0,4)))
	{
		header('Location: http://www.meinedomain.de/mobile.html');
	}
}

Im Root-Setup steht:
[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. 

Lieben Gruß
Daniel



More information about the TYPO3-german mailing list