대량 가져오기/삭제 후 WordPress 분류법(카테고리/태그)의 개수 필드를 업데이트하는 방법
대량 Import/삭제 후 WordPress 분류(카테고리/태그)의 수 필드를 업데이트하려면 어떻게 해야 합니까?
관련 질문:
WordPress support Support fix Import 후 코멘트 및 카테고리 수 수정 http://wordpress.org/support/topic/fix-comment-and-category-counts-after-import
이 SQL은 다음과 같은 이점을 제공합니다.
UPDATE wp_term_taxonomy SET count = (
SELECT COUNT(*) FROM wp_term_relationships rel
LEFT JOIN wp_posts po ON (po.ID = rel.object_id)
WHERE
rel.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id
AND
wp_term_taxonomy.taxonomy NOT IN ('link_category')
AND
po.post_status IN ('publish', 'future')
)
WordPress에 준거한 더 많은 방법은wp_update_term_count_now
(https://developer.wordpress.org/reference/functions/get_terms/)
예:
$update_taxonomy = 'my_taxonomy';
$get_terms_args = array(
'taxonomy' => $update_taxonomy,
'fields' => 'ids',
'hide_empty' => false,
);
$update_terms = get_terms($get_terms_args);
wp_update_term_count_now($update_terms, $update_taxonomy);
@kaorukobo의 답변은 잘 맞습니다.단, CPT의 모든 용어를 자동으로 업데이트하기 위해서는 약간의 커스터마이즈가 필요했습니다.특히 WooCommerce 제품 CPT는 몇 가지 커스텀 분류를 사용하여...
다음은 제품 CPT의 모든 분류법을 업데이트했습니다.
UPDATE wp_term_taxonomy tt
SET count =
(SELECT count(p.ID) FROM wp_term_relationships tr
LEFT JOIN wp_posts p
ON (p.ID = tr.object_id AND p.post_type = 'product' AND p.post_status = 'publish')
WHERE tr.term_taxonomy_id = tt.term_taxonomy_id
)
제 생각에 가장 좋은 방법은 WP-CLI를 사용하는 것입니다.여기에는 다음과 같은 명령어가 있습니다.
$ wp term recount category
매뉴얼은 https://developer.wordpress.org/cli/commands/term/recount/ 에서 찾을 수 있습니다.
언급URL : https://stackoverflow.com/questions/18669256/how-to-update-wordpress-taxonomiescategories-tags-count-field-after-bulk-impo
'source' 카테고리의 다른 글
json 객체 키 및 값을 제거하는 방법 (0) | 2023.02.08 |
---|---|
YAML은 5e-6을 번호가 아닌 문자열로 로드합니다. (0) | 2023.02.08 |
두 날짜 사이의 날짜인지 PHP 확인 (0) | 2023.01.27 |
"select from" 구문을 사용하지 않고 MySQL 테이블이 존재하는지 확인하시겠습니까? (0) | 2023.01.27 |
Jackson databind 열거형 대소문자를 구분하지 않음 (0) | 2023.01.27 |