모든 카테고리에 카테고리 표시 설정을 적용하는 방법은 무엇입니까?


10

많은 카테고리가 있고 모든 카테고리에 하나씩 새 설정을 적용하는 대신 모든 카테고리에 새 설정을 한 번에 적용 할 수 있는지 알고 싶습니다.

감사!

답변:


13

UI에서이를 수행 할 방법이 없습니다.
내가 일반적으로하는 방법은 데이터베이스의 값을 업데이트하는 것입니다. 권장되는 접근 방식은 아니지만 작동합니다. 모든 카테고리에 대해 속성을 '1'
로 업데이트하려고한다고 가정 is_anchor합니다.

SELECT * FROM eav_attribute where attribute_code = 'is_anchor'

위의 쿼리는 is_anchor속성을 제공해야 합니다. 결과 레코드는 속성 ID가 51이라는 것을 알았습니다 (당신에게 다를 수 있음). 그리고는 backend_type것입니다 int. 이는 속성 값이 테이블에 있음을 의미합니다 catalog_category_entity_int.

UPDATE `catalog_category_entity_int` set value = 1 where attribute_id = 51 and parent_id <> 0;

이 쿼리는 is_anchor (id 51) 속성의 값을 1로 설정합니다 parent = 0.
쿼리를 실행 한 후 플랫 범주를 다시 색인화하면됩니다.


완벽 해! 내가 찾던 정확히 : D
Aamir Siddique

7
최신 버전의 Magento에 대한 SQL 쿼리가 업데이트되었습니다 (예 : parent_id 열이 없습니다). 업데이트 catalog_category_entity_int설정 값 = 1 여기서 attribute_id = (SELECT attribute_id FROM eav_attribute여기서 attribute_code = 'is_anchor');
Jasuten

@Marius가 내 경우에는 작동하지 않습니다. UPDATE catalog_category_int설정 값 = 1을 시도하십시오. 여기서 attribute_id = 51 및 parent_id <> 0; 하지만 오류 : # 1146-테이블 'magento1.catalog_category_int'가 존재하지 않습니다
Dinesh

1
@ Dinesh 이것은 magento 인스턴스에 문제가 있음을 의미합니다.
Marius

@Marius 찾아서 고치는 방법, 어떤 도움
Dinesh

2

카테고리에서 어떤 설정을 변경하고 있는지 잘 모르겠지만 이 페이지 의 옵션 목록에있는 경우 Magento REST API를 사용하는 것이 가장 좋습니다.


1

먼저 is_anchor 속성의 속성 ID를 식별하십시오.

SELECT * FROM eav_attribute where attribute_code = 'is_anchor';

데이터베이스에서 속성 ID 51을 얻습니다. 이제 다음 쿼리를 실행하십시오.

UPDATE catalog_category_entity_int set value = 1 where attribute_id = 51;

51을 자신의 속성 ID로 바꿉니다. 그리고이 색인을 다시 작성하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.