워드프레스 SEO 점검: 플러그인이 실제로 내보내는 태그 6가지 읽기

SEOgrinder 편집팀 · 게시일 · 읽는 시간 약 11분

핵심 답변: 워드프레스 SEO 점검은 플러그인에 입력한 설정이 아니라 사이트가 실제로 내보내는 페이지를 읽습니다. 검색 엔진이 받는 것은 그 페이지이기 때문입니다. 글 하나를 열어 제목, 메타 설명, canonical, robots 규칙, 사이트맵, 구조화된 데이터를 읽고 의도한 설정과 비교하세요. 어떤 플러그인을 쓰든 curl 명령 네 줄이나 무료 SEOgrinder 스캔으로 할 수 있습니다. 깔끔한 페이지는 걸림돌을 없앨 뿐, 순위를 약속하지는 않습니다.

워드프레스 SEO 점검이란 무엇이며, 왜 설정이 아니라 페이지를 확인하나요?

워드프레스(WordPress) SEO 점검은 사이트의 공개 페이지를 방문자나 크롤러처럼 열어, HTML과 서버 응답에서 찾은 내용을 보고합니다. 어떤 제목과 설명이 있는지, canonical 주소가 무엇인지, robots 규칙이 어떤지, 사이트맵이 있는지, 구조화된 데이터가 있고 읽을 수 있는지를 확인합니다.

이것은 SEO 플러그인의 설정 화면과 다릅니다. 설정 화면은 내가 입력한 것을 보여 주고, 페이지는 실제로 도착한 것을 보여 줍니다. 둘 사이에는 테마, 다른 플러그인, 캐시된 사본, 그리고 워드프레스 자체가 있고, 이들 각각이 보내려던 내용을 바꾸거나 빠뜨릴 수 있습니다. Google의 메타 설명 문서는 HTML을 직접 편집하지 못하고 설정 페이지를 통해 작업하게 될 수 있는 시스템으로 WordPress를 꼽기까지 합니다.

이 글은 어떤 플러그인을 쓰든 몇 분 안에 결과를 읽는 방법과, 외부에서 하는 점검으로는 알 수 없는 것을 설명합니다. SEOgrinder는 우리의 도구이며, 우리가 만듭니다. WordPress용 플러그인은 계획 중이며 아직 없습니다. 이어지는 내용에는 웹 도구만 있으면 됩니다.

워드프레스 페이지의 HTML은 누가 쓰나요?

같은 태그에 손을 대는 주체가 넷 있습니다. 그래서 설정만 봐서는 결과를 알 수 없습니다.

  • 워드프레스 자체. 코어는 플러그인 없이도 일부 태그를 씁니다. rel_canonical() 함수는 “Outputs rel=canonical for singular queries”라고 설명되어 있습니다(developer.wordpress.org). 글이나 페이지 같은 단일 항목에 해당하고 아카이브에는 해당하지 않습니다. 또 5.5 버전부터 코어는 /wp-sitemap.xml에 사이트맵 인덱스를 제공하고 robots.txt에서 이를 가리킵니다(코어 팀의 2020년 7월 22일 공지).
  • 필터를 통한 플러그인과 테마. wp_get_document_title() 문서는 제목을 바꾸는 필터 네 개를 나열하고, wp_robots 필터는 robots 메타 태그에 대해 같은 역할을 합니다(제목, robots). 어떤 플러그인이나 테마든 이 필터를 쓸 수 있습니다.
  • 테마. head 안의 태그는 wp_head 훅을 통해 출력됩니다. 문서는 테마에 따라 다르지만 이 훅이 널리 지원된다고 적고 있습니다. 우리의 해석입니다. 이 훅을 호출하지 않는 테마에서는 이 훅에 매달린 것들이 출력되지 않습니다.
  • 캐시. 페이지 캐시나 CDN은 현재 설정이 만들어 낼 HTML보다 오래된 사본을 내보낼 수 있습니다.

워드프레스 SEO 점검: 페이지에서 읽을 6가지

홈페이지만 보지 말고 글 하나를 고르세요. 아래 여섯 가지를 이 순서대로 읽습니다.

1. 제목

