여러분이 사용하고 계신 브라우저는 HTML5를 지원하지 않기 때문에 몇몇 요소가 제대로 보이도록 JScript를 사용하고 있습니다. 하지만 여러분의 브라우저 설정에서 스크립트 기능이 꺼져있으므로, 현재 페이지를 제대로 확인하시려면 스크립트 기능을 켜주셔야 합니다. 워드프레스 사용자 정보에 생년월일 추가하기
워드프레스 사용자 정보에 생년월일 추가하기
1년전 작성
1년전 수정

워드프레스 회원 페이지를 만들 때 사용자 정보에 생년월일 추가하는 방법을 알아보자.

회원제 커뮤니티 사이트를 만들어서 이용할 때, 생일자를 위한 특별한 페이지를 보여줄 수 있으니 사용자들에게 재미있는 경험을 하게 해줄 수 있을것같다.

functions.php
function userMetaBirthdayForm(WP_User $user)
{
?>
<h2>생일</h2>
    <table class="form-table">
        <tr>
            <th><label for="user_birthday">생일</label></th>
            <td>
                <input
                    type="date"
                    value="<?php echo esc_attr(get_user_meta($user->ID, 'birthday', true)); ?>"
                    name="user_birthday"
                    id="user_birthday"
                >
                <span class="description">생일을 적어주세요.</span>
            </td>
        </tr>
    </table>
<?php
}
add_action('show_user_profile', 'userMetaBirthdayForm'); // 자신의 프로필 볼 때 위 양식 추가
add_action('edit_user_profile', 'userMetaBirthdayForm'); // 다른 사용자 편집할 때 위 양식 추가
add_action('user_new_form', 'userMetaBirthdayForm'); // 새 사용자 생성할 때 위 양식 추가

function userMetaBirthdaySave($userId)
{
    if (!current_user_can('edit_user', $userId))
	{
        return;
    }
 
    update_user_meta($userId, 'birthday', $_REQUEST['user_birthday']);
}
add_action('personal_options_update', 'userMetaBirthdaySave'); // 자신의 프로필 편집
add_action('edit_user_profile_update', 'userMetaBirthdaySave'); // 다른 사용자 편집
add_action('user_register', 'userMetaBirthdaySave');</pre> // 새 사용자 생성

Mingg`s Diary
밍구
공부 목적 블로그