Zum Inhalt springen

Ausgangspunkt auslesen

Erstellt am 8. Januar 2007 · 3 Antworten · letzte Antwort am 12. Januar 2007

Tags: Frage

birgitr ·

In der pi_base.php steht:

function pi_getPidList($pid_list,$recursive=0){
 if (!strcmp($pid_list,''))	
 $pid_list = $GLOBALS['TSFE']->id;
 $recursive = t3lib_div::intInRange($recursive,0);

 $pid_list_arr = array_unique(t3lib_div::trimExplode(',',$pid_list,1));
 $pid_list = array();

 foreach($pid_list_arr as $val)	{
  $val = t3lib_div::intInRange($val,0);
   if ($val)	{
    $_list = $this->cObj->getTreeList(-1*$val, $recursive);
    if ($_list)		
    $pid_list[] = $_list;
   }
 }
 return implode(',', $pid_list);
}

Besser ist die Funktion von Rupert aus tt_news, weil sie auch für Flexforms funktioniert:

function initPidList () {
// pid_list is the pid/list of pids from where to fetch the news items.
   $pid_list = $this->pi_getFFvalue($this->cObj->data['pi_flexform'], 'pages', 'sDEF');
   $pid_list = $pid_list?$pid_list:  trim($this->cObj->stdWrap($this->conf['pid_list'], $this->conf['pid_list.']));
   $pid_list = $pid_list ? implode(t3lib_div::intExplode(',', $pid_list), ','):
   $GLOBALS['TSFE']->id;

   $recursive = $this->pi_getFFvalue($this->cObj->data['pi_flexform'], 'recursive', 'sDEF');
   $recursive = is_numeric($recursive)?$recursive:$this->cObj->stdWrap($this->conf['recursive'], $this->conf['recursive.']);
		
// extend the pid_list by recursive levels
   $this->pid_list = $this->pi_getPidList($pid_list, $recursive);
   $this->pid_list = $this->pid_list?$this->pid_list:0;
   return $this->pid_list;
}
lightning.​net ·

Danke für deine rasche Antwort. Ist diese Funktion zum Auslesen von den Eintrag "Ausgangspunkt" von Extension ?
Ich hab in der Datenbank nachgeschaut. dieser Eintrag ist unter tt_content.pages abgespeichert. gibts bereit eine Funktion, diesen Eintrag auszulesen ?

miwolfram ·

das ist leicht:

folgender Code liefert dir ein Array mit den Seiten aus "Ausgangspunkt" zurück:

$dataPages = explode(',', $this->cObj->data['pages']);

Anwendbar überall im FrontendPlugin.