Заказ закрыт
Составить комбинации тегов в массиве дерева на php

Бюджет: 700 руб
8.35 $ – 7.23 €
Заказчик выбрал исполнителя:
Константин Терехов  
Написать функцию или класс на php для работы с деревом тегов. Пример массива дерева категорий и вариант вывода представлен в tags.php

Есть некое дерево тегов, необходимо получить множество комбинаций путем их склеивания по алгоритму:

1) Все теги должы начинаться с высшей категории, part_parent_id которой равен 0, кроме единичных.
пример: матрасы пружинные, наматрасники с разными сторонами
2) Нельзя учитывать категории, у которых hide = 1 (то есть скрытые категории)
пример: пружинные / беспружинные
3) Нельзя склеивать теги в одной подкатегории (у которых единый родитель)
пример: матрасы пружинные боннель на независимых пружинах tfk – неверно (у пружинных матрасов может быть только 1 тип пружин, правильно матрасы пружинные боннель)
4) Нельзя склеивать теги не из своей категории
пример: матрасы пружинные боннель вакуумные – неверно (вакуумные только для беспружинных, правильно – матрасы беспружинные вакуумные)
5) Сделать возможность установки параметра максимального количества "склеек"
Значение по умолчению: 4
пример: Матрасы пружинные боннель для дачи – 4 вхождения
6) Исключить из полученных тегов единичные с высшей категории, part_parent_id которой равен 0
пример: матрасы, детские матрасы, наматрасники – это исключить из результата
7) Нельзя склеивать в обратном порядке:
пример: матрасы боннель пружинные, матрасы жесткие беспружинные – неверно. Правильно матрасы пружинные боннель, матрасы беспружинные жесткие

Примеры:
1) Единичные теги:
пружинные, боннель, для дачи, беспружинные и т.д.
2) Двойные:
матрасы пружинные, матрасы беспружинные, матрасы мягкие, матрасы с ппу и т.д.
3) Многомерные:
матрасы пружинные боннель, матрасы пружинные для дачи, матрасы беспружинные вакуумные, матрасы беспружинные гипоаллергенные, матрасы жесткие недорогие, матрасы пружинные боннель для дачи, матрасы пружинные для дачи мягкие, матрасы беспружинные в рулоне недорогие
Опубликован 01.10.2014 в 11:45
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.