Ergebnis 1 bis 1 von 1

Thema: dcaconfig.php - Default-Werte abhänig vom jeweiligem Seitenbaum

  1. #1
    Contao-Nutzer Avatar von DNS
    Registriert seit
    13.06.2010.
    Ort
    Kassel
    Beiträge
    174

    Standard dcaconfig.php - Default-Werte abhänig vom jeweiligem Seitenbaum

    Hi Community,

    ich probiere in der dcaconfig.php Default-Werte abhängig vom Seitenbaum zu setzten.
    Folgendes würde funktionieren wenn die dcaconfig.php nicht mehrfach aufgerufen würde...
    Vielleicht kann mir jemand sagen warum das so ist dass die mehrfach aufgerufen wird oder was ich tun kann damit das funktioniert?

    Komisch wird scheinbar bei Contend-Element (Galerie) doch nur einmal aufgerufen, aber es funktioniert trotzdem nicht...
    Jemand eine Idee?

    Viele Grüße
    Dennis

    PHP-Code:
    //Auf welcher Seite ist das Content-Element eingebunden und was ist der Parent davon.
    $parentPageId = \Database::getInstance()->prepare("SELECT tl_page.pid FROM tl_page, tl_content, tl_article WHERE tl_page.id = tl_article.pid AND tl_article.id = tl_content.pid AND tl_content.id = ?")->execute($this->Input->get('id'))->pid;

    if (!
    class_exists('getRootId')) //nachschauen ob die Klasse schon existiert weil dcaconfig.php scheinbar mehrfach aufgerufen wird...
    {
      class 
    getRootId
      
    {
        public static function 
    getPageRoot($pageId)
        {
          
    $pageRoot null;
          if(
    $pageRoot == null)
          {
            do 
    // find root page
            
    {
              
    $objMap = \Database::getInstance()->prepare("SELECT * FROM tl_page WHERE id=?")
              ->
    limit(1)
              ->
    execute($pageId);
              
    $row = (Object)$objMap->row();
              
    $id $row->pid;
              echo 
    $id;
            }
            while(
    $row->type != 'root' && $row->pid 0);
              
    $pageRoot $row;
          }
          return 
    $pageRoot;
        }
      }
    }

    // Überprüfen ob das Content-Element innerhalb des gewünschten Seitenbaums ist und mit Default-Werten füllen.
    if(getRootId::getPageRoot($parentPageId)->id == '273')
    {
        echo 
    'if'// Wird ausgegeben aber Werte werden nicht übernommen
        
    $GLOBALS['TL_DCA']['tl_content']['fields']['size']['default'] = array(480270'center_center');
    } else {
        echo 
    'else';
        
    $GLOBALS['TL_DCA']['tl_content']['fields']['size']['default'] = array(165120'center_center');

    Geändert von DNS (08.12.2014 um 16:07 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •