Anleitung 2. Kategoriebeschreibung unterhalb der Artikel

Thema wurde von Steffen (indiv-style.de), 6. Mai 2012 erstellt.

  1. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    Wie sooft angefragt hier mal ein Beispiel für eine 2. Kategoriebeschreibung unterhalb der Artikel. Die Beschreibung ist im Adminbereich pflegbar.

    Beispiel: Link

    1. SQL-Befehl ausführen:
    Code:
    ALTER TABLE `categories_description`     ADD COLUMN  `categories_description2` TEXT NOT NULL AFTER `categories_description`;  
    2. /admin/includes/functions/general.php suchen nach:
    PHP:
    function xtc_get_categories_description($category_id$language_id) {
        
    $category_query xtc_db_query("select categories_description from  ".TABLE_CATEGORIES_DESCRIPTION." where categories_id =  '".$category_id."' and language_id = '".$language_id."'");
        
    $category xtc_db_fetch_array($category_query);

        return 
    $category['categories_description'];
    }
    danach einfügen:
    PHP:
    function xtc_get_categories_description2($category_id$language_id) {
        
    $category_query xtc_db_query("select categories_description2 from  ".TABLE_CATEGORIES_DESCRIPTION." where categories_id =  '".$category_id."' and language_id = '".$language_id."'");
        
    $category xtc_db_fetch_array($category_query);

        return 
    $category['categories_description2'];
    }
    3. admin/includes/modules/new_category.php suche nach:
    PHP:
    $categories_description            $_POST['categories_description'];
    danach einfügen:
    PHP:
    $categories_description2        $_POST['categories_description2'];
    suche nach:
    PHP:
    <tr>
                        <td class="main strong" valign="top" align="left" width="150">
                            <?php  echo TEXT_EDIT_CATEGORIES_DESCRIPTION?>
                        </td>
                        <td class="main" valign="top" align="left">
                            <?php echo  xtc_image(DIR_WS_LANGUAGES.$languages[$i]['directory'].'/admin/images/'.$languages[$i]['image']);  ?>
                            <?php
                            
    if(USE_WYSIWYG == 'true'){
                                
    $oFCKeditor = new FCKeditor('categories_description[' $languages[$i]['id'] . ']');
                                
    $oFCKeditor->BasePath    DIR_WS_ADMIN 'gm/fckeditor/';
                                
    $oFCKeditor->Height 300;
                                
    $oFCKeditor->Width 634;
                                
    $oFCKeditor->Value =  (($categories_description[$languages[$i]['id']]) ?  stripslashes($categories_description[$languages[$i]['id']]) :  xtc_get_categories_description($cInfo->categories_id,  $languages[$i]['id'])); 
                                
    $oFCKeditor->ToolbarSet "Big";
                                
    $oFCKeditor->Config["DefaultLanguage"] = $_SESSION['language_code'];
                                
    $oFCKeditor->Create();
                            }
                            else{
                                echo  
    xtc_draw_textarea_field('categories_description[' $languages[$i]['id']  . ']''soft''70''25',  (($categories_description[$languages[$i]['id']]) ?  stripslashes($categories_description[$languages[$i]['id']]) :  xtc_get_categories_description($cInfo->categories_id,  $languages[$i]['id'])));
                            }
                            
    ?>
                        </td>
                    </tr>
    danach einfügen:
    PHP:
    <tr>
                        <td class="main strong" valign="top" align="left" width="150">
                            <?php  echo TEXT_EDIT_CATEGORIES_DESCRIPTION2?>
                        </td>
                        <td class="main" valign="top" align="left">
                            <?php echo  xtc_image(DIR_WS_LANGUAGES.$languages[$i]['directory'].'/admin/images/'.$languages[$i]['image']);  ?>
                            <?php
                            
    if(USE_WYSIWYG == 'true'){
                                
    $oFCKeditor = new FCKeditor('categories_description2[' $languages[$i]['id'] . ']');
                                
    $oFCKeditor->BasePath    DIR_WS_ADMIN 'gm/fckeditor/';
                                
    $oFCKeditor->Height 300;
                                
    $oFCKeditor->Width 634;
                                
    $oFCKeditor->Value =  (($categories_description2[$languages[$i]['id']]) ?  stripslashes($categories_description2[$languages[$i]['id']]) :  xtc_get_categories_description2($cInfo->categories_id,  $languages[$i]['id'])); 
                                
    $oFCKeditor->ToolbarSet "Big";
                                
    $oFCKeditor->Config["DefaultLanguage"] = $_SESSION['language_code'];
                                
    $oFCKeditor->Create();
                            }
                            else{
                                echo  
    xtc_draw_textarea_field('categories_description2[' .  $languages[$i]['id'] . ']''soft''70''25',  (($categories_description2[$languages[$i]['id']]) ?  stripslashes($categories_description[$languages[$i]['id']]) :  xtc_get_categories_description2($cInfo->categories_id,  $languages[$i]['id'])));
                            }
                            
    ?>
                        </td>
                    </tr>
    4. In admin/includes/classes/categories.php suche nach:
    PHP:
    $sql_data_array = array ('categories_name' =>  xtc_db_prepare_input($categories_data['categories_name'][$lang['id']]),  'categories_heading_title' =>  xtc_db_prepare_input($categories_data['categories_heading_title'][$lang['id']]),  'categories_description' =>  xtc_db_prepare_input($categories_data['categories_description'][$lang['id']]),'categories_meta_title'  =>  xtc_db_prepare_input($categories_data['categories_meta_title'][$lang['id']]),  'categories_meta_description' =>  xtc_db_prepare_input($categories_data['categories_meta_description'][$lang['id']]),  'categories_meta_keywords' =>  xtc_db_prepare_input($categories_data['categories_meta_keywords'][$lang['id']]),  'gm_url_keywords' => $gm_url_keywords'gm_statusbar' =>  xtc_db_prepare_input($categories_data['gm_statusbar'][$lang['id']]),  'gm_alt_text' =>  xtc_db_prepare_input($categories_data['gm_categories_image_alt_text_' .  $lang['id']]));
    ersetze mit:
    PHP:
    $sql_data_array = array ('categories_name' =>  xtc_db_prepare_input($categories_data['categories_name'][$lang['id']]),  'categories_heading_title' =>  xtc_db_prepare_input($categories_data['categories_heading_title'][$lang['id']]),  'categories_description' =>  xtc_db_prepare_input($categories_data['categories_description'][$lang['id']]),   'categories_description2' =>  xtc_db_prepare_input($categories_data['categories_description2'][$lang['id']]),'categories_meta_title'  =>  xtc_db_prepare_input($categories_data['categories_meta_title'][$lang['id']]),  'categories_meta_description' =>  xtc_db_prepare_input($categories_data['categories_meta_description'][$lang['id']]),  'categories_meta_keywords' =>  xtc_db_prepare_input($categories_data['categories_meta_keywords'][$lang['id']]),  'gm_url_keywords' => $gm_url_keywords'gm_statusbar' =>  xtc_db_prepare_input($categories_data['gm_statusbar'][$lang['id']]),  'gm_alt_text' =>  xtc_db_prepare_input($categories_data['gm_categories_image_alt_text_' .  $lang['id']]));
    suche nach:
    PHP:
    categories_description '".addslashes($cdcopy_values['categories_description'])."',
    füge darunter ein:
    PHP:
    categories_description2 =  '".addslashes($cdcopy_values['categories_description2'])."',
    5. /includes/modules/default.php suche nach:
    PHP:
                $category_query "select
                                        cd.categories_description,
    füge danach ein:
    PHP:
    cd.categories_description2,
    suche nach:
    PHP:
                $categories_query "select
                                        cd.categories_description,
    füge danach ein:
    PHP:
    cd.categories_description2,
    suche nach:
    PHP:
                        $categories_content[] = array (
                                                        
    'CATEGORIES_NAME' => $categories['categories_name'],
                                                        
    'CATEGORIES_ALT_TEXT' => $categories['gm_alt_text'],
                                                        
    'CATEGORIES_HEADING_TITLE' => $categories['categories_heading_title'],
                                                        
    'CATEGORIES_IMAGE' => $image,
                                                        
    'CATEGORIES_LINK' => $gm_category_link,
                                                         
    'CATEGORIES_DESCRIPTION' =>  $categories['categories_description'],
    füge danach ein:
    PHP:
    'CATEGORIES_DESCRIPTION2' => $categories['categories_description2']
    suche nach:
    PHP:
    $default_smarty->assign('CATEGORIES_DESCRIPTION'$category['categories_description']);
    füge danach ein:
    PHP:
    $default_smarty->assign('CATEGORIES_DESCRIPTION2'$category['categories_description2']);
    $categories_description2 $categories['categories_description2'];
    suche nach:
    PHP:
    define('GM_CAT_COUNT'count($categories_content));
    ersetze mit:
    PHP:
    //define('GM_CAT_COUNT', count($categories_content));
    6. /includes/modules/product_listing.php suche nach:
    PHP:
    $category_query xtDBquery("select
        cd.categories_description,
    füge danach ein:
    PHP:
    cd.categories_description2,
    suche nach:
    PHP:
    $module_smarty->assign('CATEGORIES_DESCRIPTION'$category['categories_description']);
    füge danach ein:
    PHP:
    $module_smarty->assign('CATEGORIES_DESCRIPTION2',  $category['categories_description2']);
    7. /templates/EyeCandy/module/categorie_listing/categorie_listing.html
    ersetze den Inhalt komplett mit:
    HTML:
    {load_language_text section="categorie_listing"}
    
    <div id="categorie_listing">
    
        <ul class="sub_categories_listing_body">
        {foreach name=aussen item=module_data from=$module_content}
            {php} $col++; {/php}
            <li class="box_list" style="width:{$GM_LI_WIDTH}%">
                {if $SHOW_SUB_CATEGORIES_IMAGES eq '1' && $module_data.CATEGORIES_IMAGE}
                    <a href="{$module_data.CATEGORIES_LINK}"><img  src="{$module_data.CATEGORIES_IMAGE}"  alt="{$module_data.CATEGORIES_ALT_TEXT|default:$module_data.CATEGORIES_NAME}"   title="{$module_data.CATEGORIES_ALT_TEXT|default:$module_data.CATEGORIES_NAME}"  /></a><br />
                {/if}
                {if $SHOW_SUB_CATEGORIES_NAMES eq '1'}
                    <a href="{$module_data.CATEGORIES_LINK}">{$module_data.CATEGORIES_NAME}</a><br />
                {/if}
            </li>
            {php}
                $mod = $col % MAX_DISPLAY_CATEGORIES_PER_ROW;
                if($mod == 0 && $col != GM_CAT_COUNT)
                {
                    echo '</ul><ul class="sub_categories_listing_body">';
                }
            {/php}
        {/foreach}
        </ul>
        
        {$CATEGORIES_TREE_BLOCK}
    
    </div>
    die könnt ihr als -USERMOD speichern!
    8. /templates/EyeCandy/module/product_listing/product_listing_v1.html
    den folgenden Code dort positionieren, wo ihr die 2. Description hin soll:
    HTML:
    {if $CATEGORIES_DESCRIPTION2}
        {$CATEGORIES_DESCRIPTION2}
        {/if}
    Ich hoffe ich hab nix vergessen! Bitte unbedingt vorher alle DATEN SICHERN!!!

    Es könnte für nen Profi etwas RUSTIKAL gemacht sein, aber es funzt!
     
  2. Chris :-)

    Chris :-) Erfahrener Benutzer

    Registriert seit:
    8. Juli 2011
    Beiträge:
    383
    Danke erhalten:
    21
    Danke vergeben:
    38
    Moin H&S,
    ist zwar schon ein älterer Eintrag, aber spitze!
     
  3. jens

    jens Erfahrener Benutzer

    Registriert seit:
    28. Juni 2011
    Beiträge:
    424
    Danke erhalten:
    17
    Danke vergeben:
    132
    Ups den Beitrag muss ich übersehen haben!
    Danke für en Tip!

    Kann man diese änderung auch update sicher machen ?
     
  4. ficius

    ficius Erfahrener Benutzer

    Registriert seit:
    23. August 2011
    Beiträge:
    113
    Danke erhalten:
    0
    Danke vergeben:
    13
    Hallo,

    habe alles nach Anleitung eingebaut. Ist auch alles schick, aber leider wird die Beschreibung in der nun vorhandenen 2. Kategoriebeschreibung nicht gespeichert.

    Verstehe nun am allerwenigsten von SQL Befehlen. Aber muss der Fehler nicht irgendwo im SQL Befehl zu suchen sein.

    Hat denn außer mir keiner das Problem?

    @H&S-eCom

    Hast Du eventuell eine Idee warum die Beschreibung nicht gespeichert wir.

    Da das jetzt alles so schön ist mit der Beschreibung unter den Artikeln wäre es echt super wenn mir da jemand helfen könnte das ich auch den Text der 2 Beschreibung gespeichert bekomme.

    Netter Gruß
     
  5. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    Ich habe die Install nochmals in nem "Jungfräulichen GX2 V2.010d" gemacht und keine Probleme damit. Ich kann das nichtspeichern leider nicht nachvollziehen.
     
  6. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Hai Steffen,

    jetzt muss ich aber mal sau doof fragen: Warum denn nicht einfach "Contentseiten" drunter setzen?

    Mit Avenger´s {pt_load_cms_data coID=xxxxx} und der KatID ... ist das doch auch zu machen ... und updatesicher!??!
     
  7. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    Richtig, ist auch ne tolle Lösung. Es sollte jeder selbst entscheiden wie er es umsetzt. Mit Avengers Lösung ist man flexibel, bei meiner hat man im Admin den m.E. nach besseren Überblick, da die Beschreibungen beide auf einer Seite zu bearbeiten sind.

    Fazit: 2 Lösungen die für jeden was bieten.

    Im Übrigen sind 2. Katbeschreibung oder ein Blog im SeoCommerce V2 Standart. Ich würde mir wünschen das diese kleineren aber sinnvollen Lösungen in den GX2 mit eingebaut werden.
     
  8. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Ich denke "Admin-Bereich" und Überblick schließen sich (zunehmend!) gegenseitig aus! <Leider kein Scherz>
     
  9. sileo

    sileo Erfahrener Benutzer

    Registriert seit:
    22. März 2012
    Beiträge:
    2.266
    Danke erhalten:
    274
    Danke vergeben:
    205
    Ich habe das Script mit Danielas großer Unterstützung nun bei mir auch.
    Allerdings: Habe ohne das Auskommentieren der Untermenüs kein Problem bei Hauptkategorien ohne Unterkategorien. Allerdings bei Hauptkategorien mit Unterkategorien wird weder Textfeld 1 noch Textfeld 2 angezeigt. Jemand `ne Idee, woran das liegen könnte?
     
  10. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
  11. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    Aber in Bezug darauf mal ne Frage an Gambio. Wieso wird die 1. Kategorieebene anders behandelt als die Unterkategorien????

    Das ganze funktioniert ja nur wenn ich in der /includes/modules/default.php das auskommentiere.

    //define('GM_CAT_COUNT', count($categories_content));

    Den Sinn dahinter versteh ich nicht.
     
  12. sileo

    sileo Erfahrener Benutzer

    Registriert seit:
    22. März 2012
    Beiträge:
    2.266
    Danke erhalten:
    274
    Danke vergeben:
    205
    #12 sileo, 14. Oktober 2012
    Zuletzt bearbeitet: 14. Oktober 2012
    Hallo Steffen,

    das habe ich jetzt auskommentiert: /templates/EyeCandy/module/categorie_listing/categorie_listing.html

    Macht aber keinen Unterschied. Oder habe ich die falsche Stelle erwischt?

    EDIT: wir haben v2.0.10b SP1.4b r6114
     
  13. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    in der /includes/modules/default.php das auskommentieren.

    //define('GM_CAT_COUNT', count($categories_content));

    und dann ersetzte mal deine product-Listing und categorie-Listing mit den Angehängten Dateien.

    Wo kann ich mir das mal ansehen???
     

    Anhänge:

  14. sileo

    sileo Erfahrener Benutzer

    Registriert seit:
    22. März 2012
    Beiträge:
    2.266
    Danke erhalten:
    274
    Danke vergeben:
    205
    Das kannst Du in unserem Shop bei der Hauptkategorie "Luftreiniger/Lufbefeuchter..." ansehen.
    Die Hauptkategorie hat hat einen Content-Text, der nun aber nicht angezeigt wird, die Unterkategorie "Luftreiniger" hat auch einen, der angezeigt wird.

    ich hatte bisher nicht mit usermod gearbeitet, die Änderungen sind direkt in den Dateien gemacht.

    Dumme Frage. lasse ich das jetzt so und installiere zusätzlich Deine usermod-Dateien oder spiele ich bei den gambio-Dateien die Änderungen zurück?

    Sorry, das ich hier so einen Stress machen am Sonntag morgen.
     
  15. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    Pack doch mal die beiden Dateien rein. Rauslöschen kannste die doch notfalls wieder. Probiers mal aus!
     
  16. sileo

    sileo Erfahrener Benutzer

    Registriert seit:
    22. März 2012
    Beiträge:
    2.266
    Danke erhalten:
    274
    Danke vergeben:
    205
    :D:D:D:D:D:D:D:D:D Juhu, es funktioniert!!!

    Vielen vielen Dank, Steffen
     
  17. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    Na siehste! Nu ist der Sonntag gerettet!;)
     
  18. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.855
    Danke erhalten:
    1.533
    Danke vergeben:
    1.108
    Hallo Steffen

    ich will das jetzt auch mal installieren. Hast Du die php-Dateien eigentlich auch als USERMOD's angelegt?

    Schönen Sonntag! Hier ist es heute ziemlich grau :(
     
  19. Steffen (indiv-style.de)

    Steffen (indiv-style.de) G-WARD 2013/14/15/16

    Registriert seit:
    30. Juni 2011
    Beiträge:
    5.143
    Danke erhalten:
    1.466
    Danke vergeben:
    452
    Beruf:
    Systemadmin, Webentwickler bei Indiv-Style
    Ort:
    PhpStorm
    php als USERMOD jeht doch nur mit Avengers Lösung. Man könnt viele Sachen updatessicher machen, leider keine Zeit dafür. Aber die Änderungen sind in 5 Minuten drin. Also kein Akt.
     
  20. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.855
    Danke erhalten:
    1.533
    Danke vergeben:
    1.108
    ja, stimmt ja! Dann mache ich mich nächste Woche mal ran.