워드프레스 글자수/단어수 확인하기

Last Updated: 2023년 09월 04일 | | 댓글 남기기

워드프레스에서 글을 작성할 때 단어 수나 글자 수를 확인하기를 원할 수 있습니다. 구글에서는 글 길이가 순위 결정 요소가 아니라고 밝혔지만, Yoast SEO, Rank Math 등의 SEO 플러그인에서는 일정 단어 이상이 구글 검색엔진에서 상위에 노출될 가능성이 높다고 합니다.

워드프레스의 기본 에디터인 블록 편집기(구텐베르크)를 사용하는 경우 글자수/단어수 통계를 확인할 수 있는 옵션이 제공됩니다. Rank Math 등 SEO 플러그인을 사용하는 경우 단어수가 적절한지 확인할 수 있습니다.

참고로 단어수/글자수에 대한 절대적인 기준이 없으므로 글 주제에 따라 적절한 분량으로 포스트를 작성하시기 바랍니다. 억지로 글 분량을 늘리려고 하면 글 품질이 떨어져 오히려 역효과가 발생할 것입니다.

워드프레스 블록 편집기에서 글자수/단어수 통계 확인하기

워드프레스 5.0 버전부터 블록 에디터가 기본 편집기로 통합되었습니다. 블록 에디터에서는 단어수와 글자수를 체크할 수 있는 기능이 제공됩니다.

현재 클래식 편집기(Classic Editor)가 500만 개 이상의 워드프레스 사이트에 설치되어 사용되고 있지만, 이제는 블록 편집기가 초기 버전에 비해 많이 안정화되었고 기능도 개선되었으므로 가급적 블록 편집기를 사용하는 것이 바람직할 것 같습니다.

글 편집 화면의 상단 툴바에 있는 세 개 줄로 된 문서 모두 보기 아이콘(①)을 클릭하고 아웃라인 탭을 클릭하면 글자 수, 단어 수, 읽을 시간 등의 정보가 표시됩니다.

워드프레스 블록 편집기에서 글자수/단어수 통계 확인하기

키보드 단축키로 Shift+Alt+O 키를 눌러 문서 모두 보기 패널을 표시할 수 있습니다.

아웃라인은 Outline의 번역으로 "개요" 정도의 의미로 이해하면 될 것 같습니다.

다른 방법으로 SEO 플러그인을 사용하는 경우 SEO 분석 기능에서 단어 수를 표시할 수 있습니다. 아래는 Rank Math SEO 플러그인의 SEO 분석 화면을 보여줍니다.

워드프레스 Rank Math 단어수 체크하기

현재 콘텐츠 길이를 알려주고 600단어 이상을 권장하고 있습니다. 이러한 권장 글 길이는 참조만 하시기 바랍니다.

글 목록 페이지에 단어수/글자수 통계 표시하기

코드를 추가하여 모든 글 페이지에 각 포스트의 단어수와 글자수를 표시할 수 있습니다.

워드프레스 글자수/단어수 확인하기

차일드 테마가 설치되어 있지 않다면 차일드 테마(자식 테마)를 설치하고, 차일드 테마 내의 함수 파일(functions.php)에 다음과 같은 코드를 추가하도록 합니다.

// Add word count & character count statistics in WordPress Using Code
// Add new columns for Word Count, Characters (no spaces), and Characters (with spaces)
add_filter('manage_posts_columns', 'add_custom_columns');
function add_custom_columns($columns) {
    $columns['word_count'] = 'Word Count'; // 단어수
    $columns['char_count_no_spaces'] = 'Chars (no spaces)'; // 글자수(공백 제외)
    $columns['char_count_with_spaces'] = 'Chars (with spaces)'; // 글자수(공백 포함)
    return $columns;
}

// Populate the new columns with data
add_action('manage_posts_custom_column', 'display_custom_columns_data'); 
function display_custom_columns_data($column_name) {
    global $post;

    if ('word_count' === $column_name) {
        $wordCount = get_post_word_count($post->ID);
        echo $wordCount;
    }

    if ('char_count_no_spaces' === $column_name) {
        $charCountNoSpaces = get_post_char_count($post->ID, false);
        echo $charCountNoSpaces;
    }

    if ('char_count_with_spaces' === $column_name) {
        $charCountWithSpaces = get_post_char_count($post->ID, true);
        echo $charCountWithSpaces;
    }
}

// Function to get the word count for a given post ID
function get_post_word_count($post_id) {
    $content = get_post_field('post_content', $post_id);
    $cleanedContent = strip_tags(strip_shortcodes($content));
    $wordCount = str_word_count($cleanedContent);
    return $wordCount;
}

// Function to get the character count for a given post ID
function get_post_char_count($post_id, $include_spaces = false) {
    $content = get_post_field('post_content', $post_id);
    $cleanedContent = strip_tags(strip_shortcodes($content));
    
    if (!$include_spaces) {
        $cleanedContent = str_replace(" ", "", $cleanedContent);
    }

    $charCount = strlen($cleanedContent);
    return $charCount;
}
// Add new columns for Word Count, Characters (no spaces), and Characters (with spaces)
add_filter('manage_posts_columns', 'add_custom_columns');
function add_custom_columns($columns) {
    $columns['word_count'] = 'Word Count';
    $columns['char_count_no_spaces'] = 'Chars (no spaces)';
    $columns['char_count_with_spaces'] = 'Chars (with spaces)';
    return $columns;
}

// Populate the new columns with data
add_action('manage_posts_custom_column', 'display_custom_columns_data'); 
function display_custom_columns_data($column_name) {
    global $post;

    if ('word_count' === $column_name) {
        $wordCount = get_post_word_count($post->ID);
        echo $wordCount;
    }

    if ('char_count_no_spaces' === $column_name) {
        $charCountNoSpaces = get_post_char_count($post->ID, false);
        echo $charCountNoSpaces;
    }

    if ('char_count_with_spaces' === $column_name) {
        $charCountWithSpaces = get_post_char_count($post->ID, true);
        echo $charCountWithSpaces;
    }
}

