Как ограничить число регистраций?
И чтобы боты тоже не могли региться. А то боты могут обходить запрет на регистрацию даже при убранной галке в настройках Общие.
используем add_filter('auth_redirect_scheme','stop_redirect',9999); //проверяем если пользователь не авторизован, отдаем, к примеру, 404 страницу при обращении на .../wp-admin или .../admin вместо редиректа на страницу авторизации
if(is_multisite()&&!get_option('users_can_register')){add_action('init','функция');}
add_filter('site_url','функция',10,3);//подменяем wp-login на свой. Аналогично с wp-comments-post
add_filter('mod_rewrite_rules','функция'); //рулим через .htaccess Дефолтный wp-login, на свою кастомную после смыны. Дефолтный wp-login блочим тут же, либо через настройки веб сервера, например Nginx. Аналогично с wp-comments-post
location ~ (xmlrpc|wp-comments-post|wp-config|wp-config-sample|wp-login)\.php$ {
error_page 404 /my_super_404.html;
return 404;
}
add_action('register_form','функция',10,1);
add_action('login_form','функция');
add_action('login_enqueue_scripts','функция');
add_filter('wp_authenticate_user','функция',10,2);
add_filter('registration_errors','функция');
add_filter('login_headerurl','функция');
add_filter('login_headertext','функция');
add_action('login_footer','функция');
add_filter('login_redirect','функция');
add_action('wp_logout','функция');
add_action('comment_form','функция');
add_action('pre_comment_on_post','функция',0);
add_action('init','функция');
add_filter('xmlrpc_enabled','__return_false');
add_filter('the_generator','__return_empty_string');
remove_action('wp_head','rsd_link');//Используется различными блог-клиентами или веб-сервисами для публикации/изменения записей в блоге.
remove_action('wp_head','feed_links',2);
remove_action('wp_head','feed_links_extra',3);
// remove_action('wp_head','rel_canonical');//Убирает канонические линки
remove_action('wp_head','wlwmanifest_link');// Используется блог-клиентами, а вернее лишь одним из них - Windows Live Writer. Не используете WLW - удаляйте.
remove_action('wp_head','wp_resource_hints',2);//dns-prefetch
remove_action('wp_head','wp_shortlink_wp_head');// Убирает короткую ссылку к текущей странице
remove_action('wp_head','wp_oembed_add_discovery_links');//alternate - application/json+oembed и alternate - text/xml+oembed
remove_action('wp_head','rest_output_link_wp_head',10,0);//alternate - application/json и rel api.w.org
remove_action('template_redirect','rest_output_link_header',11,0);//че-то с рест апи
$vab_prot=!empty($_SERVER['HTTP_X_FORWARDED_PROTO'])?$_SERVER['HTTP_X_FORWARDED_PROTO']:'http';
define('WP_CONTENT_FOLDERNAME','my-super-content');
define('WP_CONTENT_DIR',ABSPATH . WP_CONTENT_FOLDERNAME) ;
define('WP_SITEURL',$vab_prot.'://'.$_SERVER['HTTP_HOST'].'/');
define('WP_CONTENT_URL',WP_SITEURL . WP_CONTENT_FOLDERNAME);
add_filter('body_class','функция');