Прикрутил к способу Saloyadlukae из первого поста стрелочки вверх/вниз. Правда я оставил сортировку только по названию и цене. Вот что получилось:
Сделал так:
в файле: /catalog/language/russian/product/category.php
добавить:
$_['text_sort_no'] = ' ';
$_['text_sort_asc'] = '<span style="color: #FF6666;"> ↑ </span>';
$_['text_sort_desc'] = '<span style="color: #FF6666;"> ↓ </span>';
$_['text_sort_name'] = 'названию';
$_['text_sort_price'] = 'цене';
в файле: /catalog/controller/product/category.php
после:
$this->data['text_limit'] = $this->language->get('text_limit');
добавить:
$this->data['text_sort_name'] = $this->language->get('text_sort_name');
$this->data['text_sort_price'] = $this->language->get('text_sort_price');
$this->data['text_sort_no'] = $this->language->get('text_sort_no');
заменить:
$this->data['sorts'][] = array(
'text' => $this->language->get('text_name_asc'),
'value' => 'pd.name-ASC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=pd.name&order=ASC' . $url)
);
$this->data['sorts'][] = array(
'text' => $this->language->get('text_name_desc'),
'value' => 'pd.name-DESC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=pd.name&order=DESC' . $url)
);
$this->data['sorts'][] = array(
'text' => $this->language->get('text_price_asc'),
'value' => 'p.price-ASC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.price&order=ASC' . $url)
);
$this->data['sorts'][] = array(
'text' => $this->language->get('text_price_desc'),
'value' => 'p.price-DESC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.price&order=DESC' . $url)
);
на это:
$this->data['sorts'][] = array(
'text' => $this->language->get('text_sort_asc'),
'value' => 'pd.name-ASC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=pd.name&order=ASC' . $url)
);
$this->data['sorts'][] = array(
'text' => $this->language->get('text_sort_desc'),
'value' => 'pd.name-DESC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=pd.name&order=DESC' . $url)
);
$this->data['sorts'][] = array(
'text' => $this->language->get('text_sort_asc'),
'value' => 'p.price-ASC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.price&order=ASC' . $url)
);
$this->data['sorts'][] = array(
'text' => $this->language->get('text_sort_desc'),
'value' => 'p.price-DESC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.price&order=DESC' . $url)
);
в файле: /catalog/view/theme/default/template/product/category.tpl
заменить:
<span <?php if (($sorts[0]['value'] == $sort . '-' . $order) or ($sorts[1]['value'] == $sort . '-' . $order)) { ?><?php echo 'class="active"'; ?><?php } ?>><a href="<?php if ($sorts[0]['value'] == $sort . '-' . $order) echo $sorts[1]['href']; else echo $sorts[0]['href']; ?>">названию</a></span>
<span <?php if (($sorts[2]['value'] == $sort . '-' . $order) or ($sorts[3]['value'] == $sort . '-' . $order)) { ?><?php echo 'class="active"'; ?><?php } ?>><a href="<?php if ($sorts[2]['value'] == $sort . '-' . $order) echo $sorts[3]['href']; else echo $sorts[2]['href']; ?>">цене</a></span>
на это:
<?php if (($sorts[0]['value'] == $sort . '-' . $order) or ($sorts[1]['value'] == $sort . '-' . $order)) { ?>
<span class="active">
<?php if ($sorts[0]['value'] == $sort . '-' . $order) { ?>
<a href="<?php echo $sorts[1]['href']; ?>"><?php echo $text_sort_name; ?><?php echo $sorts[0]['text']; ?></a>
<?php } else { ?>
<a href="<?php echo $sorts[0]['href']; ?>"><?php echo $text_sort_name; ?><?php echo $sorts[1]['text']; ?></a>
<?php } ?>
</span>
<?php } else { ?>
<span>
<a href="<?php echo $sorts[0]['href']; ?>"><?php echo $text_sort_name; ?><?php echo $text_sort_no; ?></a>
</span>
<?php } ?>
<?php if (($sorts[2]['value'] == $sort . '-' . $order) or ($sorts[3]['value'] == $sort . '-' . $order)) { ?>
<span class="active">
<?php if ($sorts[2]['value'] == $sort . '-' . $order) { ?>
<a href="<?php echo $sorts[3]['href']; ?>"><?php echo $text_sort_price; ?><?php echo $sorts[2]['text']; ?></a>
<?php } else { ?>
<a href="<?php echo $sorts[2]['href']; ?>"><?php echo $text_sort_price; ?><?php echo $sorts[3]['text']; ?></a>
<?php } ?>
</span>
<?php } else { ?>
<span>
<a href="<?php echo $sorts[2]['href']; ?>"><?php echo $text_sort_price; ?><?php echo $text_sort_no; ?></a>
</span>
<?php } ?>
Вроде ничего не забыл.