Ich habe es endlich hinbekommen und versucht es mal in eine Anleitung zu formulieren. Hoffe es ist recht verständlich und fehlerfrei vor allem
Zusätzliche Kategoriefelder anlegen
1. Backup vom Shop machen
2. Datenbank erweitern
3. Backend anpassen
1. Komplettes Backup vom Shop und der Datenbank machen.
2. Die Datenbank um die zusätzlichen Felder erweitern.
Hier im Beispiel ("_platzhalter" durch Eure Bezeichnung ersetzen und beliebig erweitern):
ALTER TABLE `categories_description`
ADD `categories_platzhalter` VARCHAR( 80 ) NOT NULL;
3. Backend anpassen. Folgende Dateien müssen verändert werden:
-lang/german/admin/categories.php
-admin/includes/modules/new_category.php
-admin/includes/classes/categories.php
-includes/modules/default.php
-admin/include/function/general.php
lang/german/admin/categories.php
unten einfügen:
define('TEXT_EDIT_CATEGORIES_PLATZHALTER', 'Platzhalter:'); admin/includes/modules/new_category.php
unter
$categories_name = $_POST['categories_name'];
einfügen
$categories_platzhalter = $_POST['categories_platzhalter'];
unter
<tr>
<td class="main" width="184">
<?php echo TEXT_EDIT_CATEGORIES_NAME
; ?></td>
<td class="main">
<?php echo xtc_image
(DIR_WS_LANGUAGES
.$languages[$i]['directory'].'/admin/images/'.$languages[$i]['image']) . ' ' . xtc_draw_input_field
('categories_name[' . $languages[$i]['id'] . ']', (($categories_name[$languages[$i]['id']]) ?
stripslashes($categories_name[$languages[$i]['id']]) : xtc_get_categories_name
($cInfo->categories_id, $languages[$i]['id'])), 'style="width: 200px"'); ?></td>
</tr>
einfügen
<tr>
<td class="main" width="184">
<?php echo TEXT_EDIT_CATEGORIES_PLATZHALTER
; ?></td>
<td class="main">
<?php echo xtc_image
(DIR_WS_LANGUAGES
.$languages[$i]['directory'].'/admin/images/'.$languages[$i]['image']) . ' ' . xtc_draw_input_field
('categories_platzhalter[' . $languages[$i]['id'] . ']', (($categories_name[$languages[$i]['id']]) ?
stripslashes($categories_name[$languages[$i]['id']]) : xtc_get_categories_platzhalter
($cInfo->categories_id, $languages[$i]['id'])), 'style="width: 200px"'); ?></td>
</tr>
admin/includes/classes/categories.php
unter
$categories_name_array = $categories_data['name']; $sql_data_array = array ( 'categories_name' => xtc_db_prepare_input
($categories_data['categories_name'][$lang['id']]), einfügen
'categories_platzhalter' => xtc_db_prepare_input($categories_data['categories_platzhalter'][$lang['id']]),
unter
while ($cdcopy_values = xtc_db_fetch_array($cdcopy_query)) {
xtDBquery("INSERT INTO ".TABLE_CATEGORIES_DESCRIPTION." (categories_id,
language_id,
categories_name,
einfügen
categories_platzhalter,
unter
'".addslashes($cdcopy_values['categories_name'])."' ,
einfügen
'".addslashes($cdcopy_values['categories_platzhalter'])."' ,
includes/modules/default.php
unter
$category_query = "-- /includes/modules/default.php
SELECT c.categories_image,
c.categories_template,
cd.categories_name,
einfügen
cd.categories_platzhalter,
unter
$categories_query = "-- /includes/modules/default.php
SELECT c.categories_id,
c.categories_image,
c.parent_id,
cd.categories_name,
einfügen
cd.categories_platzhalter,
unter
$categories_content[] = array ('CATEGORIES_NAME' => $categories['categories_name'], einfügen
'CATEGORIES_PLATZHALTER' => $categories['categories_platzhalter'],
unter
$max_per_row = MAX_DISPLAY_CATEGORIES_PER_ROW
; $width = $max_per_row ?
intval(100 / $max_per_row).'%' : ''; $default_smarty->assign('TR_COLS', $max_per_row); $default_smarty->assign('TD_WIDTH', $width); $default_smarty->assign('CATEGORIES_NAME', $category['categories_name']); einfügen
$default_smarty->assign('CATEGORIES_PLATZHALTER', $category['categories_platzhalter']);
admin/include/function/general.php
unter
/**
* xtc_get_categories_heading_title()
*
* @param mixed $category_id
* @param mixed $language_id
* @return
*/
function xtc_get_categories_heading_title($category_id, $language_id) {
$category_query = xtc_db_query("select categories_heading_title from ".TABLE_CATEGORIES_DESCRIPTION." where categories_id = '".$category_id."' and language_id = '".$language_id."'");
$category = xtc_db_fetch_array($category_query);
return $category['categories_heading_title'];
}
einfügen
/**
* xtc_get_categories_platzhalter()
*
* @param mixed $category_id
* @param mixed $language_id
* @return
*/
function xtc_get_categories_platzhalter($category_id, $language_id) {
$category_query = xtc_db_query("select categories_platzhalter from ".TABLE_CATEGORIES_DESCRIPTION." where categories_id = '".$category_id."' and language_id = '".$language_id."'");
$category = xtc_db_fetch_array($category_query);
return $category['categories_platzhalter'];
}