이 페이지에만 해당하는 <title>이 하나 있는지 보세요. Google의 제목 링크 문서는 제목에 “repeated or boilerplate text”, 즉 반복되거나 정형화된 문구를 피하라고 말합니다. 플러그인이 제목 템플릿을 쓴다면 글 하나, 페이지 하나, 블로그 목록에서 결과를 각각 읽어 보세요.

2. 메타 설명

<meta name="description">은 Google에게는 선택 사항입니다. 페이지 본문보다 페이지를 더 잘 설명할 때 Google이 스니펫에 “will sometimes use”, 즉 가끔 사용합니다(스니펫 문서). 같은 문서는 이렇게도 말합니다. “Identical or similar descriptions on every page of a site aren't helpful when individual pages appear in search results.” 플러그인에서 설명을 써 놓았는데 HTML에 하나도 보이지 않는다면, 설정과 페이지 사이의 어딘가에서 사라진 것입니다.

3. Canonical

일반적인 페이지에서 자기 자신을 가리키는, 절대 https 주소를 쓴 <link rel="canonical">이 정확히 하나 있는지 보세요. Google의 canonical 문서는 대표 페이지에 자기 참조 canonical을 두고 상대 주소가 아니라 절대 주소를 쓰라고 권합니다. 서로 다른 주소를 가리키는 canonical이 둘이면 서로 모순되므로 어딘가에서 두 번째를 쓰고 있는 것입니다. 무엇이 쓰는지 찾아내세요.

4. robots 규칙

규칙은 세 곳에 있습니다. HTML의 robots 메타 태그, 응답의 X-Robots-Tag 헤더(페이지 소스에는 절대 나타나지 않습니다), 그리고 /robots.txt입니다. 검색에서 찾혀야 하는 페이지에 noindex가 있는지 보세요.

워드프레스의 대표적인 경우는 설정의 읽기 화면(Settings, Reading)에 있는 “Discourage search engines from indexing this site” 확인란입니다(영어 문서의 문구이며, 한국어 관리자 화면의 문구는 다를 수 있습니다). 문서(최종 업데이트 2024년 6월 8일)에 따르면 이 확인란은 “if wp_head is used”, 즉 wp_head가 사용될 때 head에 <meta name='robots' content='noindex,nofollow' />를 쓰며, “it is up to search engines to honor your request”, 즉 요청을 지킬지는 검색 엔진에 달려 있습니다. 코어 공지는 이 설정을 켜면 사이트맵도 꺼진다고 덧붙입니다. 확인란 하나에 결과가 둘이고, 둘 다 페이지에서 볼 수 있습니다.

robots 태그가 있다는 것만으로 경보는 아닙니다. 2026년 11월 4일에 아래 점검 방법 절의 명령을 https://wordpress.org/news/에 실행했습니다. 그곳의 robots 태그는 <meta name='robots' content='max-image-preview:large' /> 하나뿐이었고 noindex는 없었습니다. 규칙이 충돌하면 Google은 더 엄격한 쪽을 적용합니다. “the more restrictive rule applies”(robots 메타 태그). 그러니 잊고 둔 noindex는 플러그인 설정이 뭐라고 하든 우선합니다.

robots.txt는 설정이 아니라 파일을 읽으세요. 워드프레스는 이 파일을 생성할 수 있고(do_robots(): “Displays the default robots.txt file content”), 코드가 robots_txt 필터로 바꿀 수도 있습니다(함수, 필터).

5. 사이트맵

