0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 1907 Просмотров
*

roma095

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
сортировка по наличию
« : 11.07.2009, 23:59:24 »
Как сделать сортировку по наличию или чтобы это было по умолчанию?
*

ivanesx2008

  • Захожу иногда
  • 66
  • 0 / 0
Re: сортировка по наличию
« Ответ #1 : 30.10.2009, 03:58:26 »
Присоединяюсь к вопросу!
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Re: сортировка по наличию
« Ответ #2 : 10.05.2011, 17:10:00 »
Вот, что найдено:

Сам еще не проверял, если честно :-)

Цитировать
File:
administratorcomponentscom_virtuemarthtmladmin.show_cfg.php

Find
Code:

<tr>
<td class="labelcell"><?php echo $VM_LANG->_('VM_BROWSE_ORDERBY_DEFAULT_FIELD_LBL')?></td>
<td>
<select class="inputbox" name="conf_VM_BROWSE_ORDERBY_FIELD">
<option value="product_name" <?php if (@VM_BROWSE_ORDERBY_FIELD == 'product_name') echo "selected="selected""; ?>><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_NAME_TITLE')?></option>
<option value="product_price" <?php if (@VM_BROWSE_ORDERBY_FIELD == 'product_price') echo "selected="selected""; ?>><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_PRICE_TITLE')?></option>
<option value="product_sku" <?php if (@VM_BROWSE_ORDERBY_FIELD == 'product_sku') echo "selected="selected""; ?>><?php echo $VM_LANG->_('PHPSHOP_CART_SKU')?></option>
<option value="product_cdate" <?php if (@VM_BROWSE_ORDERBY_FIELD == 'product_cdate') echo "selected="selected""; ?>><?php echo $VM_LANG->_('PHPSHOP_LATEST')?></option>
</select>
</td>
<td><?php echo vmToolTip( $VM_LANG->_('VM_BROWSE_ORDERBY_DEFAULT_FIELD_LBL_TIP') )?></td>
</tr>


And add new option to input, type select:

Code:

<option value="product_list" <?php if (@VM_BROWSE_ORDERBY_FIELD == 'product_list') echo "selected="selected""; ?>><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED')?></option>


Find:

Code:

<tr>
<td class="labelcell"><?php echo $VM_LANG->_('VM_BROWSE_ORDERBY_FIELDS_LBL')?></td>
<td>
<input name="conf_VM_BROWSE_ORDERBY_FIELDS[]&quot; type="checkbox" value="product_name" <?php if (in_array( 'product_name', $VM_BROWSE_ORDERBY_FIELDS )) echo "checked="checked""; ?> id="conf_VM_BROWSE_ORDERBY_FIELDS1" />
<label for="conf_VM_BROWSE_ORDERBY_FIELDS1"><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_NAME_TITLE')?></label><br />

<input name="conf_VM_BROWSE_ORDERBY_FIELDS[]&quot; type="checkbox" value="product_price" <?php if (in_array( 'product_price', $VM_BROWSE_ORDERBY_FIELDS )) echo "checked="checked""; ?> id="conf_VM_BROWSE_ORDERBY_FIELDS2" />
<label for="conf_VM_BROWSE_ORDERBY_FIELDS2"><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_PRICE_TITLE')?></label><br />

<input name="conf_VM_BROWSE_ORDERBY_FIELDS[]&quot; type="checkbox" value="product_cdate" <?php if (in_array( 'product_cdate', $VM_BROWSE_ORDERBY_FIELDS )) echo "checked="checked""; ?> id="conf_VM_BROWSE_ORDERBY_FIELDS3" />
<label for="conf_VM_BROWSE_ORDERBY_FIELDS3"><?php echo $VM_LANG->_('PHPSHOP_LATEST')?></label><br />

