| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Структура каталогов в интернет магазине |
| Автор: Ripper 12.1.2014, 02:11 |
| Добрый вечер Хочу написать интернет магазин, простой. Делаю на laravel 4.1. Есть таблица категорий товаров. Бесконечное количество вложений. Вывожу я эти категории в меню. В качестве URL можно было бы задать ID категории, но хочу ЧПУ. Вот не могу только понять как это делается. Допустим я ввожу в таблицу с категориями поле slug, в котором будет имя категории для url-а. Тогда URL можно строить в виде: /phones/apple/ где phones и apple это slug-и категорий, phones отец, apple сын Делаю в роутинге такую схему /categories/{productCategories} где последнее - параметр который содержит строку вида aaa/bbb/ccc/ddd, типа вложенные категории. И как мне теперь достать нужную категорию? В плане, рассмотрим 2 случая: /tablets/apple/ /phones/apple/ Я не могу просто взять последнее слово и по нему искать айдишник категории т.к. slug не уникален. Уникальна должна быть вся структура. И получается как-то геморно проходится по tablets искать всех детей, искать в них apple, проверять что больше категорий нет и т.п. Что-то как то муторно, мне кажется все проще, просто не знаю как это проще реализовать |
| Автор: ksnk 12.1.2014, 12:56 |
Про laravel ничего не знаю, но про чпу с магазинами имеются следующие мысли
Сcылка на товар, например, может содержать название товара, хотя бы и на русском http://site.ru/items/%D0%9A%D0%BE%D0%BB%D1%8F%D1%81%D0%BA%D0%B0+3+%D0%B2+1+Jane+Rider+Formula+Strata+(%D0%96%D0%B0%D0%BD%D0%B5+%D0%A0%D0%B0%D0%B9%D0%B4%D0%B5%D1%80+%D0%A4%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D0%B0+%D0%A1%D1%82%D1%80%D0%B0%D1%82%D0%B0).1111 Ключевым моментом тут будет цифровой индекс в конце адреса, по которому вычисляется товар. В качестве живого примера можно посмотреть на темы на phpclub.ru. Ссылки на темы сделаны примерно так. Можно применить транслитерацию, но для непродвинутых посетителей магазина это будет хуже, чем по русски. В таком же стиле можно сделать и ссылку на группу товаров. В название через `-`, к примеру, слить все группы, и добавить в конец индекс самой группы. Тоесть, ВСЕ чпу сводится к анализу первого токена (item|article|items|...) и финального индекса. Весь остальной мусор в ссылке нужен для ее читабельности. польза такого подхода в том, что ссылки не устареют, даже если товар перекинут из группы в группу и группу перетасуют по магазину. Индексы, то не меняются. Ну и достаточная читабельность ссылок - тоже довольно сильный сеошный ход. |
| Автор: cia 12.1.2014, 20:39 |
| Могу порекомендовать в slug писать "полный путь", тоесть "tablets/apple". Разумеется в админке, при изменении верхней категории, нужно также автоматом править и вложенные. |
| Автор: ksnk 14.1.2014, 19:27 | ||
Ссылки иногда просто складируют в отдельный файл, бросают по скайпу и по почте. И чем, принципиально, отличается http://moysite.ru/6281.html от http://site.ru/items/%D0%9A%D0%BE%D0%BB%D1%8F%D1%81%D0%BA%D0%B0+3+%D0%B2+1+Jane+Rider+Formula+Strata+(%D0%96%D0%B0%D0%BD%D0%B5+%D0%A0%D0%B0%D0%B9%D0%B4%D0%B5%D1%80+%D0%A4%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D0%B0+%D0%A1%D1%82%D1%80%D0%B0%D1%82%D0%B0).1111 ? |
| Автор: Gold Dragon 14.1.2014, 20:04 |
| человекопонятностью |