200으로 응답하고, 검색에 나오길 원하는 페이지를 담고 있으며, robots.txt의 Sitemap: 줄로 알려진 사이트맵이 있는지 보세요. 코어의 주소는 /wp-sitemap.xml입니다. 플러그인은 다른 주소를 쓸 수 있으니 robots.txt의 해당 줄을 따라가세요. 사이트맵은 약속이 아닙니다. Google은 사이트맵의 모든 항목이 크롤링되고 색인된다는 보장은 없다고 말합니다(“doesn't guarantee that all the items in your sitemap will be crawled and indexed”, 사이트맵 개요).

6. 구조화된 데이터

읽을 수 있는 <script type="application/ld+json"> 블록이 있고 그 유형이 페이지에 맞는지 보세요. Google은 환경이 허용하는 한 JSON-LD를 권장합니다(구조화된 데이터 소개). 잘못된 마크업은 무시되므로 있다는 것만으로는 증명되는 바가 적습니다.

점검 방법: 명령 네 줄 또는 스캔 한 번

명령줄에서. 주소를 내 글 중 하나로 바꾸세요. 첫 줄은 일치하는 태그를 모두 출력합니다. 제목, 설명, canonical은 각각 한 번씩 나와야 하고(JSON-LD 블록은 여러 개여도 괜찮습니다), 첫 번째 title 줄이 페이지의 제목입니다. 나머지 줄은 헤더, robots.txt, 코어 사이트맵의 상태를 보여 줍니다.

curl -s https://example.com/my-post/ | grep -o -i -E '<title>[^<]*</title>|<meta[^>]*name=.(description|robots).[^>]*>|<link[^>]*rel=.canonical.[^>]*>|<script[^>]*ld\+json[^>]*>'
curl -sI https://example.com/my-post/ | grep -i x-robots-tag
curl -s https://example.com/robots.txt
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/wp-sitemap.xml

SEOgrinder로. 무료이고 계정이 필요 없습니다.

  1. SEOgrinder를 열고 공개된 글이나 페이지의 주소를 입력한 뒤 분석을 시작합니다.
  2. 「할 일」 탭을 읽습니다. 발견한 항목이 효과가 큰 순서로 나옵니다. 예를 들면 「메타 설명이 없습니다」, 「canonical 태그가 없습니다」, 「서로 다른 canonical 태그가 2개입니다」, 「페이지가 Google에서 제외되어 있습니다」, 「robots.txt가 이 주소를 차단합니다」, 「사이트맵을 찾을 수 없습니다」, 「구조화된 데이터가 없습니다」 같은 것입니다.
  3. 「Google에서의 페이지」 탭을 엽니다. 이곳의 카드는 잘못된 것만이 아니라 발견한 것을 보여 줍니다. 「제목과 설명」은 두 태그의 텍스트를, 「색인」은 페이지를 색인할 수 있는지와 HTTP 상태, robots.txt가 허용하는지, 사이트맵에 있는지를, 「Canonical」은 주소와 「자기 자신을 가리킴」인지를, 「구조화된 데이터」는 유형과 JSON-LD 블록 수를 보여 줍니다.
  4. 워드프레스에서 설정을 바꾸고 페이지 캐시를 비운 다음 다시 확인을 누르세요. 리포트는 최대 24시간 동안 캐시됩니다.

SEOgrinder는 어떤 방문자든 받게 되는 것을 읽습니다. 워드프레스에 로그인하지 않고, 설정을 볼 수 없으며, 어떤 플러그인이 태그를 썼는지도 알려 주지 않습니다.

플러그인 페이지가 말하는 것과 페이지만 확인해 줄 수 있는 것

wordpress.org에서 대형 SEO 플러그인들은 자신이 하는 일을 직접 소개합니다. Yoast SEO는 “Canonical URLs to prevent duplicate content issues”와 “Advanced XML sitemaps for clear site indexing”를 나열합니다(플러그인 페이지). Rank Math는 “16+ Schema types to add rich results in a few clicks”를 내세웁니다(플러그인 페이지). All in One SEO는 “automatic canonical URLs and per-post canonical tags to prevent duplicate content”를 적고 있습니다(플러그인 페이지). 세 곳 모두 schema, seo, xml sitemap 태그를 달고 있습니다(2026년 11월 4일 확인).

이런 문장은 플러그인이 어떤 일을 제공하는지를 알려 줍니다. 내 페이지에 지금 무엇이 들어 있는지는 말해 주지 못합니다. 그것은 내 설정, 테마, 다른 플러그인, 캐시에 달려 있기 때문입니다. 우리는 이 플러그인들을 테스트하지 않았고 서로 비교하지도 않습니다. 어느 한쪽이 더 나은 HTML을 쓴다는 뜻은 여기 어디에도 없습니다. 증거는 오직 페이지입니다.

외부 점검으로는 알 수 없는 것

  • Google이 그 페이지를 색인했는지. 스캔은 내 서버가 지금 내보내는 것을 보여 줍니다. Google의 URL 검사 도구는 “provides information about Google's indexed version of a specific page”, 즉 특정 페이지의 Google 색인 버전에 관한 정보를 제공하며, 같은 문서는 이렇게 경고합니다. “Your page may have changed or become unavailable since Google last saw it.”
  • 누가 태그를 썼는지. 태그는 보이지만 코어, 테마, 플러그인 중 무엇이 출력했는지는 알 수 없습니다. 우리의 조언은 이렇습니다. 사이트의 복사본에서 의심되는 대상을 하나씩 꺼 보세요.
  • 순위. 어떤 점검 도구도 순위를 약속할 수 없습니다.
  • 로그인이 필요한 모든 것. SEOgrinder는 공개 페이지만 점검합니다.

자주 하는 실수

  • 설정 화면만 보고 판단하는 것. 설정 화면은 내가 입력한 것을 보여 줄 뿐, 도착한 것을 보여 주지 않습니다.
  • 홈페이지만 확인하는 것. 글, 페이지, 아카이브, 카테고리 페이지는 서로 다른 템플릿에서 나오며, 코어의 canonical 함수도 단일 항목에서만 실행됩니다. 글 하나, 페이지 하나, 블로그 목록, 카테고리 하나를 읽으세요.
  • 출시 뒤에도 “Discourage search engines”를 켜 둔 채 두는 것. 문서에 따르면 이 설정은 noindex 태그를 쓰고, 코어 공지에 따르면 코어 사이트맵을 끕니다.
  • 태그 하나를 두 곳에서 쓰는 것. 두 번째 플러그인이나 테마가 canonical을 하나 더 추가하는 경우입니다. SEOgrinder는 서로 다른 주소를 둘 이상 지정한 페이지를 보고합니다.
  • 오래된 사본을 읽는 것. 변경할 때마다 캐시를 비우고, SEOgrinder에서는 다시 확인을 쓰세요.
  • “태그가 있다”를 “태그가 맞다”로 착각하는 것. canonical이 응답하지 않는 페이지를 가리킬 수 있고(「canonical이 접근할 수 없는 페이지를 가리킵니다」), 사이트맵에 리디렉션되는 주소가 들어 있을 수도 있습니다.

자주 묻는 질문

워드프레스 SEO 점검을 하려면 플러그인이 더 필요한가요?

아니요. 외부에서 하는 점검은 아무것도 설치하지 않습니다. curl 명령에는 터미널이, SEOgrinder에는 주소만 있으면 됩니다.

Yoast, Rank Math, All in One SEO 중 무엇을 쓰는지가 중요한가요?

점검에는 중요하지 않습니다. 점검은 내보내진 페이지를 읽을 뿐 어떤 플러그인이 썼는지는 묻지 않습니다. 각 플러그인이 제공하는 기능은 해당 wordpress.org 페이지에 나와 있고, 내 페이지에 무엇이 들어 있는지는 페이지만 보여 줍니다.

플러그인에 메타 설명을 썼는데 왜 페이지에는 없나요?

우리는 내 사이트를 볼 수 없으므로 아래는 진단이 아니라 배제해야 할 원인입니다. 오래된 캐시 사본, wp_head를 호출하지 않는 테마, 점검한 페이지와 다른 종류의 페이지에 설정된 설명, 그리고 설명을 덮어쓰는 다른 플러그인이나 테마입니다.

다음 단계

내 사이트의 글 하나를 골라 명령 네 줄이나 SEOgrinder의 무료 스캔을 실행하세요. 의도한 설정과 다른 태그부터 고치고, 캐시를 비운 뒤 다시 확인을 누르세요. 점검 항목 전체 목록은 SEO 체크리스트에 있습니다. 페이지가 Google에 아예 보이지 않는다면 위의 여섯 가지 중 robots 규칙(noindex와 robots.txt)부터 다시 읽어 보세요.

함께 읽어 보세요

블로그의 다른 글