donvictorio
Хранитель порядка
- Регистрация
- 28 Янв 2010
- Сообщения
- 872
- Реакции
- 849
- Автор темы
- #1
правила url_rewrite в магенто хранятся в колонке`request_path`, тип varchar(255), а это всего около 50 кириллических символов, чего не хватает для полноценной работы. транслитерация в движке работает хреново, вследствие чего seo составляющая url падает на нет.
подумал о том, чтобы изменить тип колонки на text, но не умею составить запрос с key, который ограничит индекс, а без него mysql говорит ошибкой
сам запрос на создание таблицы core_url_rewrite:
`request_path` - строка, которую надо сделать text, а после запроса идут вставки.
как грамотно это сделать, ограничив индекс строки в 1000 символов? (этого должно хватить для UNIQUE KEY)
подумал о том, чтобы изменить тип колонки на text, но не умею составить запрос с key, который ограничит индекс, а без него mysql говорит ошибкой
Код:
BLOB/TEXT column 'request_path' used in key specification without a key length
сам запрос на создание таблицы core_url_rewrite:
Код:
CREATE TABLE `core_url_rewrite` (
`url_rewrite_id` int(10) unsigned not null auto_increment,
`store_id` smallint(5) unsigned not null default '0',
`id_path` varchar(255),
`request_path` varchar(255) not null,
`target_path` varchar(255),
`is_system` smallint(5) unsigned default '1',
`options` varchar(255),
`description` varchar(255),
`category_id` int(10) unsigned,
`product_id` int(10) unsigned,
PRIMARY KEY (`url_rewrite_id`),
UNIQUE KEY (`request_path`,`store_id`),
UNIQUE KEY (`id_path`,`is_system`,`store_id`),
KEY `IDX_CORE_URL_REWRITE_TARGET_PATH_STORE_ID` (`target_path`,`store_id`),
KEY `IDX_CORE_URL_REWRITE_ID_PATH` (`id_path`),
KEY `IDX_CORE_URL_REWRITE_STORE_ID` (`store_id`),
KEY `FK_CORE_URL_REWRITE_CTGR_ID_CAT_CTGR_ENTT_ENTT_ID` (`category_id`),
KEY `FK_CORE_URL_REWRITE_PRODUCT_ID_CATALOG_CATEGORY_ENTITY_ENTITY_ID` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=82;
`request_path` - строка, которую надо сделать text, а после запроса идут вставки.
как грамотно это сделать, ограничив индекс строки в 1000 символов? (этого должно хватить для UNIQUE KEY)