0

wp-admin ページをサブドメインに制限するには? WordPress サイトに複数のドメインがありsubdomain.websitename.php/wp-admin/、404 ページにリダイレクトする必要があります。

このために、このコードを使用しましたが、リダイレクトされません。

# wp-admin 404 for subdomains

RewriteCond %{HTTP_HOST} !^(www\.)?websitename.com/wp-admin/$ [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)\.websitename.com/wp-admin/$ [NC]
RewriteRule ^$ /%1.htm [L]
4

1 に答える 1

0

Must Use プラグインを作成admin_headし、特定のユーザー (少なくとも1 人がサイトを管理できるはずですよね?) に接続してチェックし、それがサブサイトであるかどうかを確認します。

条件が満たされていない場合は、リダイレクトを行います。

<?php
/**
 * Plugin Name: Block Access to Sub-sites WP-Admin
 * Plugin URI: http://stackoverflow.com/q/16363207/1287812
 * Version: 1.0
 * Author: Rodolfo Buaiz
 * Author URI: http://wordpress.stackexchange.com/users/12615/brasofilo
 */

add_action( 'admin_head', 'b5f_prevent_multisite_wp_admin' );

function b5f_prevent_multisite_wp_admin() 
{
    // Allow access only to one user, adjust the ID bellow
    $current_user = wp_get_current_user();  
    if ( 2 == $current_user->ID ) 
        return;

    // Allow access only to main site WP-Admin
    if( is_main_site() )
        return;

    // User not allowed and site is a sub-site
    // Redirect to front page of current site
    wp_redirect( site_url() );
    die();
}

site_url()機能のドキュメントを確認network_site_url()し、特定のページ (サブドメインまたはメイン サイトから) へのリダイレクトを調整します。

于 2013-05-06T18:36:06.593 に答える