<input name="conf_VM_BROWSE_ORDERBY_FIELDS[]&quot; type="checkbox" value="product_sku" <?php if (in_array( 'product_sku', $VM_BROWSE_ORDERBY_FIELDS )) echo "checked="checked""; ?> id="conf_VM_BROWSE_ORDERBY_FIELDS4" />
<label for="conf_VM_BROWSE_ORDERBY_FIELDS4"><?php echo $VM_LANG->_('PHPSHOP_CART_SKU')?></label>
</td>
<td><?php echo vmToolTip( $VM_LANG->_('VM_BROWSE_ORDERBY_FIELDS_LBL_TIP') )?></td>
</tr>


And add new checkbox

Code:

<input name="conf_VM_BROWSE_ORDERBY_FIELDS[]&quot; type="checkbox" value="product_list" <?php if (in_array( 'product_list', $VM_BROWSE_ORDERBY_FIELDS )) echo "checked="checked""; ?> id="conf_VM_BROWSE_ORDERBY_FIELDS5" />
<label for="conf_VM_BROWSE_ORDERBY_FIELDS5"><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED')?></label>



File:
administratorcomponentscom_virtuemarthtmlshop_browse_queries.php

Find:

Code:

switch( $orderby ) {
case 'product_name':
$orderbyField = '`#__{vm}_product`.`product_name`'; break;
case 'product_price':
$orderbyField = '`#__{vm}_product_price`.`product_price`'; break;
case 'product_sku':
$orderbyField = '`#__{vm}_product`.`product_sku`'; break;
case 'product_cdate':
$orderbyField = '`#__{vm}_product`.`cdate`'; break;
default:
$orderbyField = '`#__{vm}_product`.`product_name`'; break;
}



And add new case:


Code:

case 'product_list':
$orderbyField = '`#__{vm}_product_category_xref`.`product_list`'; break;
}



File:
componentscom_virtuemartthemesdefaulttemplatesbrowseincludesbrowse_orderbyfields.tpl.php

Find:

Code:

// SORT BY PRODUCT NAME
if( in_array( 'product_name', $VM_BROWSE_ORDERBY_FIELDS)) { ?>
<option value="product_name" <?php echo $orderby=="product_name" ? "selected="selected"" : "";?>>
<?php echo $VM_LANG->_('PHPSHOP_PRODUCT_NAME_TITLE')?></option>
<?php
}


And add before it or wherever you want - it is up to you which option will be shown in which order "in sort by list"


Code:

// SORT BY MY OWN ORDER - MOJA ZMIANA
if( in_array( 'product_list', $VM_BROWSE_ORDERBY_FIELDS)) { ?>
<option value="product_list" <?php echo $orderby=="product_list" ? "selected="selected"" : "";?>>
<?php echo $VM_LANG->_('PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED_LBL')?></option>
<?php
}



Last thing is to add to your language 2 new variables:

File:
administratorcomponentscom_virtuemartlanguagescommonyourlanguage.php


Code:

'PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED' => 'Own sort order',
'PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED_LBL' => 'Default sorting',


Of course you can name it as you want Smiley

Good luck! Smiley
Tom Ignatiuk
*

mr_meskalin

  • Новичок
  • 9
  • 0 / 0
Re: сортировка по наличию
« Ответ #3 : 13.12.2011, 18:13:20 »
Все работает! Подскажите, а как сделать так, что бы если товара нет в наличии – то и цена этого товара не отображалась. ??


Заранее благодарен!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Сортировка товаров по цене

Автор Batyabest

Ответов: 2
Просмотров: 1015
Последний ответ 10.01.2014, 13:37:55
от Batyabest
Отображение и сортировка товаров в VirtueMart 1, 1, 3

Автор smesharic

Ответов: 2
Просмотров: 1114
Последний ответ 18.04.2013, 18:28:31
от smesharic
Сортировка товаров - сделать ссылками

Автор jniv

Ответов: 4
Просмотров: 1564
Последний ответ 25.03.2012, 13:53:57
от prosto-chups
Сортировка товара, внешний вид

Автор Wester

Ответов: 22
Просмотров: 5923
Последний ответ 21.01.2012, 17:47:25
от lakshmi
Сортировка товара по типу

Автор Nikoz

Ответов: 1
Просмотров: 1013
Последний ответ 20.10.2011, 00:47:40
от madcap