Page 1 of 1

исправление кода

Posted: Tue Nov 23, 2010 6:35 am
by d-fm1301
Помогите пожалуйста решить проблему:

У меня модуль Products имеет иерархию

- Категория
  - - Под категория
      --- Товар
- Категория2
  - - Под категория2
      --- Товар2
и т.д.

при переходе на подробнее функция "breadcrumb"выдает такую строчку:

Каталог > Категория > Под категория

и при переходе по "под категории" выходит пустая страница, видимо хочет показать под категории этой подкатегории, а мне нужно чтобы при переходе по "под категории" перещли на страницу со списком товаров в данной под категории

breadcrumb имеет такой код:

Code: Select all

 public static function create_hierarchy_breadcrumb($id,$product_id, $hierpage, $delim = ' > ')
  {
    $module = self::_get_module();
    $tmp = array();
    $hierarchy_path = $module->GetProductHierarchyPath($product_id);
    if( !$hierarchy_path ) return false;
    foreach( $hierarchy_path as $one )
      {
	$info = $module->GetHierarchyInfo($one);
	$link = $module->CreatePrettyLink($id,'hierarchy',$hierpage,
					  $info['name'],array('parent'=>$info['id']));
	$tmp[] = $link;
      }
    return implode($delim,$tmp);
  }
Что нужно здесь переделать чтобы получить нужный мне результат?

Re: исправление кода

Posted: Tue Nov 23, 2010 6:55 am
by d-fm1301
вот сама страница с подробным описание товара: http://www.elecomt.ru/products/21/%D0%B ... D1%8B.html

Re: исправление кода

Posted: Tue Nov 23, 2010 8:27 am
by Sonya
Попробовать заменить hierarchy на byhierarchy, так как похоже вот эта ссылка у Вас работает http://www.elecomt.ru/products/byhierarchy/12/25.html, а вот эта нет
http://www.elecomt.ru/products/hierarchy/12/25.html

Re: исправление кода

Posted: Tue Nov 23, 2010 9:13 am
by d-fm1301

Code: Select all

public static function create_hierarchy_breadcrumb($id,$product_id, $hierpage, $delim = ' > ')
  {
    $module = self::_get_module();
    $tmp = array();
    $hierarchy_path = $module->GetProductHierarchyPath($product_id);
    if( !$hierarchy_path ) return false;
    foreach( $hierarchy_path as $one )
      {
	$info = $module->GetHierarchyInfo($one);
	$link = $module->CreatePrettyLink($id,'hierarchy',$hierpage,
					  $info['name'],array('parent'=>$info['id']));
	$tmp[] = $link;
      }
    return implode($delim,$tmp);
  }
А где это именно нужно поменять в этом коде: везде в этом коде ставил место hierarchy  -  byhierarchy  и не помогает(((

Re: исправление кода

Posted: Tue Nov 23, 2010 9:17 am
by Sonya
d-fm1301 wrote: А где это именно нужно поменять в этом коде: везде в этом коде ставил место hierarchy  -  byhierarchy  и не помогает(((
Не везде, а там где формируется ссылка. Если Вы не умеете править код, то зачем Вы спрашиваете, как его поправить?  ???

Re: исправление кода

Posted: Tue Nov 23, 2010 9:23 am
by d-fm1301
Вот я и прошу помощи чтобы ткнули мне куда нужно вставить. Я вообще не программист, а тока изучаю систему

Re: исправление кода

Posted: Tue Nov 23, 2010 9:26 am
by Sonya
d-fm1301 wrote: Вот я и прошу помощи чтобы ткнули мне куда нужно вставить. Я вообще не программист, а тока изучаю систему
Но если не программист, то будет очень сложно :)
Вот здесь формируется ссылка

Code: Select all

$link = $module->CreatePrettyLink($id,'hierarchy',$hierpage,
					  $info['name'],array('parent'=>$info['id']));
В этой строчке нужно заменить 'hierarchy' на 'byhierarchy'.

Гарантии я дать не могу, что будет работать. Если не будет ждите других, может что подскажут.

Re: исправление кода

Posted: Tue Nov 23, 2010 9:31 am
by d-fm1301
Так уже пробовал, не помогает.
ссылки категорий и подкатегории становятся одинаковыми и без чпу - типа:
http://www.elecomt.ru/index.php?mact=Pr ... eturnid=25

Re: исправление кода

Posted: Tue Nov 23, 2010 9:40 am
by Sonya
d-fm1301 wrote: Так уже пробовал, не помогает.
1. Это баг http://dev.cmsmadesimple.org/bug/view/5594
2. Вот здесь решение http://forum.cmsmadesimple.org/index.ph ... #msg232146

Re: исправление кода

Posted: Tue Nov 23, 2010 10:02 am
by d-fm1301
Спасибо большое!  ща попробую как там сделать)))