2016-06-30 4 views
1

Ich lehre derzeit selbst OpenCart und OCMOD. Ich habe ein grundlegendes Verständnis darüber, wie das System mit dem Erstellen einer XML-Mod-Datei und dem Hochladen über die Modifizierungsschnittstelle oder dem direkten Hinzufügen der XML-Daten in die XML-Zeile der Modifikations-Tabelle funktioniert.Ersetzen Admin TPL-Dateien mit OCMOD

Ich kann erfolgreich, mit XML, nach Dateien suchen und entweder Codezeilen ersetzen oder einfügen vor oder nach .. Die Grundlagen im Grunde genommen. Ich muss immer noch die vollen Fähigkeiten von XML lernen.

Meine Frage, wie kann ich eine Datei vollständig überschreiben? Wie gesagt, ich kann Code finden, ersetzen oder Code hinzufügen, indem ich nur nach einer einzelnen Zeile suche, aber wie im Beispiel unten, wenn ich versuche, nach der ganzen Datei zu suchen und einen einfachen Ersatz zu machen, wird es nicht funktionieren.

<!-- admin dashboard overide --> 
<file path="admin/view/template/common/dashboard.tpl"> 
    <operation> 
    <!-- search the whole file??? --> 
    <search> 
     <![CDATA[ 
     <?php echo $header; ?><?php echo $column_left; ?> 
     <div id="content"> 
      <div class="page-header"> 
      <div class="container-fluid"> 
       <h1><?php echo $heading_title; ?></h1> 
       <ul class="breadcrumb"> 
       <?php foreach ($breadcrumbs as $breadcrumb) { ?> 
       <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> 
       <?php } ?> 
       </ul> 
      </div> 
      </div> 
      <div class="container-fluid"> 
      <?php if ($error_install) { ?> 
      <div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> <?php echo $error_install; ?> 
       <button type="button" class="close" data-dismiss="alert">&times;</button> 
      </div> 
      <?php } ?> 
      <div class="row"> 
       <div class="col-lg-3 col-md-3 col-sm-6"><?php echo $order; ?></div> 
       <div class="col-lg-3 col-md-3 col-sm-6"><?php echo $sale; ?></div> 
       <div class="col-lg-3 col-md-3 col-sm-6"><?php echo $customer; ?></div> 
       <div class="col-lg-3 col-md-3 col-sm-6"><?php echo $online; ?></div> 
      </div> 
      <div class="row"> 
       <div class="col-lg-6 col-md-12 col-sx-12 col-sm-12"><?php echo $map; ?></div> 
       <div class="col-lg-6 col-md-12 col-sx-12 col-sm-12"><?php echo $chart; ?></div> 
      </div> 
      <div class="row"> 
       <div class="col-lg-4 col-md-12 col-sm-12 col-sx-12"><?php echo $activity; ?></div> 
       <div class="col-lg-8 col-md-12 col-sm-12 col-sx-12"> <?php echo $recent; ?> </div> 
      </div> 
      </div> 
     </div> 
     <?php echo $footer; ?> 
     ]]> 
    </search> 

    <!-- replace whole file with below --> 
    <add position="replace"> 
     <![CDATA[ 
     <div class="col-xs-12">OCMOD MODIFIED WORKING????? </div> 
     ]]> 
    </add> 

    </operation> 
</file> 

Antwort

1

Sie offset als Attribut für search und die Anzahl der Zeilen in der Datei als Wert verwenden kann:

offset="35" 

Dies funktioniert für mich:

<file path="admin/view/template/common/dashboard.tpl"> 
     <operation> 
     <search offset="35"> 
      <![CDATA[<?php echo $header; ?><?php echo $column_left; ?>]]> 
     </search> 
     <add position="replace"> 
      <![CDATA[ 
      <div class="col-xs-12">OCMOD MODIFIED WORKING????? </div> 
      ]]> 
     </add> 
     </operation> 
    </file> 
0

Vielen Dank für Ihre Antwort Mojaba, ich habe es versucht, und dieser Prozess hat funktioniert, danke, aber so wie ich es gemacht habe, habe ich einen anderen Ordner in admin/view/template/namens 'custom' erstellt und eine benutzerdefinierte Dashboa erstellt rd.tpl drin. Ich benutzte dann OCMOD, um den Controller zu bearbeiten und die Ansicht zu ersetzen, die wie folgt geladen wurde. :)

<file path="admin/controller/common/dashboard.php"> 
<operation> 
    <search> 
    <![CDATA[ 
     $this->response->setOutput($this->load->view('common/dashboard', $data)); 
    ]]> 
    </search> 
    <add position="replace"> 
    <![CDATA[ 
     $this->response->setOutput($this->load->view('custom/dashboard', $data)); 
    ]]> 
    </add> 
</operation> 

+0

Gern Peter, was ist das Problem jetzt? Können Sie meine Antwort akzeptieren, wenn es Ihnen geholfen hat? – DigitCart

+0

in diesem Fall half es Mate danke, es brachte mich zu einem besseren Ansatz mit dem, was ich erreichen wollte. –

+0

Können Sie mir mehr über das sagen, was Sie suchen? – DigitCart