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!
Ups den Beitrag muss ich übersehen haben! Danke für en Tip! Kann man diese änderung auch update sicher machen ?
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ß
Ich habe die Install nochmals in nem "Jungfräulichen GX2 V2.010d" gemacht und keine Probleme damit. Ich kann das nichtspeichern leider nicht nachvollziehen.
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!??!
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.
Ich denke "Admin-Bereich" und Überblick schließen sich (zunehmend!) gegenseitig aus! <Leider kein Scherz>
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?
Du muss die auskommentieren. Ich hab eben den Bioshop auf 2.010 geupdatet und die 2. Description genau so eingebaut. Und siehe: http://www.bioundgourmet.de/index.php?cat=c3_Speiseoele--Essig--Sirup-Speiseoele.html alles funzt!
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.
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
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???
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.
Pack doch mal die beiden Dateien rein. Rauslöschen kannste die doch notfalls wieder. Probiers mal aus!
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
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.