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: 1 Beschreibung für 2 Sprachen

    cybermailer

    • Schreiberling
    • Beiträge: 308
    1 Beschreibung für 2 Sprachen
    am: 07. Juli 2015, 13:23:23
    Hallo,

    ich weiß grad nicht weiter.

    Ich möchte die Datei:
    admin/includes/modules/product_new.php

    so umbauen, dass wenn in den weiteren Sprachen z.B. Englisch nichts drinnen steht die Texte der Deutschen Eingabe übernommen werden.

    Ich denke dieser Bereich ist für die Texte zuständig:
    Code: PHP  [Auswählen]
    <!-- input boxes desc, meta etc -->
              <div class="main" style="padding: 3px; line-height:20px;">
                 <b><?php echo $lng_image . '&nbsp;' . TEXT_PRODUCTS_DESCRIPTION; ?></b><br />
                 <?php echo xtc_draw_textarea_field('products_description_' . $languages[$i]['id'], 'soft', '103', '30', (isset($products_description[$languages[$i]['id']]) ? stripslashes($products_description[$languages[$i]['id']]) : $products_desc_fields['products_description'])); ?>
              </div>
              <div style="height: 8px;"></div>
              <div width="100%" valign="top" class="main" style="padding: 3px; line-height:20px;">
                <b><?php echo $lng_image . '&nbsp;' . TEXT_PRODUCTS_SHORT_DESCRIPTION; ?></b><br />
                <?php echo xtc_draw_textarea_field('products_short_description_' . $languages[$i]['id'], 'soft', '103', '20', (isset($products_short_description[$languages[$i]['id']]) ? stripslashes($products_short_description[$languages[$i]['id']]) : $products_desc_fields['products_short_description'])); ?>
              </div>
              <div valign="top" class="main" style="padding: 3px; line-height:20px;">
                <b><?php echo $lng_image . '&nbsp;' . TEXT_PRODUCTS_ORDER_DESCRIPTION; ?></b><br />
                <?php echo xtc_draw_textarea_field('products_order_description[' . $languages[$i]['id'] . ']', 'soft', '103', '10', (isset($products_order_description[$languages[$i]['id']]) ? stripslashes($products_order_description[$languages[$i]['id']]) : $products_desc_fields['products_order_description']), 'style="width:100%; height:50px;"'); ?>
              </div>

    Ich frage mich jetzt wie ich das angehe... hat jemand einen Tipp?!

    Danke.

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

    webald

    • modified Team
    • Beiträge: 2.791
    Re: 1 Beschreibung für 2 Sprachen
    Antwort #1 am: 07. Juli 2015, 13:40:16
    1. bei mir gibt es die Datei nicht. Vermutlich meinst Du admin/includes/modules/new_product.php
    2. Dein zitierter Code erzeugt doch ein Ausgabe im Browsre, schreibt aber doch nix in die Datenbank.
    3. das was Du suchst steht in  admin/includes/classes/categories.php in der function insert_product()

    Schau mal ob du damit zurecht kommst. Ich würde von Deinem Vorhaben aber abraten:
    - Wenn ich Englisch als Sprache wähle, soll auch Englisch kommen und keine Kopievon Deutsch. Wenn ich Deutsch kann, dann gehe ich auch auf Deutsch.
    - Was ist mit Aktualisierungen der Texte? Du hast u. U. veraltete Texte in ENG obwohl Du DEU aktualisert hast, aber Deine Auto-Funktion nicht mehr greift, da das Feld in ENG nicht mehr leer ist.
    - Was wenn der Fall andersrum eintritt, also Text in ENG vorhanden, aber nicht in DEU?
    - Ob das als duplicate Content gilt kann jemand mit SEO-Ahnung beantworten, ich danke aber schon

    cybermailer

    • Schreiberling
    • Beiträge: 308
    Re: 1 Beschreibung für 2 Sprachen
    Antwort #2 am: 07. Juli 2015, 14:02:39
    - ja du hast Recht ich war i.d. Datei: admin/includes/modules/new_product.php

    - ich gebe Dir Recht, das Ganze muss auch greifen wenn man den Deutschen Text aktualisiert.

    -> Umgekehrt muss es nie greifen (Englisch auf Deutsch).
    -> Ich habe es bis dato ebenfalls so im Onlineshop nur habe ich jetzt den doppelten Aufwand das möchte in Zukunft umgehen.
    -> Ich würde ja die Engl. Sprache komplett löschen, aber manche Kunden benötigen Sie, bzw. für Sie ist es einfacher, den Bestellprozess auf Englisch zu durchleben.
    -> Ich möchte aber nicht die Produktbeschreibungen auf Englisch etc. warten dazu

    webald

    • modified Team
    • Beiträge: 2.791
    Re: 1 Beschreibung für 2 Sprachen
    Antwort #3 am: 07. Juli 2015, 14:22:15
    -> Ich möchte aber nicht die Produktbeschreibungen auf Englisch etc. warten dazu
    Selber übersetzen? Selber Texte schreiben?

    Schnelle Lösung:
    Statt den deutschen Text in Englisch zu setzen, würde ich in Englisch einen Standardsatz speichern ("Sorry, no description in Englisch, see German")

    cybermailer

    • Schreiberling
    • Beiträge: 308
    Re: 1 Beschreibung für 2 Sprachen
    Antwort #4 am: 07. Juli 2015, 14:36:56
    Hi,

    ich weiß schon worauf du hinaus willst, ich betreibe aber nur einen Shop der technische Artikel verkauft dort ist es egal ob die Beschreibung Deutsch oder Englisch ist sie wird vom Kunden verstanden. Da keine Grammatik und keine Sätze in Deutsch vorkommen.

    z.B. RAM 4096MB 1600MHz ist international dementsprechend egal.

    Aber danke dass du mitdenkst, ich werde sollte einmal Bedarf sein die funktion wieder entfernen aber bis dahin hilft sie mir schnell das Sortiment anzulegen.

    So, habs jetzt hinbekommen.

    Code: PHP  [Auswählen]
    //Language ID1: English, ID2: German
        foreach ($languages AS $lang) {
          $language_id = $lang['id'];
                if($language_id == 1){
                   
                    //Set to german ID for getting correct textes
                    $saved_language_id = $language_id;
                    $language_id = 2;
                   
                    $sql_data_array = array('products_name' => xtc_db_prepare_input($products_data['products_name'][$language_id]),
                                  'products_description' => xtc_db_prepare_input($products_data['products_description_'.$language_id]),
                                  'products_short_description' => xtc_db_prepare_input($products_data['products_short_description_'.$language_id]),
                                  'products_keywords' => xtc_db_prepare_input($products_data['products_keywords'][$language_id]),
                                  'products_url' => xtc_db_prepare_input($products_data['products_url'][$language_id]),
                                  'products_meta_title' => xtc_db_prepare_input($products_data['products_meta_title'][$language_id]),
                                  'products_meta_description' => xtc_db_prepare_input($products_data['products_meta_description'][$language_id]),
                                  'products_meta_keywords' => xtc_db_prepare_input($products_data['products_meta_keywords'][$language_id])
                                  );
                    //Set to old language ID
                    $language_id = $saved_language_id;
                    }
                   
                    if($language_id == 2){
                    $sql_data_array = array('products_name' => xtc_db_prepare_input($products_data['products_name'][$language_id]),
                                  'products_description' => xtc_db_prepare_input($products_data['products_description_'.$language_id]),
                                  'products_short_description' => xtc_db_prepare_input($products_data['products_short_description_'.$language_id]),
                                  'products_keywords' => xtc_db_prepare_input($products_data['products_keywords'][$language_id]),
                                  'products_url' => xtc_db_prepare_input($products_data['products_url'][$language_id]),
                                  'products_meta_title' => xtc_db_prepare_input($products_data['products_meta_title'][$language_id]),
                                  'products_meta_description' => xtc_db_prepare_input($products_data['products_meta_description'][$language_id]),
                                  'products_meta_keywords' => xtc_db_prepare_input($products_data['products_meta_keywords'][$language_id])
                                  );
                    }

    - übernimmt nun die Eingabe die im Deutschen FELD gemacht wurde
    - funktioniert auch beim Update eines deutschen FELDES
    - funktioniert nur bei 2 Sprachen so wie bei mir mit ID1 Englisch und ID2 Deutsch
      ansonsten muss man handanlegen...
    1 Antworten
    2688 Aufrufe
    30. Oktober 2012, 07:01:21 von hendrik
    8 Antworten
    4039 Aufrufe
    06. Oktober 2009, 15:13:22 von DokuMan
    3 Antworten
    1700 Aufrufe
    05. Januar 2019, 11:57:40 von cdfcool
    18 Antworten
    8965 Aufrufe
    19. Dezember 2016, 09:31:49 von hwk