9ml

ログイン/ログアウト

page-login.php

<?php
		
		// データの初期化
		$flag = 1;
		$errors = [];
		
		if ( isset($_POST['submit_login']) ) {
		
			// サニタイズ
			$name = sanitize_text_field($_POST['input_name']);
			$password = $_POST['input_password'];
			
			// バリデーション
			if ( empty($name) ) { $errors[] = 'ユーザー名が入力されていません'; }
			if ( empty($password) ) { $errors[] = 'パスワードが入力されていません'; }
			
			// サインオン試行
			$credential = array(
				'user_login' => $name,
				'user_password' => $password,
				'remember' => true,
			);
			$signoned = wp_signon($credential, false);
			
			// エラーチェック
			if ( is_wp_error($signoned) ) {
				echo 'LOGIN FAILED: ' . $signoned->get_error_message();
			} else {
				$flag = 2;
				wp_redirect('https://kanto-hire.com/');
				exit;
			}
		}

?>
	
<?php get_header(); ?>
	<main>
	<?php if ( $flag == 1 ) : ?>
		<form method='post' action=''>
			<input type='text' name='input_name' placeholder='ユーザー名を入力してください'>
			<input type='password' name='input_password' placeholder='パスワードを入力してください'>
			<input type='submit' name='submit_login' value='ログインする'>
		</form>
	<?php endif; ?>
	</main>
<?php get_footer(); ?>

home.php

<?php if ( is_user_logged_in() ) : ?>
    <a href="<?php wp_logout_url(); ?>">ログアウト</a>'
<?php else: ?>
    <a href="https://xxx.com/login/">ログイン</a>
    <a href="https://xxx.com/register/">アカウント作成</a>
<?php endif; ?>
ホームに戻る