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: Bei "Begrüssung" nur den Nachnamen zeigen

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Bei "Begrüssung" nur den Nachnamen zeigen
    am: 12. Februar 2015, 19:06:57
    Hallo zusammen,

    was muss verändert werden damit bei der Begrüssung nur der Nachnahme gezeigt wird?

    Danke und Gruß

    Linkback: https://www.modified-shop.org/forum/index.php?topic=32266.0
    rechtstexte für onlineshop

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #1 am: 12. Februar 2015, 19:25:21
    Wo? In der Variable {$greeting}?

    Die Wird hier gebaut:
    inc/xtc_customer_greeting.inc.php
    Code: PHP  [Auswählen]
      function xtc_customer_greeting() {

        if (isset($_SESSION['customer_last_name']) && isset($_SESSION['customer_id'])) {
          if (!isset($_SESSION['customer_gender'])) {
          $check_customer_query = "select customers_gender FROM  " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'";
          $check_customer_query = xtDBquery($check_customer_query);
          $check_customer_data  = xtc_db_fetch_array($check_customer_query,true);
          $_SESSION['customer_gender'] = $check_customer_data['customers_gender'];
          }
          if($_SESSION['customer_gender']=='f'){
          $greeting_string = sprintf(TEXT_GREETING_PERSONAL, FEMALE . ' '. $_SESSION['customer_first_name'] . ' '. $_SESSION['customer_last_name'], xtc_href_link(FILENAME_PRODUCTS_NEW));
          }else{
          $greeting_string = sprintf(TEXT_GREETING_PERSONAL, MALE . ' '. $_SESSION['customer_first_name'] . ' ' . $_SESSION['customer_last_name'], xtc_href_link(FILENAME_PRODUCTS_NEW));
          }

        } else {
          $greeting_string = sprintf(TEXT_GREETING_GUEST, xtc_href_link(FILENAME_LOGIN, '', 'SSL'), xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL'));
        }

        return $greeting_string;
      }
     

    Ansonsten druchsuche mal das Forum nach $greeting

    jumpM

    • Fördermitglied
    • Beiträge: 697
    • Geschlecht:
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #2 am: 12. Februar 2015, 19:54:46
    Hi,

    ersetze in der inc/xtc_customer_greeting.inc.php, dieses:
    Code: PHP  [Auswählen]
          function xtc_customer_greeting() {
         
            if (isset($_SESSION['customer_last_name']) && isset($_SESSION['customer_id'])) {
              if (!isset($_SESSION['customer_gender'])) {
              $check_customer_query = "select customers_gender FROM  " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'";
              $check_customer_query = xtDBquery($check_customer_query);
              $check_customer_data  = xtc_db_fetch_array($check_customer_query,true);
              $_SESSION['customer_gender'] = $check_customer_data['customers_gender'];
              }
              if($_SESSION['customer_gender']=='f'){
              $greeting_string = sprintf(TEXT_GREETING_PERSONAL, FEMALE . ' '. $_SESSION['customer_first_name'] . ' '. $_SESSION['customer_last_name'], xtc_href_link(FILENAME_PRODUCTS_NEW));
              }else{
              $greeting_string = sprintf(TEXT_GREETING_PERSONAL, MALE . ' '. $_SESSION['customer_first_name'] . ' ' . $_SESSION['customer_last_name'], xtc_href_link(FILENAME_PRODUCTS_NEW));
              }
         
            } else {
              $greeting_string = sprintf(TEXT_GREETING_GUEST, xtc_href_link(FILENAME_LOGIN, '', 'SSL'), xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL'));
            }
         
            return $greeting_string;
          }
         

    mit diesem:

    Code: PHP  [Auswählen]
          function xtc_customer_greeting() {
         
            if (isset($_SESSION['customer_last_name']) && isset($_SESSION['customer_id'])) {
              if (!isset($_SESSION['customer_gender'])) {
              $check_customer_query = "select customers_gender FROM  " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'";
              $check_customer_query = xtDBquery($check_customer_query);
              $check_customer_data  = xtc_db_fetch_array($check_customer_query,true);
              $_SESSION['customer_gender'] = $check_customer_data['customers_gender'];
              }
              if($_SESSION['customer_gender']=='f'){
              $greeting_string = sprintf(TEXT_GREETING_PERSONAL, FEMALE . ' '. $_SESSION['customer_last_name'], xtc_href_link(FILENAME_PRODUCTS_NEW));
              }else{
              $greeting_string = sprintf(TEXT_GREETING_PERSONAL, MALE . ' ' . $_SESSION['customer_last_name'], xtc_href_link(FILENAME_PRODUCTS_NEW));
              }
         
            } else {
              $greeting_string = sprintf(TEXT_GREETING_GUEST, xtc_href_link(FILENAME_LOGIN, '', 'SSL'), xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL'));
            }
         
            return $greeting_string;
          }
         

    Robert

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #3 am: 12. Februar 2015, 21:19:44
    Vielen Dank für die wie immer schnelle Hilfe!

    Da ich die Begrüßung im Bereich vom "Top-Menü" haben wollte, habe ich das hier:
    Code: PHP  [Auswählen]
    // BOF Begrüßung
    $smarty->assign('text', xtc_customer_greeting());
    // EOF Begrüßung
    in die Index.php eingebaut.

    Was muss geändert werden damit die Begrüssung immer auf jeder Seite egal ob eingeloggt oder nicht angezeigt wird?

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #4 am: 13. Februar 2015, 12:23:54
    Muss der Code in die header.php damit die Begrüßung immer angezeigt wird?

    Code: PHP  [Auswählen]
    1.// BOF Begrüßung
    2.$smarty->assign('text', xtc_customer_greeting());
    3.// EOF Begrüßung
     

    Kann mir da jemand was zu sagen?

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #5 am: 13. Februar 2015, 12:31:48
    z.B. in der index.html geht auch so was:
    Code: PHP  [Auswählen]
    {php}xtc_customer_greeting(){/php}

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #6 am: 13. Februar 2015, 13:00:26
    Danke. Das bedeutet ich lade die PHP Datei direkt in das Template. Ich werde das ausprobieren.

    Nur ist mir gerade nicht klar warum damit dann die Begrüßung immer und auf jeder Seite angezeigt wird.
    Ich habe ja schon den Code:

    Code: PHP  [Auswählen]
    1.// BOF Begrüßung
    2.$smarty->assign('text', xtc_customer_greeting());
    3.// EOF Begrüßung

    in der Index.php und rufe das dann im Template {$text} mit ab und trotzdem verschwindet der Begrüßungstext auf den Unterseiten.

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #7 am: 13. Februar 2015, 13:08:45
    sobald irgendeine andere Datei aufgerufen wird, die das enthält:
    Code: PHP  [Auswählen]
    $smarty = new Smarty;

    ist $smarty ein leeres Objekt.

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #8 am: 13. Februar 2015, 13:16:15
    Bonsai, vielen Dank! Jetzt habe ich es verstanden   :-)

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #9 am: 13. Februar 2015, 20:11:34
    z.B. in der index.html geht auch so was:
    Code: PHP  [Auswählen]
    {php}xtc_customer_greeting(){/php}

    Das funktioniert leider nicht. Der Text wird nicht mehr angezeigt und auf Unterseiten wird die Seite nicht mehr komplett geladen.

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #10 am: 14. Februar 2015, 18:11:50
    Hat jemand dazu eine Idee? Habe das jetzt mehrfach ausprobiert. Leider ohne Erfolg.

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #11 am: 15. Februar 2015, 20:05:31
    Ich habe es jetzt hinbekommen. Nur leider muss dann jede einzelne Datei geändert werden.

    Habe z.B. in die shopping_cart.php

    Code: PHP  [Auswählen]
    require_once (DIR_FS_INC.'xtc_customer_greeting.inc.php');
    und
    Code: PHP  [Auswählen]
    $smarty->assign('text', xtc_customer_greeting());
    eingefügt.

    Jetzt wird die Begrüssung auch dort angezeigt. Ist das so korrekt? Gibt es eine einfachere Lösung dafür damit das auf jeder Seite angezeigt wird?

    Danke und Gruß

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #12 am: 15. Februar 2015, 20:21:30
    Ich habe es geschafft!

    in die include/header.php bei "// include needed functions" folgendes am Ende hinzufügen:

    Code: PHP  [Auswählen]
    require_once (DIR_FS_INC.'xtc_customer_greeting.inc.php');

    Und diese Zeile:
    Code: PHP  [Auswählen]
    $smarty->assign('navtrail',$breadcrumb->trail(' » '));

    Muss so aussehen:
    Code: PHP  [Auswählen]
    $smarty->assign('text', xtc_customer_greeting());
    $smarty->assign('navtrail',$breadcrumb->trail(' » '));

    Im Template wird die Begrüßungs-Abfrage "{$text}" von der Main_Content.html in die Index.html verschoben.
    Jetzt wird die Begrüßung immer angezeigt auf jeder Unterseite!

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #13 am: 17. Februar 2015, 14:53:06
    Ich würde den Core-Code nicht anfassen sondern es direkt im Temlate machen, in der index.html.
    Alles steht in der Session zur Verfügung.
    Meist möchte man so etwas ja im Head-Bereich anzeigen lassen à la:
    "Willkommen Herr/Frau VORNAME NACHNAME"

    Code: PHP  [Auswählen]
    {if $smarty.session.customer_id && $smarty.session.customer_last_name}
    {#txt_welcome#} {if $smarty.session.customer_gender == 'f'}{$smarty.const.FEMALE}{else}{$smarty.const.MALE}{/if} {$smarty.session.customer_first_name} {$smarty.session.customer_last_name}
    {/if}

    txt_welcome muß in /lang/SPRACHE/lang_SPRACHE.conf in der Section [index] definiert werden.

    Gruß,
    noRiddle

    fritten_fahrer

    • Mitglied
    • Beiträge: 149
    Re: Bei "Begrüssung" nur den Nachnamen zeigen
    Antwort #14 am: 17. Februar 2015, 23:09:36
    Vielen Dank. Ich schaue es mir an.
    1 Antworten
    2230 Aufrufe
    19. November 2011, 12:31:22 von Matt
    6 Antworten
    5028 Aufrufe
    12. März 2018, 14:32:49 von andy.kegel
               
    anything