[Решено] Как редактировать wpadminbar

Тема в разделе "Wordpress", создана пользователем SergAgent, 17 окт 2013.

Статус темы:
Закрыта.
  1. SergAgent

    SergAgent

    Регистрация:
    6 фев 2013
    Сообщения:
    119
    Симпатии:
    3
    Хотел бы добавить пару ссылок в wpadminbar, где находится его код?
     
  2. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    SergAgent, я уже вроде где на форуме бросал ссылка на плагин AG Custom Admin - там можно все кастомизировать от админа -

    Ну и добавить ссылки в менюшку - там это тоже есть.
     
    SergAgent нравится это.
  3. SergAgent

    SergAgent

    Регистрация:
    6 фев 2013
    Сообщения:
    119
    Симпатии:
    3
    там анг язык, а я в нем не бум бум совсем, а переводить этот плагин дяд не хочет.
     
  4. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    SergAgent, тогда можно добавить функцию в файл functions.php:
    PHP:
    function mytheme_admin_bar_render() {
        global 
    $wp_admin_bar;
        
    $wp_admin_bar->add_menu( array(
            
    'parent' => 'new-content'// use 'false' for a root menu, or pass the ID of the parent menu
            
    'id' => 'new_media'// link ID, defaults to a sanitized title value
            
    'title' => __('Media'), // link title
            
    'href' => admin_url'media-new.php'), // name of file
            
    'meta' => false // array of any of the following options: array( 'html' => '', 'class' => '', 'onclick' => '', target => '', title => '' );
        
    ));
    }
    add_action'wp_before_admin_bar_render''mytheme_admin_bar_render' );
    А еще можно добавлять и подменю (submenu), тогда нужно использовать вот этот код:
    PHP:
    <?php

    add_action
    ('admin_bar_menu''add_toolbar_items'100);
    function 
    add_toolbar_items($admin_bar){
        
    $admin_bar->add_menu( array(
            
    'id'    => 'my-item',
            
    'title' => 'My Item',
            
    'href'  => '#',
            
    'meta'  => array(
                
    'title' => __('My Item'),           
            ),
        ));
        
    $admin_bar->add_menu( array(
            
    'id'    => 'my-sub-item',
            
    'parent' => 'my-item',
            
    'title' => 'My Sub Menu Item',
            
    'href'  => '#',
            
    'meta'  => array(
                
    'title' => __('My Sub Menu Item'),
                
    'target' => '_blank',
                
    'class' => 'my_menu_item_class'
            
    ),
        ));
        
    $admin_bar->add_menu( array(
            
    'id'    => 'my-second-sub-item',
            
    'parent' => 'my-item',
            
    'title' => 'My Second Sub Menu Item',
            
    'href'  => '#',
            
    'meta'  => array(
                
    'title' => __('My Second Sub Menu Item'),
                
    'target' => '_blank',
                
    'class' => 'my_menu_item_class'
            
    ),
        ));
    }

    ?>
    второе и третье $admin_bar->add_menu добавляет подменю в первое, а параметр parent parameter нужно установить как id первого $admin_bar->add_menu, (в коде это: my-item).
     
    SergAgent нравится это.
  5. SergAgent

    SergAgent

    Регистрация:
    6 фев 2013
    Сообщения:
    119
    Симпатии:
    3
    Спасибо, то что надо, без изменения оригинальных файлов.
    Но все же интересно где находится этот wpadminbar
     
  6. Bnopen

    Bnopen Команда форума

    Регистрация:
    3 мар 2013
    Сообщения:
    1.264
    Симпатии:
    534
    SergAgent, wp-includes/class-wp-admin-bar.php
     
    SergAgent нравится это.
  7. SergAgent

    SergAgent

    Регистрация:
    6 фев 2013
    Сообщения:
    119
    Симпатии:
    3
    сделал вот так
    PHP:
    <?php

    add_action
    ('admin_bar_menu''add_toolbar_items'100);
    function 
    add_toolbar_items($admin_bar){
        
    $admin_bar->add_menu( array(
            
    'id'    => 'my-item',
            
    'title' => 'Форум',
            
    'href'  => '#',
            
    'meta'  => array(
                
    'title' => __('My Item'),         
            ),
        ));
        
    $admin_bar->add_menu( array(
            
    'id'    => 'my-sub-item',
            
    'parent' => 'my-item',
            
    'title' => 'Главная форума',
            
    'href'  => 'http://adt.by/forum/index.php',
            
    'meta'  => array(
                
    'title' => __('Главная форума'),
                
    'target' => '_blank',
                
    'class' => 'my_menu_item_class'
            
    ),
        ));
        
    $admin_bar->add_menu( array(
            
    'id'    => 'my-second-sub-item',
            
    'parent' => 'my-item',
            
    'title' => 'Админка форума',
            
    'href'  => 'http://adt.by/forum/index.php?action=admin',
            
    'meta'  => array(
                
    'title' => __('Админка форума'),
                
    'target' => '_blank',
                
    'class' => 'my_menu_item_class'
            
    ),
        ));
    }

    ?>
     
    $iD нравится это.
Статус темы:
Закрыта.