programing

상품을 추가할 때 우커머스 상품 카테고리가 누락(표시되지 않음)되었습니다.

stoneblock 2023. 10. 16. 21:29

상품을 추가할 때 우커머스 상품 카테고리가 누락(표시되지 않음)되었습니다.

최근에 상품을 추가할 때 메타박스에 카테고리가 표시되지 않아 카테고리에 상품을 할당할 수 없는 문제가 생겼습니다.예는 다음과 같습니다.

새 카테고리를 추가하면 페이지가 다시 로드되면 사라지는 것 같습니다.6개 항목이라고 쓰여 있는데 카테고리가 안 나와요.다음은 예입니다.

OP는 이것으로 나를 위해 고대인의 지혜 게시물을 만들었습니다.

디버깅을 켰는데 이 질문에서 설명된 오류가 나타났습니다."ORDER BY 절이 SELECT 목록에 없습니다"를 해결하는 방법은 SELECT DISTINCT ORDER BY로 MySQL 5.7을 야기했습니다.Digital Ocean의 Managed MySQL 서비스를 사용하고 있었는데 글로벌 설정을 수정할 수 없었습니다.my.cnf서류철

미래의 나 자신과 다른 방랑자들을 위해.문제는 MySQL의 'ANSI' 모드에 'ONLY_FULL_GROUP_BY'가 포함되어 있다는 것이었습니다.

WordPress는 기본적으로 'ONLY_FULL_GROUP_BY'를 필터링합니다./wp-includes/wp-db.php하지만 내 Managed SQL 서버는ANSI기본적으로도 설정됩니다.

제 해결책은 형편없는 워드프레스 플러그인을 만들어서 세션마다 둘 다 제거되도록 하는 것이었습니다.https://fishy.getgit.co/fishy/remove-ansi-sql-mode

아니면 복사/파스타:

<?php
/*
Plugin Name: Remove ANSI SQL_MODE
Version: 1.0
Description: Removes the 'ANSI' SQL MODE if it exists as it contains 'ONLY_FULL_GROUP_BY' since MySQL 5.7.5. See https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_ansi
*/
class Remove_Ansi_Sql_Mode {
    static function init(){
        add_action('init', array( __CLASS__, 'strip_ansi_mode' ) );
    }

    static function strip_ansi_mode(){
        global $wpdb;
        // Copied from /wp-includes/wp-db.php
        $incompatible_modes = array(
          'NO_ZERO_DATE',
          'ONLY_FULL_GROUP_BY',
          'STRICT_TRANS_TABLES',
          'STRICT_ALL_TABLES',
          'TRADITIONAL',
          'ANSI' // Adding ANSI
        );
        $sql_modes = explode(',', $wpdb->get_col( "SELECT @@SESSION.sql_mode" )[0]);
        foreach ($sql_modes as $key => $value) {
          if(in_array($value, $incompatible_modes)){
            unset($sql_modes[$key]);
          }
        }
        $wpdb->set_sql_mode($sql_modes);
    }   

}
Remove_Ansi_Sql_Mode::init();

WooCommerce 3.6으로 업데이트한 후에도 같은 문제가 있었습니다.WP Term Images 플러그인을 비활성화하여 해결했습니다.

한 번 해봐요, 당신한테 효과가 있어요.

Show Product Categories screenshot

언급URL : https://stackoverflow.com/questions/51965839/woocommerce-product-categories-are-missing-not-displaying-when-adding-product