워드프레스에서 Polylang 번역 플러그인을 활용해 다국어 사이트를 운영하다 보면, 번역 페이지에서 일본어 발췌 길이가 길어지는 문제를 겪는 경우가 있습니다. 특히 메인 페이나 카테고리 페이지에서 화면이 가득 차 버리는 현상이 생기게 됩니다.
저 역시 이 문제 때문에 한동안 원인을 찾지 못해 헤맸는데, 최근 해외 커뮤니티와 개발자 포럼을 다 살펴보면서 일본어 발췌 길이 문제를 우회적으로 해결하는 방법을 알게 되었습니다.
그래서 저 같은 문제로 고민 중이라면 아래 정리하는 방법을 한 번 적용해 보시기 바랍니다.
목차
일본어 발췌 길이 문제가 발생하는 이유
워드프레스의 기본 발췌 기능은 공백(띄워쓰기)을 기준으로 글자를 자르는 구조입니다. 하지만 일본어는 문장 구조상 띄어쓰기를 거의 사용하지 않기 때문에, 발췌 길이가 정상적으로 제한되지 않고 의도보다 훨씬 길게 출력되는 경우가 많습니다.
이 문제가 특히 잘 드러나는 상황이 바로 Polylang을 이용한 일본어 번역 페이지입니다.
Polylang 일본어 설정 확인

Polylang에서 언어를 추가할 때 다음과 같은 항목을 입력하게 됩니다.
- Locale
- Language code
일본어를 기본 언어 코드는 ja인데, 일부 사용자들은 관리 편의상 이 값을 다른 코드로 변경해 두는 경우가 있습니다. 이 경우 테마나 워드프레스 내부 함수에서 일본어를 정상적인 언어로 인식하지 못하면서 일본어 발췌 길이 문제가 더 심하게 나타날 수 있습니다.
하지만 이미 많은 일본어 번역 글을 작성한 상태라면 언어 코드를 다시 변경하는 것은 리디렉션, URL 구조, SEO 측면에서 안 좋을 수 있습니다. 그래서 설정을 되돌리지 않고도 해결할 수 있는 코드 방식의 해결 방법을 사용하는 것이 좋은 선택입니다.
functions.php 코드에 추가 방법
function custom_short_excerpt($excerpt) {
$limit = 200;
if (strlen($excerpt) > $limit) {
return substr($excerpt, 0, strpos($excerpt, ' ', $limit));
}
return $excerpt;
}
add_filter('the_excerpt', 'custom_short_excerpt');
위의 코드는 일본 발췌 길이를 문자 수 기준으로 직접 제한해 주는 방식입니다. 이 코드를 추가하면 일본어처럼 띄어쓰기가 없는 언어에서도 발췌 길이가 과도하게 늘어나는 현상을 줄일 수 있습니다.

코드를 추가하는 곳은 워드프레스 관리자에서 모양 > 테마 편집기로 들어간 후에 오른쪽 테마 파일 목록에서 functions.php를 선택하시면 됩니다.

functions.php 테마 파일로 들어갔다면 위에 있는 일본어 발췌 길이 제한하는 코드를 추가한 후에 파일 업데이트를 하시면 됩니다. 테마 파일에 업데이트를 할 경우에는 자식 테마를 사용하는 것이 좋습니다.
자식 테마가 아닐 경우 테마가 업데이트 될 경우 추가한 코드가 사라지게 됩니다. – generate child theme(자식 테마 만드는 플러그인)
코드 추가 시 주의사항
코드는 관리자 화면에서 다음 경로로 이동해 추가할 수 있습니다.
- 외모 → 테마 파일 편집기 → functions.php
파일 맨 아래 부분에 코드를 붙여 넣으면 되며, 작업 자체는 어렵지 않습니다. 다만, 실수로 기존 코드를 수정하거나 삭제하면 다음과 같은 문제가 발생할 수 있습니다.
- 사이트 오류 화면 출력
- 사이트맵(Sitemap) 비정상 작동
- 페이지 일부 미출력
그래서 코드 추가 후에는 반드시 사이트가 정상적으로 열리는지, 사이트맵이 정상 생성되는지를 함께 확인해야 합니다.
일본어 발췌 길이 적용 후기
위의 코드를 적용한 결과 일본어 번역 페이지로 이동하면 이전처럼 글이 화면을 가득 채우지 않고, 설정한 길이 기준으로 깔끔하게 잘려서 표시되는 것을 확인할 수 있었습니다.
메인 페이지, 카테고리 페이지, 검색 결과 화면에서도 전체 레이아웃이 훨씬 안정적으로 보였습니다. 일본어 발췌 길이 문제 때문에 테마나 플러그인을 바꿀까 고민하셨다면, 위에 소개한 코드를 먼저 적용해 보는 것을 추천합니다.


