워드프레스 댓글 양식 작성자 이름, 이메일, 웹사이트 URL 등 변경하기

워드프레스 댓글 양식 (입력 양식)은 국내 블로그 서비스에서 사용하는 양식과 다른 차이가 있습니다. 워드프레스가 외국어 기반으로 만들어지고 외국 문화를 통해 발전되어서 그런지 이메일을 기본으로 입력 받습니다. 반면 한국은 아이디 기반이다 보니 이메일을 입력하는 것을 꺼려 합니다. 이 때문에 보다 원활한 소통을 위해선 워드프레스 댓글 양식을 조금 변경해 주어야 합니다.

워드프레스 댓글 양식

워드프레스 댓글 양식 (이름, 이메일, 웹사이트)과 안내 문구 등은 소스 코드를 이용하여 변경할 수 있습니다. PHP, HTML, CSS 등을 다룰 줄 안다면 원하는 대로 변경할 수 있습니다.

 

워드프레스 댓글 양식 (제너레이트프레스 테마)

제네레이트프레스 테마 워드프레스 댓글 양식

제너레이트프레스 테마 댓글 양식으로 설명하겠습니다. 기본 설정 상태의 워드프레스 댓글 양식은 작성자 이름, 이메일 두 가지 항목을 필수로 입력 받습니다. 웹사이트 URL은 옵션입니다.

옵션인 웹사이트 URL 입력 항목은 스팸봇이 선호합니다. 자신의 블로그 링크나 사이트 링크를 남길 수 있기 때문에 스팸봇과 스패머가 좋아합니다.

필수로 입력 받는 이메일 항목은 방문자가 꺼려합니다. 스팸 메일을 보내지 않을까 걱정스럽기 때문인데요. 정상적인 워드프레스 운영자들은 스팸 메일을 보내지 않을 것입니다. 저 같은 경우는 귀찮아서 댓글 확인도 잘 하지 않는 편입니다.

여하튼 이 조금은 비정상적인 워드프레스 댓글 양식은 운영자가 원하는 입력 양식으로 변경할 수 있습니다. 입력 양식 뿐만 아니라 안내 문구, 입력 창의 위치 및 크기 등도 원하는 대로 설정할 수 있습니다.

 

워드프레스 댓글 설정

필수 입력 양식인 이름과 이메일은 워드프레스 관리 페이지의 토론 설정에서 비활성 시킬 수 있습니다.

  1. 워드프레스 관리자 페이지에서 설정 메뉴 하위의 토론을 누릅니다.
  2. 토론 설정 페이지가 열리면 기타 댓글 설정의 ‘댓글 글쓴이는 이름과 이메일을 입력해야 합니다’ 체크를 해제 시킵니다.
  3. 페이지 하단의 변경 사항 버튼을 눌러 변경 내용을 저장합니다.

변경 내용을 저장하면 이후부터는 워드프레스 댓글 양식 중 이름과 이메일을 입력하지 않더라도 댓글을 작성할 수 있습니다.

이메일과 댓글 작성 자 이름을 필수 입력 양식에서 제외했다면 페이지에서 보이지 않도록 제거해줍니다.

워드프레스 소스 코드 적용

소스 코드는 크게 3가지 방식으로 적용 시킬 수 있습니다.

  • 테마 파일에 직접 소스 삽입
  • 차일드 테마 파일에 소스 삽입
  • 제너레이트프레스 후크 기능으로 소스 삽입

테마 파일을 수정할 때는 가급적 차일드 테마를 이용하는 것이 좋습니다. 관리 편의성도 좋긴 하지만 자원 낭비를 최소화 할 수 있기 때문에 자식 테마를 만들어 사용하는 것이 좋습니다.

워드프레스 댓글 양식 소스 코드 적용한 후 파일 업데이트 버튼 클릭

  1. 워드프레스 관리 페이지에서 외모 하위의 테마 파일 편집기를 클릭합니다.
  2. 테마 편집 페이지가 열리면 우측 테마 파일 목록에서 functions.php 파일을 선택합니다.
    • 이 때 테마는 자식 테마의 functions.php 파일을 이용할 것을 권장합니다.
    • 제너레이트프레스 테마의 경우 GeneratePress Child: functions.php 파일을 이용하면 됩니다.
  3. 하단에 소스 코드를 추가하고 파일 업데이트 버튼을 클릭합니다.

소스 코드가 적용되면 워드프레스 댓글 양식, 문구 등은 원하는 형태로 변경될 것입니다.

제너레이트프레스 테마용 소스 코드

워드프레스 댓글 양식 등은 원하는 것만 수정할 수 있습니다. 아래 소스 코드 중 적용하고 싶은 것만 적용하면 됩니다.

다만 다른 테마에서의 정상 작동 여부는 확인하지 않았습니다. 제가 사용하고 있는 제너레이트프레스 테마 유료 버전에서만 확인했습니다.