// Function to get the word count for a given post ID
function get_post_word_count($post_id) {
    $content = get_post_field('post_content', $post_id);
    $cleanedContent = strip_tags(strip_shortcodes($content));
    $wordCount = str_word_count($cleanedContent);
    return $wordCount;
}

// Function to get the character count for a given post ID
function get_post_char_count($post_id, $include_spaces = false) {
    $content = get_post_field('post_content', $post_id);
    $cleanedContent = strip_tags(strip_shortcodes($content));
    
    if (!$include_spaces) {
        $cleanedContent = str_replace(" ", "", $cleanedContent);
    }

    $charCount = strlen($cleanedContent);
    return $charCount;
}

위의 코드를 추가하면 모든 글 페이지에서 각 포스트의 단어수와 글자수를 한꺼번에 확인할 수 있습니다.

차일드 테마를 이용하지 않고 부모 테마의 함수 파일에 상기 코드를 추가할 경우, 추후 테마 업데이트 시 코드가 사라집니다.

텍스트 카운터(글자수 세기) 도구 사용하기

MS Word와 같은 워드프로세서에서는 단어 수, 글자 수 등에 대한 상세한 정보를 제공합니다. MS 워드가 설치되어 있다면 콘텐츠를 붙여넣기 하여 단어수/글자수를 체크하고 맞춤법 검사도 할 수 있습니다.

MS 워드 단어 개수 도구
MS 워드의 단어 개수 도구.

제 블로그에는 PHP, CSS, 자바스크립트 관련 코드가 많습니다. 이런 코드가 있는 경우 워드프레스의 단어수 체크 도구에서는 코드도 포함하므로 코드를 제외한 단어수나 글자수를 파악하는 것이 어려울 수 있습니다.

이런 경우 글자수 세기 도구를 사용하여 단어수/글자수를 확인하는 것을 고려할 수 있습니다. 코드를 제외한 텍스트를 붙여넣기 한 다음 글 길이를 체크하면 됩니다.

개인적으로 단어수를 체크하기 위해 텍스트 카운터를 워드프레스로 만들어 보았습니다. 다음 페이지의 텍스트 카운터 툴을 이용하여 단어수와 글자수를 파악할 수 있습니다.

상기 도구에서 표시하는 결과값은 MS Word의 단어 개수 도구의 결과값과 거의 동일합니다.

SEO 플러그인에서 권장하는 글 길이

예를 들어, 랭크 매쓰 플러그인에서는 600단어 이상을 권장합니다. Yoast SEO의 경우 SEO 플러그인에서 "Word count and SEO: how long should a blog post or page be?" 문서에서 1000단어 이상의 고품질 포스트가 구글 검색엔진에서 상위에 노출될 가능성이 높다고 언급하고 있습니다.

우선 이런 권장 사항은 영문을 기준으로 한 것이기 때문에 한국어에 그대로 적용하기에는 무리가 있을 수 있습니다.

경험상, 영어 200단어를 번역하면 한글 약 135단어가 되고 자수로는 400자 정도가 되는 것 같습니다(콘텐츠 성격에 따라 다름). 영문을 한국어로 번역하면 단어수가 줄어들기 때문에 영어 600단어와 한국어 600단어는 실제 분량이 다를 수 있습니다.

실제로 한국어로 600단어 분량의 글을 작성하는 것이 쉽지 않습니다. 억지로 여기에 맞추기 위해 콘텐츠 길이를 늘리는 것은 글 퀄리티에 영향을 미칠 수 있으므로 개인적으로는 권장하지 않습니다.

일부 유튜브 영상이나 블로그 글에서 몇 자 이상이 되어야 애드센스 승인을 받기 쉽다고 주장하는 경우가 있습니다. 그런 것은 근거가 없기 때문에 절대적으로 신뢰해서는 안 됩니다. 구글의 존 뮬러(John Mueller)는 다음과 같이 밝히고 있습니다.

From our point of view the number of words on a page is not a quality factor, not a ranking factor.

So just blindly adding more and more text to a page doesn’t make it better.

"단어수는 품질 결정 요소가 아니고 순위 결정 요소도 아니라며 무작정 한 페이지에 더 많은 텍스트를 추가한다고 해서 더 좋은 평가를 받는 것이 아니다"라고 설명하고 있습니다.

글 길이는 품질 결정 요소가 아니지만 적당한 글 길이를 유지하는 것이 중요한 것 같습니다. 경험상 너무 짧은 글은 상위 페이지에 노출될 가능성이 낮고, 구글 애드센스 광고도 잘 안 붙는 것 같습니다. 그렇다고 해서 무작정 콘텐츠 길이를 늘리는 것은 도움이 안 될 것입니다. 해당 주제를 충분히 설명할 수 있는 적당한 길이로 글을 작성하면 좋을 것 같습니다.

마치며

이상으로 워드프레스에서 글자수/단어수를 확인하는 방법에 대하여 살펴보았습니다. 블록 에디터에서는 자체적으로 단어수 등을 표시하는 기능이 제공되므로 쉽게 글 길이를 파악할 수 있습니다.

WP Word Count라는 플러그인이 있지만, 전체 글들의 워드 카운트를 확인하고 싶은 경우 이런 플러그인을 사용하는 것보다 상기의 "글 목록 페이지에 단어수/글자수 통계 표시하기" 부분에 제시된 코드를 이용하는 것을 고려해보시기 바랍니다.

참고


댓글 남기기

Leave a Comment