product_info/standard.html - Artikelbeschreibung verschieben

Thema wurde von dietertenbusch, 3. August 2014 erstellt.

  1. dietertenbusch

    dietertenbusch Neues Mitglied

    Registriert seit:
    8. Mai 2014
    Beiträge:
    3
    Danke erhalten:
    0
    Danke vergeben:
    1
    Hallo zusammen,

    ich möchte die Artikelbeschreibung unter dem Atikelnamen platzieren. Habe dazu in meiner standard.html (USERMOD) den Codeschnipsel:


    {if $PRODUCTS_DESCRIPTION !=''}{$PRODUCTS_DESCRIPTION}{/if}

    unter {$PRODUCTS_NAME} eingefügt.

    Mangels ausreichender PHP-Kenntnisse sind aber auch nun die TABS mit aufgeführt.

    siehe Screen (roter Rahmen):
    Unbenannt-2.png

    Wie kann ich diesen Bereich genauer definieren bzw. wo wird die PRODUCTS_DESCRIPTION definiert?
     
  2. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.755
    Danke erhalten:
    1.516
    Danke vergeben:
    1.051
    Willkommen im Forum

    abgesehen davon, dass ich das aus optischen Gründen nicht empfehlen würde (es sei denn du hast nur ganz kurze Artikelbeschreibungen), würde ich besser dafür die products_short_description nehmen.
    Ist nur meine Meinung.
     
  3. dietertenbusch

    dietertenbusch Neues Mitglied

    Registriert seit:
    8. Mai 2014
    Beiträge:
    3
    Danke erhalten:
    0
    Danke vergeben:
    1
    ja du hast recht, daran hab ich auch schon gedacht, aber wenn ich unter dem artikelnamen

    {if $PRODUCTS_SHORT_DESCRIPTION !=''}{$PRODUCTS_SHORT_DESCRIPTION}{/if}

    eingebe, passiert da nichts

    und danke fürs willkommen :)
     
  4. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.755
    Danke erhalten:
    1.516
    Danke vergeben:
    1.051
    da gab es mal diese Anleitung (ich glaube von Manfred):

    Suche in "/system/views/product_info/ProductInfoContentView.inc.php" die Zeile...
    PHP:
    $this->set_content_data('PRODUCTS_DESCRIPTION'$gm_products_descrition);
    ... und füge danach ein:
    PHP:
    //    ############# BOF MBr[001] ###########################
                
    $gmTabTokenizer MainFactory::create_object('GMTabTokenizer', array(stripslashes($p_coo_product->data['products_short_description'])));
                
    $gm_products_short_descrition $gmTabTokenizer->get_prepared_output();
                
    $this->set_content_data('PRODUCTS_SHORT_DESCRIPTION'$gm_products_short_descrition);
    //    ################## EOF MBr[001] ############################  
    Nun kann man in der "/templates/EyeCandy/module/product_info/standard.html" an einen Ort der Wahl
    mit "{$PRODUCTS_SHORT_DESCRIPTION}" die Artikelkurzbeschreibung anzeigen - wer´s braucht.

    ich weiß aber nicht ob das noch funktioniert; ich hatte das jedenfalls in meinem alten Shop aktiv.

    Am besten erst im Testshop testen!
     
  5. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.352
    Danke erhalten:
    11.198
    Danke vergeben:
    1.601
    Hattest Du das in einem Tab?
     
  6. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.755
    Danke erhalten:
    1.516
    Danke vergeben:
    1.051
     
  7. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.352
    Danke erhalten:
    11.198
    Danke vergeben:
    1.601
    Ich wundere mich nur das es über den gmTabTokenizer aufgerufen wird.
    Ich werde mal kurz was Testen.
     
  8. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.755
    Danke erhalten:
    1.516
    Danke vergeben:
    1.051
    im alten Shop hatte ich es drin, da wurde die Kurzbeschreibung bei mir direkt unterhalb des Artikelnamens angezeigt.
     
  9. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.352
    Danke erhalten:
    11.198
    Danke vergeben:
    1.601
    #9 barbara, 3. August 2014
    Zuletzt bearbeitet: 7. August 2014
    Deshalb :)
    Ich habe das gerade mal probiert unter dem Artikelnamen und da werden die Tab-Titel mit ausgegeben.

    Das kann updatesicher einbauen.
    Dazu muss man erstmal in
    user_classes/ overloads einen Ordner mit Namen
    ProductInfoContentView
    erstellen. da lädt man dann die description_ProductInfoContentView.inc.php
    mit diesem Inhalt:
    PHP:
     <?php
    class description_ProductInfoContentView extends description_ProductInfoContentView_parent 
    {
      function 
    get_html($p_coo_product$p_current_category_id 0)
      {
    $this->set_content_data('PRODUCTS_SHORT_DESCRIPTION'$p_coo_product->data['products_short_description']); 
        return 
    parent::get_html($p_coo_product$p_current_category_id);
      }
    }
    ?>
    Die Ausgabe im Template wie Achim weiter oben geschrieben hat.
    Cache leeren.

    Noch mal ein Danke an Avenger, der die Anleitung mal im Zusammenhang mit Extrafeldern gepostet hatte.
    Das funktioniert einfach super :)

    Nachtrag: Fehler behoben :)
     
  10. dietertenbusch

    dietertenbusch Neues Mitglied

    Registriert seit:
    8. Mai 2014
    Beiträge:
    3
    Danke erhalten:
    0
    Danke vergeben:
    1
    super marmoles, klappt übrigens wunderbar, hatte vor deiner antwort schon nen anderen thread von dir gefunden in dem das stand :) vielen dank an dieser stelle für die mühe.

    man kann nach dem ändern der ProductInfoContentView.inc.php den code der kurzbeschreibung beliebig setzen.
     
  11. WalterGestalter

    WalterGestalter Erfahrener Benutzer

    Registriert seit:
    24. Mai 2011
    Beiträge:
    213
    Danke erhalten:
    11
    Danke vergeben:
    56
  12. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.755
    Danke erhalten:
    1.516
    Danke vergeben:
    1.051
    bei mir kommt bei dem Link goor nix :(
     
  13. WalterGestalter

    WalterGestalter Erfahrener Benutzer

    Registriert seit:
    24. Mai 2011
    Beiträge:
    213
    Danke erhalten:
    11
    Danke vergeben:
    56
    Ja, das war leider ein Totalschaden :(
    Irgendwas kolidiert da. ich vermute - aber ich vermute das wirklich nur - das die description_ProductInfoContentView.inc.php sich mit was anderem beißt. es gibt nen haufen errorlogs und ich nehme jetzt erstmal alles wieder raus :/
     
  14. WalterGestalter

    WalterGestalter Erfahrener Benutzer

    Registriert seit:
    24. Mai 2011
    Beiträge:
    213
    Danke erhalten:
    11
    Danke vergeben:
    56
    So, jetzt hallo nochmal.

    Also, ich habe die Kurzbeschreibung nach dieser Anleitung in die Artikelübersicht geholt:

    In user_classes/ overloads einen Ordner mit Namen ProductInfoContentView
    erstellen. da lädt man dann die description_ProductInfoContentView.inc.php
    mit diesem Inhalt:

    Code:
    <?php
    class description_ProductInfoContentView extends description_ProductInfoContentView_parent 
    {
      function get_html($p_coo_product, $p_current_category_id = 0)
      {
    $this->set_content_data('PRODUCTS_SHORT_DESCRIPTION', $p_coo_product->data['products_short_description']); 
        return parent::get_html($p_coo_product, $p_current_category_id);
      }
    }
    ?>

    Suche in "/system/views/product_info/ProductInfoContentView.inc.php" die Zeile
    Die Zeile oben gab es nicht. Stattdessen bin ich hier fündig geworden: system/classes/products/ProductInfoContentView.inc.php"
    Code:
    $this->set_content_data('PRODUCTS_DESCRIPTION', $gm_products_descrition); 
    ... und füge danach ein:
    Code:
    //    ############# BOF MBr[001] ###########################
                $gmTabTokenizer = MainFactory::create_object('GMTabTokenizer', array(stripslashes($p_coo_product->data['products_short_description'])));
                $gm_products_short_descrition = $gmTabTokenizer->get_prepared_output();
                $this->set_content_data('PRODUCTS_SHORT_DESCRIPTION', $gm_products_short_descrition);
    //    ################## EOF MBr[001] ############################ 
    Nun kann man in der "/templates/EyeCandy/module/product_info/standard.html" an einen Ort der Wahl
    mit {$PRODUCTS_SHORT_DESCRIPTION} die Artikelkurzbeschreibung anzeigen

    Cache leeren.


    Sinnigerweise habe ich diese Version nicht als standard sonder als zusätzliche Datei in den Produkt-Info-Ordner, so dass der Shopbetreiber auswählen kann.

    Als ich das so eingebaut habe, wurde für eine kurze Zeit alles korrekt angezeigt. Im Mobilentemplate wurden dann nur die Bilder nicht angezeigt, dann konnte man die Artikel auf einmal gar nicht mehr öffnen.

    Im Errorlog stand, dass das mobile Template das Template nicht finden kann. Logisch eigentlich, also habe ich für das mobile template die Standardvorlge einfach kopiert und ebenfalls so benannt wie im normalen template. Das hat aber leider nicht geholfen. die Artikel ließen sich nicht aufrufen.

    Hat jemand eine Idee?
     
  15. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.352
    Danke erhalten:
    11.198
    Danke vergeben:
    1.601
    Du hast das jetzt doppelt gemoppelt :)
    Entweder Du nimmst die Anleitung die Achim gepostet hat, oder die von mir, aber nicht beide :)
     
  16. WalterGestalter

    WalterGestalter Erfahrener Benutzer

    Registriert seit:
    24. Mai 2011
    Beiträge:
    213
    Danke erhalten:
    11
    Danke vergeben:
    56
    öhm, ich hab das genau so hier gefunden :)

    ok, welchen Teil muss ich rauslassen?
     
  17. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.352
    Danke erhalten:
    11.198
    Danke vergeben:
    1.601
    Dieses:
    user_classes/ overloads einen Ordner mit Namen ProductInfoContentView

    überlädt die
    system/classes/products/ProductInfoContentView.inc.php"

    Ist also die Updatesichere Variante der Anpassung in der Datei.

    Du brauchst aus Achims Anleitung nur noch dieses:
     
  18. WalterGestalter

    WalterGestalter Erfahrener Benutzer

    Registriert seit:
    24. Mai 2011
    Beiträge:
    213
    Danke erhalten:
    11
    Danke vergeben:
    56
    Ich danke dir Barbara. Da habe ich es wohl zu gut gemeint :D
     
  19. anderl

    anderl Mitglied

    Registriert seit:
    9. Oktober 2014
    Beiträge:
    22
    Danke erhalten:
    1
    Danke vergeben:
    1
    Hallo,
    Also versuche das schon die ganze, aber bei mir Funktioniert das nicht, bekomme immer den Fehler auf der Produktseite,

    WARNING(2): "Missing argument 1 for description_ProductInfoContentView::get_html(), called in /customers/a/c/9/name.de/httpd.www/product_info.php on line 83 and defined"

    ich habe GX2_v2.3.3.1

    Da steht auch nicht bei system/classes/products/ProductInfoContentView.inc.php
    $this->set_content_data('PRODUCTS_DESCRIPTION', $gm_products_descrition);

    sondern

    $this->set_content_data('PRODUCTS_DESCRIPTION', $description);
    $this->set_content_data('description', $tabTokenizer->head_content);
     
  20. andreas_knauschner

    andreas_knauschner Aktives Mitglied

    Registriert seit:
    26. Mai 2016
    Beiträge:
    37
    Danke erhalten:
    0
    #20 andreas_knauschner, 4. Mai 2017
    Zuletzt bearbeitet: 4. Mai 2017