So blenden Sie den Struktureditor auf Seitenebene aus

Dieser Artikel beschreibt, wie Sie die Symbole des Struktureditors innerhalb der Bearbeitung ausblenden.

Das Beispielprojekt wird standardmässig so ausgeliefert, dass über die Metadaten-Maske der Struktureditor über eine Checkbox ausgeblendet werden kann.

Sofern Sie die Strukturelement-Symbole im Editor z.B. für bestimmte Objekte und Nicht-Administratoren immer ausblenden wollen, können Sie dies direkt in der Objektdatei definieren.

Setzen Sie hierzu innerhalb des Objektetemplates (z.B. für Meldungen) die Abfrage auf den Benutzertyp. Innerhalb der Abfrage setzen Sie dann die globale Variable zur Anzeige des Struktureditors auf Null, womit dieser deaktiviert wird.

Beispiel: Auszug aus der news.wObject.php mit Ausblenden des Struktureditors

...
  <xsl:template match="wd:object[@type = 'news']">
    <xsl:choose>
      <xsl:when test="$wIsInEditor">
        <xsl:if test="not($wUsertype = 'admin')">
          <xsl:value-of select="php:functionString('wEnv::setGlobalValue', 'showStructureEditor', '0')" />
        </xsl:if>
...

Damit der Pflegebenutzer den Struktureditor über die Metadaten-Maske nicht wieder einblenden kann, geben Sie diese Funktion nur dann aus, wenn es sich nicht um eine Meldung (type = 'news') handelt:

Beispiel: Auszug aus der standard.metadata.php

...
  <xsl:if test="not(wd:object[@type = 'news'])">
  <div class="wEditorExtensionFunctionLast">
    <label for="wShowHideStructureEditor"><xsl:value-of select="php:functionString('wTexts::getTextUser', 'editor_show_structure_editor')"/></label>
    <xsl:choose>
      <xsl:when test="not(php:functionString('wRequest::getCookie', 'showStructureEditor') = '0')">
        <span class="checkboxContainer"><input id="wShowHideStructureEditor" type="checkbox" checked="checked" onclick="this.checked ? wEditor.showStructureEditor('') : wEditor.hideStructureEditor('')"/></span>
      </xsl:when>
      <xsl:otherwise>
        <span class="checkboxContainer"><input id="wShowHideStructureEditor" type="checkbox" onclick="this.checked ? wEditor.showStructureEditor('') : wEditor.hideStructureEditor('')"/></span>       
      </xsl:otherwise>
    </xsl:choose>
  </div>
  </xsl:if>
...