Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Модуль для D6/Ubercart uc_catalog. Каталог построен на основе таксономии. Модуль переопределяет breadcrumbs c учетом вложенности терминов таксономии, таким образом, что:

Термин1

*Термин2

**Термин3 (выбран)

..выводятся в breadcrumbs как Термин1 > Термин2 >Термин3

Но словарь позволяет мультивыбор терминов, таким образом, что если выбрать

Термин1

*Термин2

**Термин3 (выбран)

*Термин4

**Термин5 (выбран)

.. то в breadcrumbs выведется

Термин1 > Термин2 > Термин3 > Термин4 > Термин5

При этом, ссылка на страницу товара (path) формируется как (domain.tld/термин1/термин4/термин5)

Задача: выводить в breadcrumbs только ту цепочку, которая соответствует path.

Код этой части модуля:

/**

* Implementation of hook_nodeapi().

*/

function uc_catalog_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {

static $parents = array();

if (uc_product_is_product($node->type)) {

switch ($op) {

case 'view':

if ($a4 == TRUE && variable_get('uc_catalog_breadcrumb', TRUE)) {

$crumbs = array();

if (variable_get('site_frontpage', 'node') != 'catalog') {

$crumbs[] = l(t('Home'), '');

}

$terms = taxonomy_node_get_terms_by_vocabulary($node, variable_get('uc_catalog_vid', 0));

if (count($terms)) {

$crumbs[] = l(variable_get('uc_catalog_name', t('Catalog')), variable_get('uc_catalog_url', 'catalog'));

$used_tids = array();

foreach ($terms as $term) {

if (!isset($parents[$term->tid])) {

$parents[$term->tid] = taxonomy_get_parents_all($term->tid);

}

foreach (array_reverse($parents[$term->tid]) as $parent) {

if (!in_array($parent->tid, $used_tids)) {

/* fixed NODE breadcrumbs path

$crumbs[] = l($parent->name, module_invoke('taxomony','term_path',$parent));

*/

$crumbs[] = l($parent->name, 'catalog/'. $parent->tid);

}

}

}

}

drupal_set_breadcrumb($crumbs);

}

break;

}

}

}

13 лет назад
yurg
Yurg 
NaN летРоссия
17 лет в сервисе
Был
13 лет назад
20 отзывов(-2)
Выбранный исполнитель
aquaweb
40 летРоссия
19 лет в сервисе
Был
6 лет назад
13 лет назад
$30
1 день
  • Похожие заказы
  • $20

    Покупател откладывает товар в корзину без перезагрузки страницы и открытия корзины, при этом на главной странице в центре на 1-2с (время можно изменить) отображается картинка "Товар в корзине"

    Завершен
    13 лет назад
  • Сграбить весь "рейтинг бигмира по украинским сайтам" и перебросить в ексель... Также расмотрю другие предложения по получению более менее систиматезированной актуальной базы даных украинских сайтов с рейтингом посещаемости....

    Закрыт
    13 лет назад
  • 1)Нужно выбрать любой флэшшаблон с красивой листалкой страниц этот http://www.templatemonster.com/flash-templates/28581.html или этот http://activeden.net/item/xml-flip-book-as3/full_screen_preview/63869 шаблоны вам предоставлю или любой другой шаблон на ваш выбор или ..ваш вариант (главное уложиться в бюджет) и слегка его откорректировать: 1) Нужно оставить всего 2 листа. 1 лист листаемый, ...

    Закрыт
    13 лет назад
  • $25

    Нужно разработать для компонента Joomla "dj catalog" выбор (type="checkbox"). Она будет размещаться в пункте "Продукты" Эта опция нужна: 1. При выборе type="checkbox" (top dial), отмеченный материал, можно будет выбрать в меню как "категорию" или отдельным ...

    Закрыт
    13 лет назад
  • Надо: в форме изменить 2 поля А) поле выбора количества сделать в виде ползунка Б) удобный выбор даты из календаря Предпочтение человеку из Белоруссии . С вас цена и контакты.

    Завершен
    13 лет назад
  • Есть готовый рабочий сайт (интернет магазин) на modx Нужно Сверстать Кросс-браузерный дизайн (psd страниц уже есть) Привязать дизайн к существующему магазину. Переделать магазин под каталог с возможностью заказа конкретной услуги. По сути тот ...

    Закрыт
    13 лет назад
  • Простейшая система проверки накопленных балов по бонусной карте: Интеграция в сайт – не требуется. Желательная установка на сервере. Ресурсы: PHP, MySQL. Интерфейс 1 (пользовательский, клиентский): Простое поле для ввода цифр + кнопа В поле вводится номер карты и после ...

    Закрыт
    13 лет назад
  • $1000

    Нужно разработать, настроить скрипт платежной системы на примере Яндекс.Деньги. Авторизация платежей через защищенное соединение ssl. Прием валюты Я.Деньги, Вебмани, Qiwi, Visa/MasterCard.

    Закрыт
    13 лет назад
  • Проект ведения и сопровождения заданий выполняемыми фрилансерами по моим проектам. Цель: 1) Обеспечить централизованное ведение проектов 2) Вести архив версий файлов разных типов (исходники, графика, тексты, DOC, ссылки, переписка чата, видеозвонки, SQL, архивы, флеш, PSD). С точки ...

    Закрыт
    13 лет назад