Commerce и правильный URL товара

Главные вкладки

Аватар пользователя Dusk Dusk 5 октября 2015 в 10:05

Добрый день! Создал token для ноды товара на основе словаря таксонмии (catalog/[node:field-category:parents:join-path]/[node:field-category:name]/[node:original:title]). URL прекрасно создается, когда создаю ноду и сам выбираю категорию товара. Если создаю ноду из дисплея товара в коммерце, то ни один словарь (их несколько, кроме того, что сделан для создания URL) не переносится в ноду, соответственно нода имеет URL catalog/[node:title].
Каталог на коммерце делаю в первый раз. Вопрос, какие модули использовать для создания правильного URL товара из коммерца, чтобы либо словарь подцеплялся, либо может создать альтернативный токен для коммерца или еще какие варианты?

Комментарии

Аватар пользователя mozh mozh 5 октября 2015 в 12:12

поставьте модуль commerce_line_item
тогда вам не придется создавать сначала товары а потом ноды для них
сразу создаете ноду и в ней заполняете данные товара http://take.ms/LffZ2
http://take.ms/PrZjP выберите виджет

Аватар пользователя Dusk Dusk 5 октября 2015 в 12:29

Спасибо, на вид интересная сборка, но у меня интернет магазин это только часть сайта. Уже созданы блоки, вьюхи, тема. Жаль в примере нет товаров, чтобы посмотреть. Мне кажется я что-то не поставил.

Аватар пользователя Dusk Dusk 5 октября 2015 в 12:39

mozh, словари и там и там, выбираю их при создании товара, подгружаю картинку, цену, все отображается в карточке товара, а словари не грузятся.
Только если войти в созданную ноду и там выбрать.
А Line item и commerce_line_item не одно и то же?
У меня есть возможность создать ноду прямо из товара, но она без словаря получается.

Аватар пользователя mozh mozh 5 октября 2015 в 13:00

"Dusk" wrote:
А Line item и commerce_line_item не одно и то же?

похоже что да

вот это например поле [node:field-category:name] у вас где? в ноде или в товаре? у меня категория в ноде и все отлично создается. паттерн задан так store/[node:field-categorey:parents-all]/[node:title]

Аватар пользователя Dusk Dusk 5 октября 2015 в 13:27

mozh, field_category у меня в виде выпадающего списка и продукте, и в ноде.
Поставил виджет Inline entity form - Multiple values, теперь можно создать продукт из ноды, но все равно нужно делать выбор и там и там.
Может можно как-то rules настроить, чтобы он создавал продукты по параметрам ноды или наоборот?

Аватар пользователя mozh mozh 5 октября 2015 в 13:33

"Dusk" wrote:
и продукте, и в ноде.

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

Возможно,я в чем-то не прав, но то что дублироваться одни и те же поля в продукте и ноде не должны это точно

Аватар пользователя Dusk Dusk 5 октября 2015 в 13:48

Изначально я создал поля словарей только в ноде, а уже после в продуктах, так как в примерах обычно создается сначала продукт, а потом нода.
А как создать продукт из ноды автоматически? Продуктов в магазине много, чтобы их ручками забивать, да и обновляться должны.

Аватар пользователя mozh mozh 5 октября 2015 в 14:04

При добавлении ноды у меня так http://take.ms/9XooL (сразу могу создать продукт) вам поможет модуль который был указан выше и его виджет
категории не влезли в скрин они выше, и относятся к ноде!

Аватар пользователя Dusk Dusk 5 октября 2015 в 14:33

Да, у меня сейчас также. Оказывается продукт автоматически создается с этим виджетом.
Но вот теперь алиас не создается, создает просто node/20 и тд. Все остальное, и продукт создается.
То есть в ноде у меня только титл, боди и словари, так? А картинку я гружу в поле продукта?

Аватар пользователя mozh mozh 5 октября 2015 в 14:45

"Dusk" wrote:
А картинку я гружу в поле продукта?

цену и статус
после жмете Create product http://take.ms/89DGB и только потом сохранить ноду

Если паттерн алиаса прописан для типа материала, то должен создаваться для ноды

Аватар пользователя Dusk Dusk 5 октября 2015 в 15:04

Да, да, все так, и даже кнопку "создать продукт" жать не нужно, он сам создается при сохранении ноды.
Но вот алиас с этим виджетом не создается, без него создается. Это, видимо какой-то косяк у меня.

Аватар пользователя Dusk Dusk 6 октября 2015 в 12:26

Так и не удалось решить проблему, создал новую сборку с минимальными настройками, стандартной темой, новый Друпал, новые модули, создал тип материла продукт, настроил связь с базовым продуктом коммерца и добавил в него картинку, создал дерево таксономии.
После создания ноды вместе с продуктом, URL пишется такой catalog/xxxx-0, так как такой алиас уже есть и он относится к дереву таксономии catalog/[term:parents:join-path]/[term:name], а после открытия ноды поле адреса выглядит так: http://pastenow.ru/E6V4, то есть как будто оно не сработало вообще. Если пересохранить еще раз, то все работает. Создается правильный URL по алиасу: catalog/[node:field-category:parents:join-path]/[node:field-category:name]/[node:original:title].
Ошибка на обоих сайтах немного отличается, но суть ее в том, что нужно пересохранить ноду, чтобы появился нужный алиас.
Может у кого есть какие идеи? Ошибок в журналах нет, в логах тоже.