So filtern Sie Namensraumangaben über die pre-Datei

01. Jun 2010

Dieser Artikel beschreibt, wie Sie über die pre.php Ihres globalen Projektes die Attributangaben zu Namensräumen in der Ausgabe filtern.

Beim Kopieren von Inhalten über z.B. xsl:copy-of kann es vorkommen, dass die eingelesenen HTML-Tags teilweise mit Namensraumangaben versehen werden, z.B.:

<p xmlns:wsl="http://weblication.de/5.0/wsl" xmlns:wd="http://weblication.de/5.0/wd" xmlns:en="/en">

Um dies zu unterbinden, können Sie im Ausgabetemplate des entsprechenden Bereiches entweder über die WSL-Funktion "filterNamespaces" diese Angaben filtern oder Sie nehmen dies global für Ihr Projekt über die pre.php vor, was Sie beispielhaft dem folgenden Beispiel entnehmen können.

Beispiel: Auszug aus /IhrGlobalesProjek/wGlobal/scripts/pre.php

<?php

  
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  //                                                                                                               //
  // Diese Datei steuert die Ausgabe der Seiten                                                                    //
  //                                                                                                               //
  // Änderungen in dieser Datei wirken sich auf die gesamte Präsentation aus!                                      //
  //                                                                                                               //
  ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  
  
ob_start("ob_gzhandler");  

  require_once(
$_SERVER["DOCUMENT_ROOT"]."/weblication/grid5/framework/php/wSession.php");   
 
  
// Variablen zur Steuerung der Ausgabe
  
$preVars = array('outputType' => 'var''viewMode' => wRequest::getParameter('viewmode'), 'viewTemplate' => '''docType' => '''debugType' => '');
 
  include(
$_SERVER["DOCUMENT_ROOT"]."/weblication/grid5/default/project/wGlobal/scripts/pre.php");
  
  
$preResult str_replace(''''$preResult);
  
  
// Filtern von Namensraumangaben:
  
$preResult str_replace('xmlns:wsl="http://weblication.de/5.0/wsl"'''$preResult);
  
$preResult str_replace('xmlns:wd="http://weblication.de/5.0/wd"'''$preResult);
  
$preResult str_replace('xmlns="http://www.w3.org/1999/xhtml"'''$preResult);
  
  print 
$preResult;
  
  if(
wVariables::getValue('log_googleRanking_id''/spinGlobal') == 'yes'){       
    
wPageCur::addRanking();
  }

?>

Entwicklerbereich Weblication® CMS - © Scholl Communications AG