Tôi biết có một vấn đề tương tự liên quan đến một sản phẩm , nhưng bây giờ tôi đã gặp lỗi này với một danh mục.
Tôi không thể nhớ rằng tôi đã làm một cái gì đó khác biệt, nó đột nhiên bắt đầu ném lỗi này ngay khi tôi vào một trang chuyên mục trên frontend.
Đôi khi, việc lưu lại danh mục trong quản trị viên đã giải quyết được vấn đề, nhưng hầu hết các lần đều không. Lỗi này đến từ đâu? Làm thế nào để khắc phục nó? Có ai khác gặp phải lỗi này quá không?
Biên tập
Có vẻ như trang danh mục yêu cầu bảng viết lại URL cho URL. Nó tạo ra truy vấn này:
SELECT `e`.*,
IF(at_is_active.value_id > 0, at_is_active.value,
at_is_active_default.value) AS
`is_active`,
`url_rewrite`.`request_path`
FROM `catalog_category_entity` AS `e`
INNER JOIN `catalog_category_entity_int` AS `at_is_active_default`
ON ( `at_is_active_default`.`entity_id` = `e`.`entity_id`)
AND ( `at_is_active_default`.`attribute_id` = '46' )
AND `at_is_active_default`.`store_id` = 0
LEFT JOIN `catalog_category_entity_int` AS `at_is_active`
ON ( `at_is_active`.`entity_id` = `e`.`entity_id` )
AND ( `at_is_active`.`attribute_id` = '46' )
AND ( `at_is_active`.`store_id` = 1 )
LEFT JOIN `url_rewrite`
ON ( url_rewrite.entity_id = e.entity_id )
AND ( url_rewrite.is_autogenerated = 1
AND url_rewrite.store_id = 1
AND url_rewrite.entity_type = 'category' )
WHERE ( IF(at_is_active.value_id > 0, at_is_active.value,
at_is_active_default.value)
=
'1' )
AND ( `e`.`entity_id` IN( '10', '170', '171', '172',
'173', '175', '176', '177',
'178', '179', '180', '189', '276' ) )
ORDER BY `e`.`position` ASC
Nhưng nếu url_rewrite
-table của bạn bị hỏng (rất có thể trong trường hợp của tôi), thì kết cục là có ID trùng lặp.
Sometimes re-saving the category in the admin resolved the issue
Điều này làm việc cho tôi, Cảm ơn !!