Zum Inhalt springen

Returnwert von PHP-Skript für ExcludeUidList verwenden

Erstellt am 7. Dezember 2005 · Noch keine Antworten

Tags: PHP, Frage

MichaelP ·

Ich habe einen Seitenbaum ca. 7 Ebenen. In diesem Baum befinden sich Blätter die ich in einem TMENU unterdrücken möchte (dynamisch).

Beispiel Seitenbaum (ZUSATZ wäre zu unterdrücken)

- Test1
  -Test2
    -ZUSATZ
    -Test5
  -Test3
  -Test4
  -ZUSATZ

Dazu Hab ich eine PHP-Funktion geschrieben, die z.B. die Uid von "Test1" ausliest und nach "Kindern" sucht (über Pid (Kind) = Uid (Parent)). Klappt auch wunderbar. Als Returnwert gebe ich die zu unterdrückende Uid an.

Meine Frage: Wie kann ich den Returnwert des PHP-Skriptes in TypoSript der Eigenschaft ExcludeUidList zuweisen?

Hier meine Codes:

page = PAGE
page.typeNum = 0   
page.includeLibs.some_string = fileadmin/temp_files/userfunctions.php

page.5 = USER
page.5.userFunc = user_functions->user_pidabfrage

page.10 = HMENU
page.10.excludeUidList = USER
page.10.excludeUidList.unserFunc = user_functions->user_pidabfrage

page.10 {  
1 = TMENU
1 {
    NO {
      allWrap = <tr><td>|</td></tr><br />
    }
  }
}
<?php
class user_functions {

	function user_pidabfrage() {
	$unid = 0;
	$vorlage = "ZUSATZ";
	$pageid = $GLOBALS['TSFE']->page['uid'];
	$sqlstring = 'SELECT title, uid FROM `pages` WHERE `pid` ='.$pageid;
	$erg = mysql_query($sqlstring);
		while ( list ( $title, $uid ) = mysql_fetch_row($erg)){
			if($title == $vorlage){
				$unid = $uid;	
			}	
		}
	}
}
?>

Ich hab mal unter page.5 die PHP-Funktion aufgerufen, das funktioniert. Aber unter page.10.excludeUidList wird der PHP-Code überhaupt nicht ausgeführt (mit "echo" getestet).

Ich Bitte um Hilfe.

PS: Das ist nur ein Beispiel, brauche öfter Returnwerte von PHP für TS.