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: checkout_confirmation.php: Text anders darstellen

    Teichbau

    • Fördermitglied
    • Beiträge: 385
    • Geschlecht:
    Hallo,
    in der checkout_confirmation.php ist ja unten am Ende der Bereich der Zusammenfassung:

    Zwischensumme:    
    Versandkosten (Versand nach: DE : 0 ):
    Paypal Gebühren :
    inkl. MwSt. 19%:
    inkl. Unbekannter Steuersatz:
    Summe:

    Nun möchte ich nicht nur die Zeile Summe als "Fett" dargestellt haben,
    sondern auch die vorherigen 5 Zeilen.
    In der styleshet.css habe ich einen "Block" (nennt man es so?) wie folgt angelegt:

    .main_zusammenfassung {
       font-family: Verdana, Arial, Helvetica, sans-serif;
       font-size: 10px;
       font-weight: bold;
       color: #000000;
       text-decoration: none;
       background-color: #CC0000
    }

    Nur wo, und/oder in welcher Datei verknüpfe ich das ganze? In der checkout_confirmation.php habe ich als Laie nichts gefunden.
    Kann mir da jemand behilflich sein?
    Gruß Torsten

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

    MW

    • Fördermitglied
    • Beiträge: 418
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #1 am: 05. August 2012, 14:33:29
    checkout_confirmation.html , dort der Bereich {TOTAL_BLOCK}

    Zu finden im Template Ordner in module.

    Teichbau

    • Fördermitglied
    • Beiträge: 385
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #2 am: 05. August 2012, 14:53:06
    Hallo MW,
    vielen Dank für die Information.
    So sieht es in dem Bereich aus:
    Code: PHP  [Auswählen]
    <div class="highlightbox"> {$PRODUCTS_BLOCK}
        <div class="hr"></div>
     {$TOTAL_BLOCK} </div>
    Wie muß ich jetzt mein stylesheet Block .main_zusammenfassung einbinden?
    So hat es nicht funktioniert:
    Code: PHP  [Auswählen]
    <div class="highlightbox"> {$PRODUCTS_BLOCK}
        <div class="hr"></div></div>
    <div class="main_zusammenfassung"> {$TOTAL_BLOCK} </div>
    Was mach ich falsch?
    Gruß Torsten

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #3 am: 05. August 2012, 17:22:37
    Es gibt zu viele Inline-Styles im HTML-Code von PHP-Dateien.
    Schnelle einfache Methode:
    Gehe in folgende Datei:
    /includes/classes/order_total.php

    Suche
    Code: PHP  [Auswählen]
            function output() {
                    $output_string = '';
                    if (is_array($this->modules)) {
                            reset($this->modules);
                            while (list (, $value) = each($this->modules)) {
                                    $class = substr($value, 0, strrpos($value, '.'));
                                    if ($GLOBALS[$class]->enabled) {
                                            $size = sizeof($GLOBALS[$class]->output);
                                            for ($i = 0; $i < $size; $i ++) {
                                                    $output_string .= '              <tr>'."\n".'                <td align="right" class="main">'.$GLOBALS[$class]->output[$i]['title'].'</td>'."\n".'                <td align="right" class="main">'.$GLOBALS[$class]->output[$i]['text'].'</td>'."\n".'              </tr>';
                                            }
                                    }
                            }
                    }

                    return $output_string;
            }
    }

    und mache daraus:
    Code: PHP  [Auswählen]
            function output() {
                    $output_string = '';
                    if (is_array($this->modules)) {
                            reset($this->modules);
                            while (list (, $value) = each($this->modules)) {
                                    $class = substr($value, 0, strrpos($value, '.'));
                                    if ($GLOBALS[$class]->enabled) {
                                            $size = sizeof($GLOBALS[$class]->output);
                                            for ($i = 0; $i < $size; $i ++) {
                                                    $output_string .= '              <tr>'."\n".'                <td align="right" class="main"><strong>'.$GLOBALS[$class]->output[$i]['title'].'</strong></td>'."\n".'                <td align="right" class="main"><strong>'.$GLOBALS[$class]->output[$i]['text'].'</strong></td>'."\n".'              </tr>';
                                            }
                                    }
                            }
                    }

                    return $output_string;
            }
    }

    Allerdings gibt es bei "Summe" noch ein <b>-tag von welchem ich nicht weiß wo es in dem Chaos der ganzen inline-styles in PHP-dateien generiert wird.
    Somit hat man dort <strong><b>Summe:</b></strong> als HTML-Ausgabe, was nicht valide ist.
    Finde aber, wie gesagt nicht wo das generiert wird.
    So hast du erstmal 'ne Lösung.

    Kannst allerdings auch in
    /includes/modules/order_total/ot_total.php
    bei
    Code: PHP  [Auswählen]
    $this->output[]...
    die strong-tags entfernen und es nochmals mit CSS probieren.
    Vielleicht mit
    Code: CSS  [Auswählen]
    .main_zusammenfassung table tr td.main {
    DEINE_STYLES
    }

    Evtl. auch mal ein !important probieren.

    Gruß,
    noRiddle

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #4 am: 05. August 2012, 17:36:51
    Okay, das <b> bei "Summe" kommt von hier:
    /lang/german/modules/order_total/ot_total.php.
    Kannst du da einfach entfernen.

    Dann noch die besagten <strong> in /includes/modules/order_total/ot_total.php entfernen und dein CSS sollte funktionieren (so wie ich's vorgeschlagen habe, also mit tr td.main).

    Gruß,
    noRiddle

    Special K

    • Frisch an Board
    • Beiträge: 53
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #5 am: 05. August 2012, 18:00:00
    Also im Code der phps direkt würd ich nicht fummeln. CSS sind eine saubere und gute Sache... ;-)

        <div class="highlightbox"> {$PRODUCTS_BLOCK}
            <div class="hr"></div>
         <span id="deineid">{$TOTAL_BLOCK}</span> </div>

    Bitte im CSS die Klasse (.) in eine ID (#) umwandeln.
    So würd ich es machen und es sollte funktionieren... :-)

    Und alles was doppelt vorkommt würd ich einfach weglassen. Wenn die ganze Seite die entsprechende Schrift (Farbe, Größe etc.) nutzt, dann raus damit. ;-) Alles was redundant ist geht auf die Ladezeit - und Kleinvieh macht auch Mist...

    LG

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #6 am: 05. August 2012, 18:30:54
    Das Problem ist ja gerade, daß ohnehin überall im Core-PHP-dateien inline-styles zu finden sind (z.B. in der /includes/modules/order_total/ot_total.php und in der Sprachdatei, siehe mein Post).
    Entweder alle rausnehmen oder es genauso machen.
    Sonst sucht man sich später mal tot wenn man was ändern möchte.
    Einmal inline-style <strong>, dann CSS font-weight:bold; usw.
    Da gibt's halt einige Flaws.

    Natürlich ist CSS immer besser aber inline-styles kann man damit nicht überschreiben.
    In der Tat könnte eine ID allerdings helfen anstelle von .main_zusammenfassung table tr td.main, da eine ID eindeutig ist und in der Kaskade auch vor geht.

    Gruß,
    noRiddle

    Special K

    • Frisch an Board
    • Beiträge: 53
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #7 am: 05. August 2012, 18:42:58
    Inlines kann man damit natürlich nicht überschreiben, das besagt ja die Spezifität.

    Strong ist aber Tag, das per Tag-Selektor angesprochen werden kann - kein Inline-Stylesheet. ;-)

    Ich nehme zum Suchen von Code gern Dreamweaver. Die Suchen-Funktion kann ganze Ordner nach bestimmten Ausdrücken durchsuchen. Das macht es recht einfach find ich.

    LG

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: checkout_confirmation.php: Text anders darstellen
    Antwort #8 am: 05. August 2012, 18:49:02
    Jau, habe mich verkehrt ausgedrückt.
    Natürlich ist strong ein HTML-tag.
    Wollte nur das Problem aufzeigen, daß es sicherlich unschön ist den ganzen TOTAL_BLOCK mit CSS in font-weight:bold; zu verwandeln,
    wenn Teile des Blocks bereits inline-styles oder tags haben die gleiches bewirken.
    Das ist Codesalat.
    Sind halt Relikte aus xt:commerce.

    notepad++ kann das Durchsuchen von Dateien auch, Dremaweaver sollte man zumindest nicht zum Codieren nutzen, es sei denn man weiß genau was man tut (was du ja weißt ;-) ).
    In unserem Fall wäre es allerdings ein Risenaufwand nach <b> zu suchen, weil da ohne ende Ergebnisse kommen.
    Die eingeschränkte Suche in den in Frage kommenden Dateien hielt ich da für effizienter.

    "How them also be", wie der Engländer sagen würde, wenn er kein Englisch kann,
    Das Problem des OP sollte gelöst sein.

    Gruß,
    noRiddle
    4 Antworten
    4030 Aufrufe
    13. August 2012, 16:12:37 von derkosta
    4 Antworten
    2693 Aufrufe
    21. November 2012, 20:50:41 von Gradler
    2 Antworten
    2403 Aufrufe
    12. Januar 2014, 11:02:23 von inox
    2 Antworten
    2413 Aufrufe
    28. Oktober 2013, 23:06:23 von neicooo