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: Beschreibung zu Versandart hinzufügen

    Schreinermeister

    • Fördermitglied
    • Beiträge: 415
    • Geschlecht:
    Beschreibung zu Versandart hinzufügen
    am: 24. April 2019, 20:13:47
    Hallo zusammen,

    ich versuche eine zusätzliche Beschreibung zur Versandart  table  auszugeben um meinen Kunden zu erklären, dass sich die dort genannten Versandkosten nicht ausschließlich auf das Porto der Lieferung beziehen.
    ( Leider gibt’s da immer wieder Probleme )   :no-sad:

    Da die Beschreibung etwas länger ausgefallen ist würde ich diese zusätzliche Beschreibung nur auf bestimmten Seiten mit anzeigen.
    z.B.
    checkout_shipping
    checkout_confirmation
    Mail zur Auftragsbestätigung
    ...

    Habe versucht die vorhandene Versandart-Beschreibung einfach zu ergänzen, dies sprengt allerdings bei vielen Ausgaben den vorhandenen Platz bzw. die Übersichtlichkeit leidet erheblich.
    Z.B. in der Rechnung, dem Lieferschein oder im Backend bei der Auftragsbearbeitung.

    Ich habe in der table.php eine zusätzliche Beschreibung definiert, scheitere aber diese in der order_details.html (und weitere) mit auszugeben. Der Text wird dort über {$shipping_data.NAME} ausgegeben. Leider kann ich die zuständige Codestelle, welche diese befüllt nicht finden.  :nixweiss:

    Einfacher erscheint mit in den betroffenen .html Seiten einen Code einzufügen wie.

    Wenn Versandart = tabe dann gib MODULE_SHIPPING_TABLE_TEXT_ZUSATZ mit aus.   :->

    Komme aber nicht weiter.

    Kann einer der Wissenden einen Anstoß leisten ?  :beef:

    Gruß Chis

    Linkback: https://www.modified-shop.org/forum/index.php?topic=40192.0

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Beschreibung zu Versandart hinzufügen
    Antwort #1 am: 27. April 2019, 14:18:20
    • Kopiere dir das Versandmodul (Tutorial: hier im Wiki)
    • Definiere den weitergehenden Text in den Sprach-Dateien mittels z.B.
      define('MODULE_SHIPPING_TABLEX_TEXT_TITLE_ADDITIONAL', 'DEIN_TEXT')
    • Füge den Text im Versandmodul mittels Conditions an.
      Z.B.:
    Anstatt
    Code: PHP  [Auswählen]
    $this->title = MODULE_SHIPPING_TABLEX_TEXT_TITLE;

    das
    Code: PHP  [Auswählen]
    $this->title = MODULE_SHIPPING_TABLEX_TEXT_TITLE.((strpos(basename($PHP_SELF), 'checkout') !== false || basename($PHP_SELF) == 'shopping_cart.php') ? MODULE_SHIPPING_TABLEX_TEXT_TITLE_ADDITIONAL : '');

    Damit müsste der zusätzliche Text im Warenkorb in der Versandmodul-Voransicht sowie auf allen Checkout-Seiten angezeigt werden.

    Nicht getestet !!, das machst du ja dann...

    Gruß,
    noRiddle

    Schreinermeister

    • Fördermitglied
    • Beiträge: 415
    • Geschlecht:
    Re: Beschreibung zu Versandart hinzufügen
    Antwort #2 am: 27. April 2019, 22:04:52
    Hallo noRiddle,

    danke für deine unkomplizierte Hilfe.
    Habs fast hinbekommen. Leider komme ich nun seit 2 Stunden nicht weiter.  :-I

    Ich hab den Zusatztext als  'MODULE_SHIPPING_TABLE_TEXT_ZUSATZ'  in der  /lang/german/modules/shipping/table.php - Sprachdatei  definiert.

    Wenn ich's so der /includes/modules/shipping so einfüge
    Code: PHP  [Auswählen]
     $this->title = MODULE_SHIPPING_TABLE_TEXT_TITLE . MODULE_SHIPPING_TABLE_TEXT_ZUSATZ;
    wird der Zusatztext mit angezeigt.
    Mit dem
    Code: PHP  [Auswählen]
    ((strpos(basename($PHP_SELF), 'checkout') !== false || basename($PHP_SELF) == 'shopping_cart.php') ?
    wird's leider auf keiner Seite angezeigt.

    Allerdings wird der Zusatztext auch beim Namen der Versandart angehängt (1).
    Sollte möglichst in die Beschreibung nach dem DE:  (2).
    [ Für Gäste sind keine Dateianhänge sichtbar ]
    Leider konnte ich nicht finden wo das "DE:" generiert wird um da ev. den Zusatztext anzuhängen.
    Ich vermute in der ot_shipping.php.  Traue mich da aber nicht ran. :no-sad:

    Gruß Chris

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Beschreibung zu Versandart hinzufügen
    Antwort #3 am: 27. April 2019, 22:10:23
    $PHP_SELF steht in der __construct-Methode nicht zur Verfügung.
    Mache deshalb aus
    Code: PHP  [Auswählen]
    global $order;

    das
    Code: PHP  [Auswählen]
    global $order, $PHP_SELF;

    Dann sollten die Bedingungen greifen.

    Wenn der Text an die Beschreibung angehängt werden soll, dann eben bei
    Code: PHP  [Auswählen]
    $this->description = MODULE_SHIPPING_TABLE_TEXT_DESCRIPTION;
    anhängen.

    Gruß,
    noRiddle

    Schreinermeister

    • Fördermitglied
    • Beiträge: 415
    • Geschlecht:
    Re: Beschreibung zu Versandart hinzufügen
    Antwort #4 am: 28. April 2019, 11:07:15
    Hallo noRiddle,

    nach dem
    Code: PHP  [Auswählen]
    global $order, $PHP_SELF;
    funktioniert die Bedingung.

    Den Zusatztext an die "description" anzuhängen hatte ich bereits versucht.  :-/

    Im Backend wird eine Veränderung an der "description" übernommen.

    Scheinbar wird die "description" im Frontend nicht genutzt/angezeigt,
    oder ich habe die irgendwo auskommentiert.   :-?  (konnte aber nichts dazu finden).

    Dann hab ich versucht den Zusatztext in der /includes/modules/shipping/table.php bei der Funktion
    Code: PHP  [Auswählen]
    function quote($method = '')
    einzubauen.

    Habe dort global mit $PHP_SELF erweitert
    Code: PHP  [Auswählen]
    global $order, $shipping_weight, $shipping_num_boxes, $xtPrice, $PHP_SELF;

    und
    Code: PHP  [Auswählen]
    $shipping_method = $dest_country . ' : ' . sprintf(MODULE_SHIPPING_TABLE_TEXT_WAY, $shipping_weight)

    erweitert in
    Code: PHP  [Auswählen]
    $shipping_method = $dest_country . ' : ' . sprintf(MODULE_SHIPPING_TABLE_TEXT_WAY, $shipping_weight) . ((strpos(basename($PHP_SELF), 'checkout') !== false || basename($PHP_SELF) == 'shopping_cart.php') ? MODULE_SHIPPING_TABLE_TEXT_ZUSATZ : '');

    nun wird der Zusatztext an der gewünschten Position angezeigt.
    Allerdings scheint die Bedingung dort nicht zu greifen. Der Text wird auf allen Seiten/Rechnungen/AB/Backend ...  angezeigt.  :datz:

    Gruß Chris

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Beschreibung zu Versandart hinzufügen
    Antwort #5 am: 28. April 2019, 16:38:44
    Ändere einfach in folgendem Array des Modules
    Code: PHP  [Auswählen]
              $this->quotes['methods'] = array(array('id' => $this->code,
                                                     'title' => $shipping_method,
                                                     'cost'  => $shipping_cost));
            }

    den Eintrag für 'title' nach deinem Gusto. Das ist das was dort erscheint wo du die Änderung haben möchtest.

    Was du bei 'title' einträgst definierst du vorher im __construct()
    z.B.:
    Code: PHP  [Auswählen]
    $this->additional_desc = (strpos(basename($PHP_SELF), 'checkout') !== false || basename($PHP_SELF) == 'shopping_cart.php') ? 'MODULE_SHIPPING_TABLEX_TEXT_ZUSATZ' : '';

    Ich würde empfehlen nicht blind Sachen auszuprobieren sondern zu versuchen die Zusammenhänge zu verstehen. Wo wird was definiert und wo benutzt ? Das ist manchmal etwas komplex, wie auch hier mit den Versandmodulen, aber was bringt das sonst ?
    Falls (ich sage 'falls') du einfach nur vorgefertigte Lösungen haben möchtest bin ich für Hilfe nicht mehr zu haben.
    Ich weiß auch nicht alles auswendig und muß oft nachschauen.

    Vielleicht ist mein Ansatz auch nicht so gut.
    Die Implementation der Versandmodule ist imho nicht zufriedenstellend in modified eCommerce.
    Z.B. müsstest du auch im Templeate in /module/orders_details.html dieses ({$COUNTRY}) auskommentieren weil es dort im Template hinzugefügt wird. Wie gesagt, nicht zufriedenstellend...

    Wieso werkelst du eigentlich im Original-Modul (und somit auch der Original-Sprachdatei) herum und zerstörst damit die Update-Sicherheit ?

    Gruß,
    noRiddle
    2 Antworten
    1196 Aufrufe
    15. November 2018, 20:32:07 von sakaguchinet
    4 Antworten
    2220 Aufrufe
    07. Juli 2015, 14:36:56 von cybermailer
    18 Antworten
    9090 Aufrufe
    21. Februar 2015, 12:58:06 von WeXsler