ホームページ >CMS チュートリアル >&#&プレス >Web サイトを表示するために WordPress ログインを実装する

Web サイトを表示するために WordPress ログインを実装する

藏色散人
藏色散人転載
2021-02-12 10:14:035313ブラウズ

WordPress の次のチュートリアル コラムでは、WordPress でウェブサイトを閲覧するためのログイン方法を紹介します。困っている友人の役に立てば幸いです。

Web サイトを表示するために WordPress ログインを実装する

Web サイトのコンテンツが登録ユーザーのみが閲覧する必要があり、他のユーザーには表示されず、ブラウザーがログインせずにログイン登録ページに直接ジャンプする場合は、これを実現するには、次のコードを使用できます。

次のコードを現在のテーマ関数テンプレート function.php に追加します。

コード 1. ログインせずに Web サイトにアクセスし、デフォルトのログイン ページに直接ジャンプします。

add_action( 'wp', 'login_access' );
function login_access() {
global $pagenow;
if( !is_user_logged_in() && $pagenow != 'wp-login.php' )
auth_redirect();
}

コード 2 は Web サイトにアクセスするためにログインしていません。302

add_action( 'template_redirect', 'zm_force_login' );
function zm_force_login() {
// 判断登录
if ( ! is_user_logged_in() ) {
// 判断HTTPS
$schema = isset( $_SERVER['HTTPS'] ) && 'on' === $_SERVER['HTTPS'] ? 'https://' : 'http://';
// 判断站内链接
$url = $schema . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
// 添加白名单
$allowed = apply_filters_deprecated( 'zm_force_login_whitelist', array( array( '允许访问的链接1', '允许访问链接2' ) ), '1.0', 'zm_force_login_bypass' );
$bypass = apply_filters( 'zm_force_login_bypass', in_array( $url, $allowed ), $url );
if ( preg_replace( '/\?.*/', '', $url ) !== preg_replace( '/\?.*/', '', wp_login_url() ) && ! $bypass ) {
// 防止缓存
nocache_headers();
// 跳转的页面链接
$page = '跳转到的页面链接';
// 执行302跳转
wp_safe_redirect( $page, 302 );
// 跳转到默认登录页面
// wp_safe_redirect( wp_login_url(), 302 );
exit;
}
}
}

でカスタマイズされたページにジャンプできます。 注: ジャンプ ページのリンクは同時にホワイトリストに追加する必要があります。そうしないと、無限ループが形成されます。

以上がWeb サイトを表示するために WordPress ログインを実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はzmingcx.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。