Lösung:
includes\modules\default.php so abändern:
$filterlist_sql = "select distinct c.categories_id as id,
cd.categories_name as name,
cd.categories_heading_title as categories_heading_title from ".TABLE_PRODUCTS." p,
".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c,
".TABLE_CATEGORIES_DESCRIPTION." cd
where p.products_status = '1'
and p.products_id = p2c.products_id
and p2c.categories_id = c.categories_id
and p2c.categories_id = cd.categories_id
and cd.language_id = '".(int) $_SESSION['languages_id']."'
and p.manufacturers_id = '".(int) $_GET['manufacturers_id']."'
order by cd.categories_heading_title";
und die while-Schleife hier
if (xtc_db_num_rows
($filterlist_query, true) > 1) { $manufacturer_dropdown = xtc_draw_form
('filter', DIR_WS_CATALOG
. FILENAME_DEFAULT
, 'get'); if (isset ($_GET['manufacturers_id'])) { $manufacturer_dropdown .= xtc_draw_hidden_field
('manufacturers_id', (int
)$_GET['manufacturers_id']); $options = array (array ('text' => TEXT_ALL_CATEGORIES
)); } else { $manufacturer_dropdown .= xtc_draw_hidden_field
('cat', $current_category_id); $options = array (array ('text' => TEXT_ALL_MANUFACTURERS
)); } $manufacturer_dropdown .= xtc_draw_hidden_field
('sort', $_GET['sort']); $manufacturer_dropdown .= xtc_draw_hidden_field
(xtc_session_name
(), xtc_session_id
()); while ($filterlist = xtc_db_fetch_array
($filterlist_query, true)) { if(!empty($filterlist['categories_heading_title'])) { $options[] = array ('id' => $filterlist['id'], 'text' => $filterlist['categories_heading_title']); } else { $options[] = array ('id' => $filterlist['id'], 'text' => $filterlist['name']); } } $manufacturer_dropdown .= xtc_draw_pull_down_menu
('filter_id', $options, $_GET['filter_id'], 'onchange="this.form.submit()"'); $manufacturer_dropdown .= '</form>'."\n"; } } Es geht überall um die categories_heading_title.
Wer es besser kann, kann noch das Array in der While Schleife sortieren, damit categories_heading_title und $filterlist['name'] (bzw. Kategoriename) zusammen alphabetisch sortieren werden.