bingo 0 Опубликовано 8 апреля, 2015 Жалоба Share Опубликовано 8 апреля, 2015 Как можно исправить хлебные крошки, чтобы путь по разделам отображался полностью начиная с главной? Сейчас путь получается только из категории в подкатегорию, те следующий пример: Японские часы » Casio или Casio » G-Shock или G-Shock » Casio G-SHOCK AW-590-1A А необходимо отображать путь полностью, начиная с главной: Интернет магазин часов » Наручные часы » Японские часы » Casio » Мужские часы Casio » Casio G-SHOCK MTG-S1000D-1A4 При этом в случае выбора конкретной коллекции бренда, те дополнительной подкатегории должно получаться так Интернет магазин часов » Наручные часы » Японские часы » Casio G-SHOCK » Мужские часы Casio G-SHOCK » Casio G-SHOCK MTG-S1000D-1A4 При этом просто копирование подкатегорий друг в друга не помогает, путь всегда получается только в два шага. Текущий код Breadcrumbs <?php /* ----------------------------------------------------------------------------------------- VamShop - http://vamshop.com ----------------------------------------------------------------------------------------- Copyright (c) 2014 VamSoft Ltd. License - http://vamshop.com/license.html ---------------------------------------------------------------------------------------*/ function default_template_breadcrumbs() { $template = ' {if !$default_page and $parent_id > 0} <!-- start: Page header / Breadcrumbs --> <div id="breadcrumbs"> <div class="container"> <div class="breadcrumbs"> <a href="{$parent_url}">{$parent_name}</a> » {$page_name} </div> </div> </div> <!-- end: Page header / Breadcrumbs --> {/if} '; return $template; } function smarty_function_breadcrumbs($params, $template) { global $content, $config; // Cache the output. $cache_name = 'vam_breadcrumbs_output' . (isset($params['template'])?'_'.$params['template']:'') . '_' . $content['Content']['id'] .'_' . $_SESSION['Customer']['language_id']; $output = Cache::read($cache_name, 'catalog'); if($output === false) { ob_start(); App::uses('SmartyComponent', 'Controller/Component'); $Smarty =& new SmartyComponent(new ComponentCollection()); App::import('Model', 'Content'); $Content =& new Content(); $Content->unbindAll(); $Content->bindModel( array('hasOne' => array( 'ContentDescription' => array( 'className' => 'ContentDescription', 'conditions' => 'language_id = ' . $_SESSION['Customer']['language_id'] ) ) ) ); $Content->bindModel( array('belongsTo' => array('ContentType')) ); $page_data = $Content->find('first', array('conditions' => array('Content.id' => $content['Content']['parent_id']))); $default_page = $content['Content']['default']; $page_id = $content['Content']['id']; $page_alias = $content['Content']['alias']; $page_name = $content['ContentDescription']['name']; $page_url = BASE . '/' . $content['ContentType']['name'] . '/' . $content['Content']['alias'] . $config['URL_EXTENSION']; $parent_id = $page_data['Content']['id']; $parent_alias = $page_data['Content']['alias']; $parent_name = $page_data['ContentDescription']['name']; $parent_url = BASE . '/' . $page_data['ContentType']['name'] . '/' . $page_data['Content']['alias'] . $config['URL_EXTENSION']; $assignments = array( 'default_page' => $default_page, 'page_id' => $page_id, 'page_alias' => $page_alias, 'page_name' => $page_name, 'page_url' => $page_url, 'parent_id' => $parent_id, 'parent_alias' => $parent_alias, 'parent_name' => $parent_name, 'parent_url' => $parent_url ); $display_template = $Smarty->load_template($params, 'breadcrumbs'); $Smarty->display($display_template, $assignments); // Write the output to cache and echo them $output = @ob_get_contents(); ob_end_clean(); Cache::write($cache_name, $output, 'catalog'); } echo $output; } function smarty_help_function_breadcrumbs() { ?> <h3><?php echo __('What does this tag do?') ?></h3> <p><?php echo __('Creates a breadcrumbs.') ?></p> <h3><?php echo __('How do I use it?') ?></h3> <p><?php echo __('Just insert the tag into your template like:') ?> <code>{breadcrumbs}</code></p> <h3><?php echo __('What parameters does it take?') ?></h3> <ul> <li><em><?php echo __('(template)') ?></em> - <?php echo __('Useful if you want to override the default content listing template. Setting this will utilize the template that matches this alias.') ?></li> </ul> <?php } function smarty_about_function_breadcrumbs() { } ?> Спасибо. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 8 апреля, 2015 Жалоба Share Опубликовано 8 апреля, 2015 Так задуманы breadcrumbs, т.е. полного пути не выводится, только категория, к которой относится товар. Ссылка на сообщение Поделиться на другие сайты
bingo 0 Опубликовано 8 апреля, 2015 Автор Жалоба Share Опубликовано 8 апреля, 2015 Так задуманы breadcrumbs, т.е. полного пути не выводится, только категория, к которой относится товар. Подскажите пожалуйста какие файлы править для достижения нужного результата? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 8 апреля, 2015 Жалоба Share Опубликовано 8 апреля, 2015 Вы правильный код привели, funcion.breadcrumbs.php Всё, что отвечает за навигационную цепочку находится там. Но я ж говорю, по умолчанию такого кода нет, т.е. без написания своего кода не получится сделать так как Вы хотите. Ссылка на сообщение Поделиться на другие сайты
bingo 0 Опубликовано 8 апреля, 2015 Автор Жалоба Share Опубликовано 8 апреля, 2015 Понял. Спасибо. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения