Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: bitte um Hilfe bei replace Funktion in print_order.html

    Thomas M.

    • Fördermitglied
    • Beiträge: 196
    Grüß euch,

    ich bräuchte bitte eure Hilfe, da ich komplett ahnungslos bin.....
    Es geht darum, dass wir bei zwei Versandarten lange Beschreibungen haben, die zwar überall aufscheinen sollen, nur nicht auf der Rechnung, da die Optik komplett zerschossen wird (siehe Bild Rechnung_1).
    Ich habe gestern hier im Forum gefunden, dass es mit smarty replace gibt, nur habe ich keine Idee wo ich das, wie einfügen muss:
    ..\templates\tpl_modified_responsive_3\admin\print_order.html:
    Code: PHP  [Auswählen]
     {if is_array($PAYMENT_INFO) && count($PAYMENT_INFO) > 0}
        <br /><br />
        <div class="highlightbox">
          {foreach name=aussen item=data from=$PAYMENT_INFO}
            <strong>{$data.title|stripslashes}</strong>
            <table class="paymentinfotable {$data.class}">
              {foreach name=aussen item=info from=$data.fields}
                <tr>
                  {if $info.title != ''}<td>{$info.title|stripslashes}</td>{/if}
                  <td>{if $info.field}{$info.field|stripslashes}{else}&nbsp;{/if}</td>
                </tr>
              {/foreach}
            </table>
          {/foreach}
        </div>
        <br class="clearfix" />
        {/if}

    Die dazugehörigen Daten werden aus der DB in orders_total.title bereitgestellt.
    Kann mir bitte jemand von euch auf die Sprünge helfen?

    Shopversion: modified eCommerce Shopssoftware v2.0.5.1 rev 12725
    Template: modified Responsive 3

    Danke und Grüße aus Wien,
    Thomas

    Linkback: https://www.modified-shop.org/forum/index.php?topic=43011.0
    Templateshop - Eine große Auswahl an neuen und modernen Templates für die modified eCommerce Shopsoftware

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: bitte um Hilfe bei replace Funktion in print_order.html
    Antwort #1 am: 16. Juni 2023, 14:29:24
    Leg für alle verwendeten Sprachen in der /lang/SPRACHE/lang_SPRACHE.conf in der Sektion [print_order] einen neuen Eintrag mit dem Wunschtitel dein Versandart an, z. B.:

    Code: XML  [Auswählen]
    print_order_shipping_title = 'Surcharge for express shipping via DHL express'

    Wenn du nur das eine Versandprodukt hast, d. h. wenn dieser Text grundsätzlich immer auf der Rechnung steht, ersetze folgende Zeile:

    Code: PHP  [Auswählen]
    {if $info.title != ''}<td>{$info.title|stripslashes}</td>{/if}

    mit:

    Code: PHP  [Auswählen]
    {if $info.title != ''}<td>{#print_order_shipping_title#}</td>{/if}

    Wenn das nur sporadisch der Fall ist, ersetze die Zeile:

    Code: PHP  [Auswählen]
    {if $info.title != ''}<td>{$info.title|stripslashes}</td>{/if}

    mit:

    Code: PHP  [Auswählen]
    {if $info.title != ''}<td>{if strstr($info.title, 'express'}{#print_order_shipping_title#}{else}{$info.title|stripslashes}{/if}</td>{/if}

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: bitte um Hilfe bei replace Funktion in print_order.html
    Antwort #2 am: 16. Juni 2023, 15:09:29
    Es handelt sich mit diesem Thread eigtl. um einen (nicht gern gesehenen) Doppel-Post, was die Frage angeht.
    Ich habe in dem anderen Thread geantwortet.
    Auf Rechnung und Lieferschein nur den Titel der Versandart anzeigen?

    Gruß,
    noRiddle

    Thomas M.

    • Fördermitglied
    • Beiträge: 196
    Re: bitte um Hilfe bei replace Funktion in print_order.html
    Antwort #3 am: 18. Juni 2023, 08:15:58
    Guten Morgen,
    sorry, bin erst jetzt dazugekommen....

    @awids
    danke für Deine Hilfe, leider funktioniert beides nicht.
    Bei der ersten Version steht nach wie vor der gesamte Text auf der Rechnung (er greift nicht auf den Eintrag in ...\shoproot\lang\english\lang_english.conf bzw. ...\shoproot\lang\german\lang_german.conf zu)
    Die zweite Variante bringt eine weiße Seite beim Aufruf der Rechnung.

    so sehen meine Dateien aus:
    ..\shoproot\lang\english\lang_english.conf (am Ende von [print_order]):
    Code: XML  [Auswählen]
    print_order_shipping_title = 'Shipping'

    ..\shoproot\lang\german\lang_german.conf (am Ende von [print_order]):
    Code: XML  [Auswählen]
    print_order_shipping_title = 'Versand'

    ..\shoproot\templates\tpl_modified_responsive_3\admin\print_order.html:
    Code: PHP  [Auswählen]
              {foreach name=aussen item=info from=$data.fields}
                <tr>
                  <!--{if $info.title != ''}<td>{$info.title|stripslashes}</td>{/if}-->
                  {if $info.title != ''}<td>{#print_order_shipping_title#}</td>{/if}
                 <td>{if $info.field}{$info.field|stripslashes}{else}&nbsp;{/if}</td>
                </tr>
              {/foreach}
    falls von Belang, die ganze print_order.html:
    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="print_order"}
    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="{$charset}" />
      <title>{#title#} {$oID}</title>
     <meta name="robots" content="noindex, nofollow, noodp" />
      <base href="{$base_href}" />
      <link rel="stylesheet" type="text/css" href="{$tpl_path}stylesheet.css" />
      <script src="{$tpl_path}javascript/jquery.min.js" type="text/javascript"></script>
      <script type="text/javascript">
        {literal}
        $(document).ready(function(){
          window.focus();
          window.print();
        });
        {/literal}
      </script>
    </head>
    <body class="popupprint">
      <div class="printwrap_admin cf">
        <div class="printColumsLeft">
       {*<!--<p class="underline">{$ADDRESS_SMALL}</p>-->*}
          <div style="padding-left:15px;">{$address_label_customer}</div>
          <div class="print_small" style="margin-top:50px;">
            {if $csID}<strong>{#csID#}</strong> {$csID}<br />{/if}
           <strong>{#payment#}</strong> {$PAYMENT_METHOD}<br />
           <strong>{#order#}</strong> {$oID}<br />
           <strong>{#date#}</strong> {$DATE}<br />
                      <!--aktuelles Datum auf Rechnung-->
                      <strong>{#invoice_date#}</strong>{$smarty.now|date_format:" %d.%m.%Y"}<br />
                      {#payment_datetext#}
           {*<!--{if isset($INVOICE_NUMBER) && $INVOICE_NUMBER != '' }<br />
              <strong>{#invoice_number#}</strong> {$INVOICE_NUMBER}<br />
             <strong>{#invoice_date#}</strong> {$INVOICE_DATE}
           {/if}-->*}
            {if $vatID}<br /><strong>{#vatID#}</strong> {$vatID}{/if}
         </div>
        </div>
        <div class="printColumsRight">
          <div class="printlogo_admin"><img src="{$tpl_path}img/logo.gif" alt="{$smarty.const.STORE_NAME}" /></div>
          <div class="print_small" style="font-size:11px; line-height:15px;">{$ADDRESS_LARGE}</div>
        </div>
        <br class="clearfix">
        <div class="print_big">{#invoice#} {$oID}</div>
       <div class="hr_15"></div>
        <div class="printColumsLeft">
          <strong>{if isset($SHIPPING_CLASS) && strstr($SHIPPING_CLASS, 'selfpickup')}{#pickup_address#}{else}{#shipping_address#}{/if}</strong><br />{$address_label_shipping}
       </div>
        <div class="printColumsRight">
          {if $address_label_payment}<strong>{#payment_address#}</strong>{/if}<br />{$address_label_payment}
       </div>
        <br class="clearfix">
        <br />
        <table class="order_table">
          <tr class="headerrow">
            <td class="ord_table_left">{#head_units#}</td>
           <td class="ord_table_left">{#head_products#}</td>
           <td class="ord_table_right">{#head_artnr#}</td>
           <td class="ord_table_right">{#head_single_price#}</td>
           <td class="ord_table_right">{#head_price#}</td>
         </tr>
          {foreach name=aussen item=order_values from=$order_data}
          <tr class="mainrow">
            <td class="ord_table_left ord_width40">{$order_values.PRODUCTS_QTY}&nbsp;x</td>
            <td class="ord_table_left">
              <strong>{$order_values.PRODUCTS_NAME}</strong>
              {if sizeof($order_values.PRODUCTS_ATTRIBUTES_ARRAY) > 0}
                <ul class="attributes_list">
                  {foreach key=a_data item=attrib_data from=$order_values.PRODUCTS_ATTRIBUTES_ARRAY}
                  <li><strong>{$attrib_data.option}:</strong> {$attrib_data.value}</li>
                  {/foreach}
                </ul>
              {/if}
            </td>
            <td class="ord_table_right ord_width120">{$order_values.PRODUCTS_MODEL}{$order_values.PRODUCTS_ATTRIBUTES_MODEL}</td>
            <td class="ord_table_right ord_width110">{$order_values.PRODUCTS_SINGLE_PRICE}</td>
            <td class="ord_table_right ord_width120">{$order_values.PRODUCTS_PRICE}</td>
          </tr>
          {/foreach}
        </table>
        <div class="hr_5"></div>
        {if sizeof($order_total) > 0}
        <div class="total_table_right">
          <table class="total_table">
            {foreach name=aussen item=order_total_values from=$order_total}
            <tr>
              <td class="ord_table_right">{$order_total_values.TITLE}</td>
              <td class="ord_table_right ord_width120">{$order_total_values.TEXT}</td>
            </tr>
            {/foreach}
          </table>
        </div>
        <br class="clearfix" />
        {/if}
        {if isset($vat_info) && $vat_info != 0}
          <br />
          {if $vat_info == 2}{#vat_info_2#}{else}{#vat_info#}{/if}
         <br class="clearfix" />
        {/if}
        {if $COMMENTS}
        <div class="hr_5"></div>
        <br />
        <div class="print_small">
          <strong>{#comments#}</strong><br />
         {$COMMENTS}
        </div>
        {/if}
        {if is_array($PAYMENT_INFO) && count($PAYMENT_INFO) > 0}
        <br /><br />
        <div class="highlightbox">
          {foreach name=aussen item=data from=$PAYMENT_INFO}
            <strong>{$data.title|stripslashes}</strong>
            <table class="paymentinfotable {$data.class}">
              {foreach name=aussen item=info from=$data.fields}
                <tr>
                  {if $info.title != ''}<td>{#print_order_shipping_title#}</td>{/if}
                 <td>{if $info.field}{$info.field|stripslashes}{else}&nbsp;{/if}</td>
                </tr>
              {/foreach}
            </table>
          {/foreach}
        </div>
        <br class="clearfix" />
        {/if}
      </div>
    </body>
    </html>

    Die erste Version, dass nur "Shipping" bzw. "Versand" auf der Rechnung steht, würde unserer Chefin am besten zusagen.
    Hast Du bitte noch einen Tipp, wo ich ansetzen muss?
    Danke

    @noRiddle
    ok, mache ich nicht mehr, dachte, da die Fragestellung eine ganz andere ist, ist es in Ordnung.

    Grüße aus Wien,
    Thomas

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: bitte um Hilfe bei replace Funktion in print_order.html
    Antwort #4 am: 18. Juni 2023, 09:38:57
    Die Fragestellung ist ja nicht eine ganz andere, nur weil sie anders formuliert ist.

    Ich habe dir im anderen Thread eine Lösungsmöglichkeit gepostet.

    Gruß,
    noRiddle
    13 Antworten
    2860 Aufrufe
    25. Mai 2019, 11:45:53 von Jürgen
    2 Antworten
    3091 Aufrufe
    06. März 2010, 10:34:24 von downset
    3 Antworten
    2745 Aufrufe
    30. Januar 2014, 20:27:47 von 0815