KBoard에 'Hot' 라벨 붙이기

예를 들어 워드프레스 Kboard 게시판의 어떤 글이 매일 평균 25회 이상 조회가 되면 "Hot"이라는 라벨을 붙이고 싶은 경우 다음 코드를 스킨 폴더 내의 "list.php" 파일의 적절한 곳에 추가하면 됩니다.

<!-- For outputting "Hot" Label -->
<?php
$now = date("Y-m-d");
$last_active = date("Y-m-d", strtotime($content->date));
$now = new DateTime($new);
$last_active = new dateTime($last_active);
$interval = $last_active->diff($now);
$difference = $interval->format('%R%a days');
$difference = $difference + 1; /* The date difference plus 1 */
$hot_views_per_day = 25; /* The number of views per day which will be set as hot topics */
$total_counter = $content->view; /* View count of the current topic */
$acutal_views_per_day = $total_counter / $difference; /* View count per day */
if ($acutal_views_per_day >= $hot_views_per_day) {
echo '<img style="margin-bottom: -8px; border:0!important; box-shadow: none!important;" src = "' . home_url( '/' ) .'wp-content/uploads/2015/07/hot.png" alt="hot">';
}
?>
<!-- End -->

이미지는 적절한 "Hot" 아이콘으로 대체하거나 텍스트로 바꾸고 CSS로 레이아웃을 조정할 수도 있습니다. 그리고 Hot 항목으로 지정할 기준 조회수도 적절히 조정해 주세요. 위의 코드는 테스트를 거치지 않았습니다. 잘 되는지 확인하시고 잘 되지 않으면 댓글로 알려주시기 바랍니다.

추가: home_url( '/' )는 사이트의 URL을 출력합니다(여기 참고). 이미지 파일의 경로가 www.abc.com/wp-content/uploads/.../hot.png라면 . home_url( '/' ) . '/wp-content/uploads/.../hot.png"로 수정하시면 됩니다.

추가: 핫 라벨을 이미지 대신 글자로 구현하려면 <img ...> 태그를 적절한 코드로 변경하면 됩니다. (예: <span style="color: red; background-color: yellow;">HOT</span>)

워드프레스 케이보드 게시판 - Hot 라벨

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

2개 댓글

  1. 성공했습니다!!! 정말 고맙습니다~~!!!! 

    그런데 new도 hot처럼 list에서 하나의 코드로 할 수 없을까요?
    감사합니다 꾸벅
    1. 물론 가능합니다. (처음에는 하나의 코드로 만들었다가 일부러 분리한 것입니다.)
      시간이 될 때 한 번 올려보겠습니다.
      참고로 PHP를 잘 모르시더라도 Hot 부분의 코드와 New 부분의 코드를 자세히 살펴보시면 쉽게 만드실 수 있습니다.

댓글 남기기

* 이메일 정보는 공개되지 않습니다.