게시판에서 게시글 목록 댓글 카운트 문제

1. 정확한 제품 또는 플러그인 이름

KBoard

 

2. 상세 내용

KBoard 커스텀 스킨(card-item.php)에서 댓글 수를 출력하려고 합니다.

현재 확인한 사항:

  • wp_kboard_comments 테이블 존재

  • content_uid 컬럼 존재

  • 댓글 데이터 정상 저장 확인

  • content_uid 값도 게시글 uid와 일치 확인

 

content_uid: 5 댓글 존재

하지만 아래 코드로 댓글 수를 조회하면 항상 0이 출력됩니다.

$comments = (int) $wpdb->get_var($wpdb->prepare(
    "SELECT COUNT(*) FROM `{$wpdb->prefix}kboard_comments`
    WHERE `content_uid` = %d",
    $content->uid
));

질문:

  1. KBoard 목록 스킨에서 공식적으로 댓글 수를 가져오는 권장 방법이 있는지

  2. 리스트 스킨(card-item.php)에서 사용할 수 있는 댓글 수 관련 기본 변수나 메서드가 있는지

  3. 댓글 카운트가 별도 캐시/메타 테이블로 관리되는 구조인지 궁금합니다.

 

WordPress + KBoard 최신 버전, 코스모스팜 무제한 요금제를 사용하고 있습니다.

 

3. 확인 가능한 상세 페이지 주소

 

 

4. 수정한 코드 내역 (있다면)

 

 

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • AI에 의해 자동 생성된 답변이에요 😀

    KBoard 게시판 목록 스킨에서 댓글 수를 출력하는 가장 권장되는 방법은 KBoard의 내장 메서드를 사용하는 것입니다.

    직접 SQL 쿼리를 작성하여 호출할 경우 데이터베이스 접두사나 테이블 구조 변경 등에 따라 오류가 발생할 수 있으므로, 아래의 공식 메서드 사용을 권장합니다.

    1. 권장 방법 (메서드 활용)

    리스트 스킨 파일(예: card-item.php 또는 list.php) 내에서 게시글 객체($content)의 메서드를 직접 호출합니다.

    - 코드: getCommentsCount()?>

    2. 특징 및 구조

    - KBoard는 게시글 목록을 불러올 때 각 게시글에 대한 댓글 수를 효율적으로 가져올 수 있도록 설계되어 있습니다.

    - 별도의 캐시 테이블을 직접 관리하기보다는, 객체 내부 메서드인 getCommentsCount()를 통해 해당 게시글(uid)에 연결된 댓글 숫자를 반환합니다.

    - 작성하신 직접 쿼리 방식($wpdb->get_var)이 0을 반환한다면, $content->uid 값이 해당 시점에 정확히 전달되고 있는지 또는 테이블 접두사({$wpdb->prefix})가 실제 DB와 일치하는지 확인이 필요할 수 있으나, 가급적 내장 메서드를 사용하는 것이 가장 안전합니다.

    3. 적용 위치 예시

    제목 옆이나 카드 레이아웃의 특정 영역에 아래와 같이 삽입하여 사용하세요.

    - 예시: getCommentsCount()?>

    이 방법을 사용하면 복잡한 SQL 문 없이도 최신 버전의 KBoard에서 정상적으로 댓글 수를 출력할 수 있습니다.

    ↓ 아래 버튼을 눌러서 피드백해주세요.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기