вПолезное

SOBI2 и критерий цены (II способ)

SOBI2Если первый способ увенчался провалом, то существует  2 способ (ручное исправление), который должен вам окончательно помочь.

1. Как и в предыдущей статье, вы должны сначала либо добавить поле цены (field_price) и запомнить его идентификатор либо запомнить ID уже существующего поля.

2. Скачайте файл

3. Откройте axsearch.class.php в любом текстовом редакторе и начиная со строки 27 внесите следующие исправления
строка 27 — $searchString = sobi2Config::request($_REQUEST, «sobi2Search»);
Дальше добавляем код:

////////////////////
$MaxPrice = JRequest::getVar(‘Price’, ‘0’, ‘REQUEST’, ‘INT’);
$_SESSION[MaxPrice] = $MaxPrice;
if($MaxPrice!=0 && ($searchString == trim(_SOBI2_SEARCH_INPUTBOX) || !$searchString)) $searchString=’%’;
////////////////////

4. Дальше ищем строку начиняющийся со следующих слов if ( $total ) {
У меня это 288 строка, добавляем следующий код
//////////////////

$PriceFieldID = «Здесь устанавливаем ваш ID»; — ($PriceFieldID =13; — у меня это номер 13)

/* Поиск по цене */

$MaxPrice = JRequest::getVar(‘Price’, ‘0’, ‘REQUEST’, ‘INT’);

if ($MaxPrice!=0) {

$items = array();

foreach ( $sIDs as $ThisID ) {

$query = «SELECT DISTINCT sdata.data_txt » .

«FROM `#__sobi2_fields_data` AS sdata » .

«WHERE sdata.itemid = ‘$ThisID’ AND sdata.fieldid={$PriceFieldID}»;

$database->setQuery( $query );

if ($database->loadResult() && $database->loadResult() < $MaxPrice) $items[] = $ThisID;}

$sIDs = $items;

unset($items);}

////////////////////

5. Дальше перед строкой 735 (или 753 после предыдущих исправлений), которая начинается на тэг

добавьте следующий код


////////////////////
?>


value=»» />

/////////////////////
?>


6. Перед строкой  829 (или 859 после внесённых изменений), которая начинается на  следующую команду document.cookie = «sobi2SearchCookie[sobi2Search]» + SobiCookieRemove;
необходимо вставить следующий код
document.getElementById(‘Price’).value=»;

7. В вашем языковом файле russian.php добавьте следующие строку
defined( ‘_SOBI2_SEARCH_PRICE’ ) or define(‘_SOBI2_SEARCH_PRICE’,’Цена не выше чем ($)’);


Автор:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *