워드프레스 회원 페이지를 만들 때 사용자 정보에 생년월일 추가하는 방법을 알아보자.
회원제 커뮤니티 사이트를 만들어서 이용할 때, 생일자를 위한 특별한 페이지를 보여줄 수 있으니 사용자들에게 재미있는 경험을 하게 해줄 수 있을것같다.
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> // 새 사용자 생성