2013-10-10 3 views
1

Я попытался заставить раздел панели Wordpress приветствовать сообщение для всех пользователей и не удалось. У кого-нибудь есть функция, которая заставляет панель мониторинга подписчиков при входе в систему?Wordpress Functions Force Dashboard для всех пользователей

// Redirect admin to the dashboard and other users elsewhere 
add_filter('login_redirect', 'my_login_redirect', 10, 3); 

function my_login_redirect($redirect_to, $request, $user) { 
    // Is there a user? 
    if (is_array($user->roles)) { 
     // Is it an administrator? 
     if (in_array('administrator', $user->roles)) 
      return home_url('/wp-admin/'); 
     else 
      return home_url(); 
      // return get_permalink(83); 
    } 
} 
+0

Я искал здесь и попробовал некоторые функции не повезло. Спасибо Brasofilo за ваше время: http://codex.wordpress.org/Dashboard_Widgets_API#Advanced%3a_Forcing_your_widget_to_the_top –

+0

// Перенаправление администратора на панель мониторинга и других пользователей в другом месте add_filter ('login_redirect', 'my_login_redirect', 10, 3); function my_login_redirect ($ redirect_to, $ request, $ user) { // Есть ли пользователь? if (is_array ($ user-> role)) { // Это администратор? if (in_array ('administrator', $ user-> role)) return home_url ('/ wp-admin /'); Остальные return home_url(); // return get_permalink (83); } } –

+0

Вы можете отредактировать вопрос при необходимости. Код здесь не читается в комментариях. – brasofilo

ответ

0

Вы должны проверить, если $user установлен, а затем, если это массив. Это предотвращает PHP-уведомления, если WP_DEBUG включен.

И затем, использовать функции site_url() и admin_url() установить переадресацию:

add_filter('login_redirect', 'login_redirect_so_19305904', 10, 3); 

function login_redirect_so_19305904($redirect_to, $request, $user) 
{ 
    if (isset($user->roles) && is_array($user->roles)) 
    { 
     if (in_array('administrator', $user->roles)) 
      return admin_url('edit.php'); // Goes to example.com/wp-admin/edit.php 
     else 
      return site_url('about'); // Goes to example.com/about/ 
    } 
    return $redirect_to; 
} 
+0

Спасибо SEE ABOVE Я отредактировал код, и он работает Отлично, спасибо большое. –

+0

Джон, вам не нужно добавлять решение к Вопросу. Может быть, вы должны это прочитать: [Как принимает ответ?] (Http://meta.stackexchange.com/q/5234/185667) – brasofilo

+0

Я не могу голосовать, так как я новичок. Кажется, хотя мне нужно 15 очков. Спасибо за информацию снова –

Смежные вопросы