Leave a Comment 변경

// gp Leave a Comment 변경
add_filter( 'generate_leave_comment','tu_custom_leave_comment' );
function tu_custom_leave_comment() {
    return '댓글 남기기';
}

위의 소스를 적용하면 댓글 요소의 Leave a Comment 부분을 ‘댓글 남기기’ 문구로 표시되게 할 수 있습니다. ‘댓글 남기기’ 문구는 원하는 문구로 수정하여 삽입하면 됩니다.

댓글 입력란의 안내 문구 표시

// gp 댓글 입력란 안내 문구 표시
 function placeholder_comment_form_field($fields) {
    $replace_comment = __('욕설, 비방, 비아냥, 음란, 사행성, 스팸, 광고 댓글은 필터링 또는 삭제됩니다. 본문과 무관한 내용의 댓글에는 답글이 없을 수 있습니다.', 'generatepress');
     
    $fields['comment_field'] = '<p class="comment-form-comment"><label for="comment">' . _x( '', 'noun' ) .
    '</label><textarea id="comment" name="comment" cols="40" rows="3" placeholder="'.$replace_comment.'" aria-required="true"></textarea></p>';
    
    return $fields;
 }
add_filter( 'comment_form_defaults', 'placeholder_comment_form_field', 20 );

위의 소스를 적용하면 댓글 입력란에 ‘욕설, 비방 … …’ 안내 문구가 표시되게 할 수 있습니다. 문구는 원하는 안내 문구로 변경하여 삽입하면 됩니다.

rows=”3″ 의 숫자를 변경하면 댓글 입력란의 높이를 조절할 수 있습니다.

댓글 작성자 입력란 안내 문구 수정

// gp 댓글 작성자 입력란 안내 문구 표시
add_filter( 'comment_form_default_fields', function($fields){

	$commenter = wp_get_current_commenter();
	$required = get_option( 'require_name_email' );

	$fields['author'] = sprintf(
		'<label for="author" class="screen-reader-text">%1$s</label><input placeholder="%1$s%3$s" id="author" name="author" type="text" value="%2$s" size="30" />',
		esc_html__( '이름 또는 별명 입력', 'generatepress' ),
		esc_attr( $commenter['comment_author'] ),
		$required ? ' *' : ''
	);

	return $fields;

}, 20, 1 );

위 소스를 적용하면 댓글 작성자 입력란에 표시되는 NAME를 ‘이름 도는 별명 입력’으로 표시되게 할 수 있습니다. 표시 문구는 원하는 대로 수정하여 삽입하면 됩니다.

댓글 작성자 웹사이트 URL 및 이메일 입력란 제거

// gp 댓글 입력란의 이메일 및 웹사이트 URL 제거
add_action( 'after_setup_theme', 'tu_add_comment_url_filter' );
function tu_add_comment_url_filter() {
    add_filter( 'comment_form_default_fields', 'tu_disable_comment_url', 20 );
}

function tu_disable_comment_url($fields) {
    unset($fields['url']);
    unset($fields['email']);
    return $fields;
}

위의 코드를 적용하면 워드프레스 댓글 입력 양식 중 웹사이트 URL과 이메일 입력란이 표시되지 않습니다.

이 소스를 적용할 시에는 위에서 설명한 워드프레스 댓글 설정을 변경해 주어야 합니다. 테마 공식 사이트에서도 안내하는 방법입니다.

댓글 쿠키 관련 안내 문구 및 체크 박스 제거

// gp 쿠키 관련 안내 문구 및 체크 박스 제거
add_filter( 'comment_form_default_fields', 'tu_comment_form_hide_cookies_consent' );
function tu_comment_form_hide_cookies_consent( $fields ) {
 unset( $fields['cookies'] );
 return $fields;
}

위의 소스 코드를 삽입하면 댓글 입력란 아래에 표시되는 ‘다음 번 댓글 작성… ‘ 안내 문구와 체크 박스를 표시 되지 않게 할 수 있습니다.

댓글 등록 버튼 문구 변경

// gp 댓글 등록 버튼 문구 변경
add_filter( 'generate_post_comment', 'tu_generate_post_comment' );
function tu_generate_post_comment()
{ 
    return '댓글 등록';
}

Post Comment 버튼의 문구를 ‘댓글 등록’으로 표시되게 할 수 있습니다.

댓글 양식, 안내 문구 변경 결과물

한글화 및 사용자 설정한 워드프레스 댓글 양식

기본 필수 입력 항목인 이름 및 이메일을 비활성 시킨 후 이메일과 웹사이트 URL 입력란을 제거한 워드프레스 댓글 양식입니다. 내용과 이름 입력하고 등록 버튼 클릭하면 댓글이 등록됩니다.

댓글 입력란 영역에도 원하는 안내 문구를 설정할 수 있습니다. 원한다면 색을 사용하거나 배경 이미지를 설정할 수도 있습니다.

Leave a Comment