[워드프레스] 케이보드에서 댓글을 최신 순으로 정렬하기

케이보드 게시판의 개별 게시글 내의 댓글은 오래된 댓글이 위에 오고 최근 댓글이 아래로 내려가는 형식입니다. 혹시 케이보드 설정에서 댓글 정렬 순서를 최신 댓글 순으로 바꾸는 옵션이 있는가 살펴보니 없네요.

Kboard에서 댓글을 최신 댓글 순으로 정렬하도록 하려면 /kboard-comments/class/KBCommentList.class.php 파일에서 $order 변수를 수정하면 됩니다.

var $order = 'ASC';

위의 ASCDESC로 바꾸어주면 댓글이 최신 순으로 정렬됩니다.

케이보드에서는 댓글이 오래된 댓글이 먼저 오도록 한 이유는 댓글 입력란이 맨 아래에 있기 때문이라고 합니다. 만약 댓글 폼을 위쪽으로 이동시키고 싶다면 /wp-content/plugins/kboard-comments/skin/default 폴더 내의 list.php 파일을 조금 수정해주면 됩니다. 파일을 수정하기 전에 새로운 스킨 폴더를 /skin/ 폴더 아래에 하나 만들어서 작업하면 좋을 것 같습니다. 즉, default 폴더의 내용을 그대로 복사하여 skin 폴더 아래에 새로운 폴더(예: standard)를 만들어서 복사한 후에 새로 만든 폴더 내의 list.php 파일을 수정하도록 합니다.

Kboard comments skin

그런 다음 게시판 설정에서 댓글 스킨 선택 옵션을 새롭게 만든 스킨으로 바꾸면 됩니다.

Kboard comment skin

이제 새로 만든 스킨 폴더(예: standard) 내의 list.php 파일에서 다음 부분을 찾습니다.

<!-- 댓글 리스트 시작 -->
<?php $commentBuilder->buildTreeList('list-template.php')?>
<!-- 댓글 리스트 끝 -->

위 부분을 통째로 잘라내기 하여 다음 부분 아래에 붙여넣기 합니다.

</form>
<!-- 댓글 입력 폼 끝 -->
<?php endif?>

최종적으로 다음과 같이 되면 됩니다.

</form>
<!-- 댓글 입력 폼 끝 -->
<?php endif?>

<!-- 댓글 리스트 시작 -->
<?php $commentBuilder->buildTreeList('list-template.php')?>
<!-- 댓글 리스트 끝 -->
</div>
</div>

<script type="text/javascript">
...

그러면 댓글 폼이 댓글 목록 위에 위치하게 됩니다.

WordPress Kboard Comment list order

참고로 위에서 KBCommentList.class.php 파일에 수정한 내용은 케이보드 댓글 플러그인이 업데이트되면 사라집니다. 업데이트 후에 다시 수정해주어야 합니다. (코어 파일을 수정하는 것은 권장되지 않지만, 별도의 필터/액션이 제공되지 않을 경우 코어 파일을 수정할 수밖에 없을 것 같습니다. KBoard에서 지원하는 후크 목록은 여기를 참고하시기 바랍니다.)

참고:

일부 글에 제휴 링크가 포함될 수 있으며 파트너스 활동으로 일정액의 수수료를 받을 수 있습니다.

댓글 남기기

* 이메일 주소는 공개되지 않습니다.