Registrovat    Přihlášení
Domů Odkazy Fórum Ke stažení Web hosting Registrace do katalogů
Přihlásit
Jméno:

Heslo:

Pamatuj si mně



Zapomenuté heslo

Nová registrace
Partner a hosting webu
zserver.cz
Spolupráce
Odkazy
česká sociální síť rexVoX.com
Informace a projekty na rodinné domy naleznete v našem blogu.

Navštívit můžete také pasivní rodinné domy - dřevostavby, kde naleznete informace o pasivních stavbách.

Odkazy.
Outlook CRM

Pro efektivní komunikaci i vedení projektů doporučujeme eWay-CRM.

IMac

Potřebujete nový pracovní počítač? Apple iMac bude nejlepší volbou!

Inzerujte zde!

Máte zájem o reklamu? Kupte si textový odkaz na této pozici!



Kategorie a fóra
   Všechny příspěvky (tibi001)




Re: alpha filter prerobeny na produkt filter danej kategorie
Nováček
Členem od:
10:04 23.9.2007
Skupina:
Registrovaní uživatelé
Příspěvky: 2
Nepřipojen
Sory za to formatovanie, ale nejako mate tu sablonu rozhasenu. Nahanam formular po celom displeji . V prilozenom subore su vsetky potrebne subory. V tom ako to tu zobrazilo by som sa nevyznal ani ja.

Připojit soubor:


zip cat_filter.zip Velikost: 29.06 KB; Hits: 83

Zasláno: 14:20 16.9.2010
Přenos příspěvku do ostatních aplikací Přenos


