29 ноября 2012

Как очистить экран профиля пользователя WordPress

wordpress советы
Код для очистки профиля пользователя WordPress. Убирается всё. Пояснения в комментариях. Если закрывать ремарками нужные части, то они появятся в профиле

<?php

$AdminProfile = new AdminProfileClass(); 
class AdminProfileClass {

	/**
	* Constructor
	*
	* @since 1.0
	*
	* @return void
	*/	
	public function __construct() {

		add_action('admin_head', array( &$this,   'start_remove_opts') );
		add_action('admin_footer', array( &$this, 'end_remove_opts') );	
	
		add_action('admin_menu', array( &$this, 'on_admin_menu') );

		add_action('admin_head', array( &$this, 'on_admin_head') );

	}

	
	function remove_opt_start($adddiv) {
		// убираем заголовки разделов
		$gettitle 	= array();
		$gettitle[] = '#<h3>Personal Options</h3>#';
		$gettitle[] = '#<h3>Персональные настройки</h3>#';
		
		$gettitle[] = '#<h3>Name</h3>#';
		$gettitle[] = '#<h3>Имя</h3>#';
		
		$gettitle[] = '#<h3>Contact Info</h3>#';
		$gettitle[] = '#<h3>Контакты</h3>#';
		
		$gettitle[] = '#<h3>About Yourself</h3>#';
		$gettitle[] = '#<h3>Обо мне</h3>#';
		
		$replacement 	= array();
		$replacement[]  = '<h3 class="hidden">Personal Options</h3>';
		$replacement[]  = '<h3 class="hidden">Персональные настройки</h3>';
		
		$replacement[]  = '<h3 class="hidden">Name</h3>';
		$replacement[]  = '<h3 class="hidden">Имя</h3>';
		
		$replacement[]  = '<h3 class="hidden">Contact Info</h3>';
		$replacement[]  = '<h3 class="hidden">Контакты</h3>';
		
		$replacement[]  = '<h3 class="hidden">About Yourself</h3>';
		$replacement[]  = '<h3 class="hidden">Обо мне</h3>';
		
		$adddiv 	= preg_replace($gettitle, $replacement, $adddiv, 1);

		// убираем таблицы разделов		
		$gettitle 	= array('#<table class="form-table">#');
		$adddiv 	= preg_replace($gettitle, '<table class="form-table hidden">', $adddiv, -1);
		
		// убираем кнопку submit	
		$gettitle 	= array('#<p class="submit">#');
		$adddiv 	= preg_replace($gettitle, '<p class="submit hidden">', $adddiv, 1);

		return $adddiv;
	}

	function start_remove_opts() { 
		ob_start( array( &$this, 'remove_opt_start') ); 
	}

	function end_remove_opts() {
		ob_end_flush(); 
	}

	/**
	*
	*
	* @since 1.0
	*
	* @return
	*/		
	function on_admin_menu() {
	
		// убираем главное меню
	
		global $menu;
		$restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Profile'), __('Settings'), __('Comments'), __('Plugins'));
		end ($menu);
		while (prev($menu)) {
			$value = explode(' ',$menu[key($menu)][0]);
			if( in_array($value[0] != NULL ? $value[0]:"" , $restricted) ) { 
				unset($menu[key($menu)]);
			}
		}	// endwhile
		
	}

	/**
	*
	*
	* @since 1.0
	*
	* @return
	*/			
	function on_admin_head() {
	
		// убираем кнопку помощь
		$screen = get_current_screen();
		$screen->remove_help_tabs();

		// убираем админбар
		echo '<style>#wpadminbar {display:none;} #wpcontent{margin-top:-28px;}</style>';  		
	
	}

}

Статьи по теме
Статья оказалась полезной? Подпишись на RSS рассылку или следуй за мной на твиттере @wpstarter или по этой ссылке wpstarter

Оставьте комментарий

Обведите фигуру по линии:

Ставим WordPress на локальном копьютере