So lesen Sie konkrete Elemente ins Mastertemplate ein

08. Feb 2010

Dieser Artikel beschreibt, wie Sie konkrete Elemente im Mastertemplate einlesen.

Die Beispielprojekte nutzen zum Einlesen der Elemente für den Struktureditor innerhalb des Mastertemplates folgendes wslMastertemplate-Tag. Über das project-Attribut wird mitgegeben, aus welchem Projekt sich das Mastertemplate die Strukturelemente ziehen soll. Ist z.B. /IhrGlobalesProjekt angegeben, werden die wItemMastertemplate-Dateien in /IhrGlobalesProjekt/wGlobal/mastertemplates/items erwartet und von dort eingelesen.

Beispiel: Auszug aus standard.wMastertemplate.php zum Includieren aller Elemente des Projektes (hier: /de)

...
<wslMastertemplate:templatesIncludeGroupItemsProject project="/IhrGlobalesProjekt" orderBy="/wd:extension/wd:meta/wd:sorting/@value"/>
...

Sofern Sie nur spezielle Elemente einlesen wollen, verwenden Sie das wslMastertemplate-Tag zum Einlesen bestimmter Items, was nachfolgend aufgezeigt wird.

Folgendes Beispiel setzt für ein erfolgreiches Einlesen des/der Elemente voraus, dass die wItems innerhalb einer Gruppe mit dem Namen "content1" liegen.

Beispiel: Auszug aus standard.wMastertemplate.php zum Includieren eines bestimmten Elementes einer Gruppe

<wd:group name="content1">
  <!-- Item wird innerhalb wd:group name="content1" erwartet -->
  <wslMastertemplate:templatesIncludeItems document="/IhrGlobalesProjekt/wGlobal/mastertemplates/items/text.wysiwyg.wItemMastertemplate.php" group="content1" xPath="" />
</wd:group>

Beispiel: Inhalt der Element-Datei text.wysiwyg.wItemMastertemplate.php

<?php $version="1.0"; $encoding="UTF-8"; ?>
<?php exit; ?>
<wd:document xmlns:wslMastertemplate="http://weblication.de/5.0/wslMastertemplate" xmlns:en="/en" xmlns:fr="/fr" xmlns:wsl="http://weblication.de/5.0/wsl" xmlns:wd="http://weblication.de/5.0/wd" version="1.0" type="page.standard">

  <wd:extension type="weblication" version="5.0">
    <wd:meta>
      <wd:title>Fliesstext</wd:title>
      <wd:description/>
      <wd:modification name="admin" time="1265646864"/>    
      <wd:creation name="admin" time="1252018717"/> 
      <wd:icon src="/IhrGlobalesProjekt/wGlobal/layout/images/element-icons/element_text.gif"/>
      <wd:sorting value="500-200"/>         
    </wd:meta>
    
    <wd:mastertemplate>    
      <wd:contentGroup name="content1"/> 
      <wd:contentGroup name="content2"/> 
      <wd:contentGroup name="content3"/> 
      <wd:contentGroup name="content4"/>
      <wd:contentGroup name="content5"/>      
      <wd:contentGroup name="container"/>
      <wd:contentGroup name="formContainer"/>                               
    </wd:mastertemplate>
    
    <wd:status>
      <wd:online from="" status="on" to=""/>
      <wd:type value=""/>
    </wd:status>    
    
    <wd:version value="5"/>
  <wd:personalization/>    <wd:cache expires="{wGetValueOfDefaultExtension()}"/>
  </wd:extension>     

  <wd:group name="content1">
          
    <wd:item name="Fliesstext" en:name="Text" icon="/IhrGlobalesProjekt/wGlobal/layout/images/element-icons/element_text.gif" type="text.wysiwyg">
      <wd:fragment id="title" type="char.text"/>
      <wd:fragment id="display" type="char.display"/>
      <wd:fragment id="text" type="text.standard"><![CDATA[<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut commodo pretium nisl. Integer sit amet lectus. Nam suscipit magna nec nunc. Maecenas eros ipsum, malesuada at, malesuada a, ultricies dignissim, justo. Mauris gravida dui eget elit. In lacus est, bibendum vitae, malesuada quis, lacinia vel, nulla. Aenean varius mauris vitae neque. Maecenas a nibh. Curabitur pretium tortor. Integer nec dolor non ante semper tincidunt. Cras consectetuer mauris vel quam. Morbi tincidunt, urna sed varius pellentesque, ligula justo blandit quam, sed tempus purus mauris sit amet dui. In sapien mauris, eleifend id, malesuada sed, faucibus nec, elit. Quisque facilisis faucibus neque. Sed malesuada mi eget elit. Fusce mauris massa, posuere a, sodales sit amet, egestas id, elit.</p>]]></wd:fragment>
    </wd:item>
    
  </wd:group>
    
</wd:document>

Folgendes Beispiel setzt für ein erfolgreiches Einlesen des/der Elemente keine bestimmte Gruppe innerhalb der Element-Datei voraus.

Beispiel: Auszug aus standard.wMastertemplate.php zum Includieren eines bestimmten Elementes

<wd:group name="content1">
  <!-- Item wird ohne Gruppenangabe eingelesen -->
  <wslMastertemplate:templatesIncludeItems document="/IhrGlobalesProjekt/wGlobal/mastertemplates/items/core.text.wItemMastertemplate.php" group="" xPath="//wd:item" />
</wd:group>

Beispiel: Auszug aus der Element-Datei core.text.wItemMastertemplate.php ohne Gruppenangabe

...
<wd:group>
        
  <wd:item id="text" icon="/IhrGlobalesProjekt/wGlobal/layout/images/element-icons/element_text.gif" name="Fliesstext" type="core.text">
    <wd:fragment id="title" type="char.text"/>
    <wd:fragment id="display" type="char.display"/>
    <wd:fragment id="text" type="text.standard"><![CDATA[<p>Lorem ipsum ...</p>]]></wd:fragment>
  </wd:item>
  
</wd:group>
...

Entwicklerbereich Weblication® CMS - © Scholl Communications AG