PHP로 워드프레스 블로그 카테고리별 포스팅 개수 표시하기

글자 크기

얼마 전, 자바스크립트를 활용하여 블로그 카테고리별 포스팅 개수가 표시되도록 기능을 추가했었습니다. 그런데 속도가 느린 것 같아 PHP Code Widget를 활용하는 방법으로 바꿔 적용하였습니다. 이 글에서는 PHP로 워드프레스 블로그 카테고리별 포스팅 개수 표시 방법에 대해 알아보겠습니다.

PHP로 워드프레스 블로그 카테고리별 포스팅 개수 표시하기

자바스크립트를 활용해 블로그 카테고리명 뒤에 포스팅된 개수를 표시하는 기능을 추가해서 지금까지 사용해왔습니다. 그런데 제 블로그에 들어가 확인해 보니, 카테고리명 뒤에 포스팅 개수가 표시되는 데 약간의 시간차가 생기더군요. 즉, 카테고리명이 표시된 후 약간의 시간이 지난 뒤에 포스팅 개수가 표시되고 있었습니다. 이 시간차가 눈에 보여서 재미있다는 생각도 들었지만, 제가 원하는 것은 그런 시간차 없이 바로 포스팅 개수가 표시되는 것이었습니다. 그렇게 하기 위해 자바스크립트를 다시 수정하는 것보다는 서버 측에서 동작하는 PHP를 활용하는 방법을 적용하기로 했습니다. 

자바스크립트는 클라이언트(브라우저)에서 실행되며, 동적으로 사이트의 내용을 변경하기 때문에 사용자에게 실행되는 내용이 보일 수 있습니다. 반면, PHP는 서버에서 실행된 후 그 결과를 HTML로 클라이언트(브라우저)로 보내기 때문에 결과만 볼 수 있으며 실행 과정은 보이지 않습니다. 그래서 제가 원하는 시간 지연 없이 바로 포스팅 개수가 표시되게 하려면 PHP가 더 적합한 것이죠.

하지만, 이렇게 하기 위해서는 워드프레스 위젯에 PHP 코드를 직접 추가를 해야 하는데, 워드프레스가 기본적으로 이를 지원하지 않기 때문에 PHP Code Widget 플러그인을 설치해야 하는 단점이 있습니다.

자바스크립트를 활용해 카케고리별 포스팅 개수를 표시하는 방법이 궁금하신 분들은 아래 링크를 참고하세요.

워드프레스 Onepress 테마 카테고리 이름 뒤에 포스팅 개수 표시하기

먼저 PHP Code Widget를 설치하겠습니다. 워드프레스 관리자 화면에서 ‘플러그인’ → ‘Add New Plugin’를 순서대로 클릭한 후, 키워드 ‘PHP Code Widget’ 를 입력하여 검색합니다. 검색결과에서 ‘PHP Code Widget’를 찾아 ‘지금 설치’를 클릭하여 설치하고 활성화합니다.

PHP로 워드프레스 블로그 카테고리별 포스팅 개수 표시하기 위해 PHP Code Widget 플러그인을 설치합니다


PHP Code Widget 플러그인은 설치 후, 별도의 설정없이 바로 사용할 수 있습니다. 

이제 위젯에 카테고리별 포스팅 개수 표시를 위한 PHP 코드를 추가해 보도록 하겠습니다. 추가할 PHP 코드는 아래와 같습니다. 

코드가 실행되면 “▣ 카테고리명 (포스팅 개수)” 와 같이 표시됩니다.

<h3 class="wp-block-heading" id="widget_title">카테고리</h3>
<ul class="wp-block-categories-list.wp-block-categories">
<?php
$categories = get_categories(array(
    'orderby' => 'name',
    'order'   => 'DES'
));

foreach ($categories as $category) {
    echo '<li class="cat-item cat-item-' . $category->term_id . '">';
    echo '<a href="' . esc_url(get_category_link($category->term_id)) . '" style="color: #061D7A;">';
    echo '▣ ' . esc_html($category->name) . ' (' . $category->count . ')';
    echo '</a>';
    echo '</li>';
}
?>
</ul>


다음으로 위젯에 PHP 코드를 추가하기 위해, 아래와 같이 ‘외모’ → ‘위젯’을 클릭합니다. 

위젯에서 PHP 코드를 추가할 위치를 정한 후 ‘+’ 클릭하여 블록을 추가하고, ‘PHP’ 로 검색하여 ‘PHP Code’를 클릭합니다. 

위젯에서 블럭추가를 한 후, PHP로 검색하여 PHP Code 위젯을 추가합니다


아래와 같이 위의 PHP 코드를 복사하여 붙여넣기한 후, ‘업데이트’를 클릭하면 바로 적용됩니다. 

포스팅 개수를 표시해 주는 PHP 코드를 붙여넣기 합니다


PHP Code Widget를 추가한 결과는 다음과 같습니다. 화면상으로 보여지는 결과는 자바스크립트를 활용한 것과 동일하지만, 카테고리별 포스팅 개수가 조금의 시간 지연 없이 표시되는 것에 만족하고 있습니다.  

포스팅 개수를 표시해주는 PHP Code Widget를 실행한 결과입니다



오늘은 PHP로 워드프레스 블로그 카테고리별 포스팅 개수 표시 방법에 대해서 자세히 알아보았습니다. 카테고리별 포스팅 개수를 표시하는 방법은 여러 가지가 있습니다. 이전에 소개해 드렸던 자바스크립트를 활용한 방법도 그 중 하나입니다. 오늘 소개해 드린 PHP를 활용한 방법과 비교하여 어느 것이 좋다고 말씀드리기는 어렵지만, 개인의 필요에 따라 선택해서 적용해 보시면 좋겠습니다. 저는 카테고리별로 포스팅된 글의 개수를 표시하고 싶어 이런저런 방법을 적용한 것이고 굳이 표시할 필요가 없으시다면 서버에 부담을 주지 않도록 아무것도 추가하지 않는 것이 가장 좋은 방법이기는 합니다.