워드프레스 기본제공 로그인 페이지를 커스텀 로그인페이지로 변경하기

위의 스크린샷에 있는 Log in 링크는 워드프레스에서 기본제공되는 Log in 블럭을 사용하였다. 이 Log in 링크는 디폴트 로그인 페이지로 연결된다.

워드프레스 기본 로그인 페이지

이렇게 보이는데 아래 사진처럼 커스텀 로그인 페이지로 바뀌어 나오게 해보자.

커스텀 로그인 페이지

시도 1. function.php 파일 수정

child-theme의 function.php에 아래의 코드를 추가한다. ‘login-url’부분을 본인의 로그인 페이지로 변경하면 된다.

<!-- redirect to custom login page -->
<?php
function redirect_wp_login_to_custom_url() {
  wp_redirect(home_url('login-url'));
  exit();
}
add_action('login_form_login', 'redirect_wp_login_to_custom_url');
?>

위의 코드를 추가하였을 때 사용자 환경에서는 의도한대로 잘 동작하였다. 그러나 어드민 패널에서 문제가 발생했다. 플러그인 추가 불가, 미디어 추가 불가, 테마수정 불가 등등… 그래서 다른방법을 찾아보았다.

시도 2. .htaccess파일에서 redirect하기

워드프레스의 Log in 링크는 /wp-login.php으로 연결된다. 이것을 /login경로로 리다이랙트하면 해결되지 않을까 하여 아래의 redirect 코드를 .htaccess파일에 추가하였다.

RewriteEngine On
RewriteRule ^wp-login\.php$ http://localhost:8888/midas/login [R=301,L]

이 방법도 실패하였다. 문제는, Log out을 클릭하면 이것조차 /login으로 리다이랙트되어 로그아웃이 동작하지 않는것이었다. wp-login.php파일이 복잡한 기능을 하고있어 단순히 리다이랙트만 시키면 고장이 나는것 같다.

시도 3. 플러그인 사용

https://onemco.com/forum/d/61-redirect-wp-loginphp-to-another-page

이곳에서 소개해준 “Theme My Login”플러그인을 사용하였다.

설치하니 원하는대로 동작한다..!! 

By dororok

Leave a Reply

Your email address will not be published. Required fields are marked *