alpha filter prerobeny na produkt filter danej kategorie
Nováček
Členem od:
10:04 23.9.2007
Skupina:
Registrovaní uživatelé
Příspěvky: 2
Nepřipojen
Zdravim,
ak by mal niekto zaujem tak som nedavno pre jednu zakaznicku prerabal alha filter na nieco uzitocnejsie. Je to celkom jednoduche.
Pozriet si to mozete tu:
link
Tu je postup:
1. Treba vytvorit novu tabulku v databaze:
CREATE TABLE IF NOT EXISTS `cat_filter` (   `cat_filter_id` int(11) NOT NULL AUTO_INCREMENT,   `cat_filter_value` varchar(255) NOT NULL,   `cat_filter_name` varchar(255) NOT NULL,   `categories_id` int(11) NOT NULL,   PRIMARY KEY (`cat_filter_id`),   KEY `categories_id` (`categories_id`) ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

2.Tento subor rozbalit a nakopirovat dp catalog/admin/
3. drobna uprava admin/categories.php. Priblizne v riadku 765 najdete tento kod
$contents[] = array('text' => '<br />' . TEXT_EDIT_CATEGORIES_IMAGE . '<br />' . zen_draw_file_field('categories_image'));

tak po to pridajte tento riadok
    $contents[] = array('text' => '<br />' . '<a href="(tammairanslip)void(0)" onClick="window.open(\'cat_filter.php?cID='.$HTTP_GET_VARS['cID'].'\',\'Category filter\',\'width=600,height=600\')">Add category filter</a>');

4. v catalog/includes/modules/ upavte subor product_listing_alpha_sorter.php takto
Tento kod:
// build alpha sorter dropdown   if (PRODUCT_LIST_ALPHA_SORTER == 'true') {     if ((int)$_GET['alpha_filter_id'] == 0) {       $letters_list[] = array('id' => '0', 'text' => TEXT_PRODUCTS_LISTING_ALPHA_SORTER_NAMES);     } else {       $letters_list[] = array('id' => '0', 'text' => TEXT_PRODUCTS_LISTING_ALPHA_SORTER_NAMES_RESET);     }     for ($i=65; $i<91; $i++) {       $letters_list[] = array('id' => sprintf('%02d', $i), 'text' => chr($i) );     }     for ($i=48; $i<58; $i++) {       $letters_list[] = array('id' => sprintf('%02d', $i), 'text' => chr($i) );     }

nahradte takto
//category filter start $cat_filter_query = "SELECT Count(*) as num_rows FROM cat_filter where categories_id = '".(int)$current_category_id."'"; $cat_filter=$db->Execute($cat_filter_query); $cat_filter_num = $cat_filter->fields['num_rows'];  // build alpha sorter dropdown   if ((PRODUCT_LIST_ALPHA_SORTER == 'true') AND ($cat_filter_num > 0) ) {     $cat_filter_query = "SELECT * FROM cat_filter where categories_id = '".(int)$current_category_id."'";     $cat_filter=$db->Execute($cat_filter_query);      if ((int)$_GET['alpha_filter_id'] == 0) {       $letters_list[] = array('id' => '0', 'text' => TEXT_PRODUCTS_LISTING_ALPHA_SORTER_NAMES);     } else {       $letters_list[] = array('id' => '0', 'text' => TEXT_PRODUCTS_LISTING_ALPHA_SORTER_NAMES_RESET);     }     for ($i=0; $i<$cat_filter_num; $i++) {       $letters_list[] = array('id' => $cat_filter->fields["cat_filter_id"], 'text' => $cat_filter->fields["cat_filter_name"]);       $cat_filter->MoveNext();     }

5. v catalog/index_filters/ upravte subor default_filter.php takto
Tento kod:
  if (isset($_GET['alpha_filter_id']) && (int)$_GET['alpha_filter_id'] > 0) {     $alpha_sort = " and pd.products_name LIKE '" . chr((int)$_GET['alpha_filter_id']) . "%' ";   } else {     $alpha_sort = '';   }

nahradte takto
  if (isset($_GET['alpha_filter_id']) && (int)$_GET['alpha_filter_id'] > 0) {     $cat_filter_query = "SELECT * FROM cat_filter where cat_filter_id = '".$_GET['alpha_filter_id'] ."'";     $cat_filter=$db->Execute($cat_filter_query);     $cat_filter_value= $cat_filter->fields["cat_filter_value"];     $cat_filter_array = explode(";", $cat_filter_value);     $alpha_sort = " and (";           $i=1;       foreach ($cat_filter_array as $cat_filter_list1) {          if ($i==count($cat_filter_array)){                 $alpha_sort  .= " pd.products_name LIKE '%".$cat_filter_list1."%' or pd.products_description LIKE '%".$cat_filter_list1."%'";               //varianta fulltext             //   $cat_filter_search .= " MATCH pd.products_name,pd.products_description AGAINST('".$cat_filter_list1."')";               }else{                $alpha_sort .= " pd.products_name LIKE '%".$cat_filter_list1."%' or pd.products_description LIKE '%".$cat_filter_list1."%' or";               //varianta fulltext            //    $cat_filter_search .= " MATCH pd.products_name,pd.products_description AGAINST('".$cat_filter_list1."') or";               }            $i++;          }           $alpha_sort  .= " )";       //    echo $cat_filter_value;   } else {     $alpha_sort = '';   }


Princip je jednoduchy. V administracii si otvorte kategoriu pre ktoru chcete zadat filter a ak ste vyssie uvedene upravy spravili dobre, najdete na stranke upravy kategorie (pod pridanim obrazka) odkaz "Add category filter". Ak nan kliknete otvori sa nove okno v ktorom mozete zadavat filtre pre danu kategoriu. Ak chcete zadat viac klucovych slov (fraz) v ramci jedneho filtra oddelujte ich znakom ; . Ako vidite v kode suboru default_filter.php na vyhladanie som pouzil operator OR. Ak potrebujete operator AND tak si to tam zmente podla potreby.
Nakoniec este samozrejme treba vo vasom jazykovom subore upravit texty pre
  define('TEXT_PRODUCTS_LISTING_ALPHA_SORTER_NAMES', '--produkt filter--');   define('TEXT_PRODUCTS_LISTING_ALPHA_SORTER_NAMES_RESET', '-- zrušiť filter --');


Uprava vam nezaberie ani 10 minut a prinos je dost znacny. Netreba potom vytvarat vela podkategorii, ale vyriesit to takto.

Zasláno: 13:56 16.9.2010
Přenos příspěvku do ostatních aplikací Přenos



 Nahoru




Odkazy



Zen-Cart ke stažení

Vyšel nový Zencart 1.5.0

Originální moduly můžete stahovat na
www.zen-cart.com

Reklama
Nejaktivnější autoři
1 Melodic
Melodic
1002997
2 Kozoroh
Kozoroh
2124
3 JardaR
JardaR
1888
4 garden
garden
1419
5 Nismo
Nismo
1389
6 hbxx 1131
7 jandik01
jandik01
1070
8 PeterB
PeterB
1017
9 Dedek
Dedek
990
10 bambulko
bambulko
775