Function Reference/add menu

来自WordPress中文文档
跳转至: 导航搜索

wordpress.org.cn

Description

Create or add new items into the Admin bar.

This is not a function. It is a method of the $wp_admin_bar global (an instance of WP_Admin_Bar), which may not exist except during the 'admin_bar_menu' hook.

Note: The Admin Bar is replaced with the Toolbar since WordPress Version 3.3. The preferred way to add items to the toolbar is with add_node().

Initial items in the Admin Bar are($menu_id):

  • my-account-with-avatar - Dashboard, User settings
  • new-content - Short-cut to all custom post types and original ones
  • comments - Comments moderation
  • appearance - Theme selection and Widgets

Usage

%%%<?php $wp_admin_bar->add_menu( $args ) ?>%%%

Parameters

tt$args/tt
(array) (required) An array of arguments.
Default: Nonenoinclude

div class=template-description style=padding: 0 1.5em; border: 1px solid #eeeeee; background-color: #f9f9f9

Notes

This template is for standardizing how parameters look in the Function Reference and in Template Tags. Here is an example of this template being called: prenowiki检查到模板循环:模板:Parameter/nowiki/pre 检查到模板循环:模板:Parameter

The usage of this template is below: prenowiki检查到模板循环:模板:Parameter/nowiki/pre Let's take a closer look at the parameters..

name
The name of the parameter.
datatype
The datatype that should be given for this parameter when called.
  • string
  • integer
  • boolean
  • mixed
description
A short description of the parameter.
importance
Set this parameter to optional if the parameter is optional. Otherwise, do not declare this parameter—it defaults to required.
  • required
  • optional
default
If this parameter is optional, ttdefault/tt is the value that will be used if the parameter is not declared.

wordpress.org.cn /div /noinclude

Arguments

$defaults = array(
	'href' => false,
	'parent' => false, // false for a root menu, pass the ID value for a submenu of that menu.
	'id' => false, // defaults to a sanitized title value.
	'meta' => false // array of any of the following options: array( 'html' => '', 'class' => '', 'onclick' => '', 'target' => '', 'title' => '' );
);

Example

An an example of custom links for external sites:

class FacebookMenu {
  
  function FacebookMenu()
  {
      add_action( 'admin_bar_menu', array( $this, "facebook_links" ) );
  }

  /**
   * Add's new global menu, if $href is false menu is added but registred as submenuable
   *
   * $name String
   * $id String
   * $href Bool/String
   *
   * @return void
   * @author Janez Troha
   * @author Aaron Ware
   **/

  function add_root_menu($name, $id, $href = FALSE)
  {
    global $wp_admin_bar;
    if ( !is_super_admin() || !is_admin_bar_showing() )
        return;

    $wp_admin_bar->add_menu( array(
        'id'   => $id,
        'meta' => array(),
        'title' => $name,
        'href' => $href ) );
  }

  /**
   * Add's new submenu where additinal $meta specifies class, id, target or onclick parameters
   *
   * $name String
   * $link String
   * $root_menu String
   * $meta Array
   *
   * @return void
   * @author Janez Troha
   **/
  function add_sub_menu($name, $link, $root_menu, $meta = FALSE)
  {
      global $wp_admin_bar;
      if ( ! is_super_admin() || ! is_admin_bar_showing() )
          return;
    
      $wp_admin_bar->add_menu( array(
          'parent' => $root_menu,
          'title' => $name,
          'href' => $link,
          'meta' => $meta
      ) );
  }

  function facebook_links() {
      $this->add_root_menu( "Facebook", "fcbl" );
      $this->add_sub_menu( "Facebook pages", "http://www.facebook.com/pages/manage", "fcbl" );
      $this->add_sub_menu( "Facebook apps", "http://www.facebook.com/developers/apps.php", "fcbl" );
      $this->add_sub_menu( "Facebook insights", "http://www.facebook.com/insights", "fcbl" );
  }

}
add_action( "init", "FacebookMenuInit" );
function FacebookMenuInit() {
    global $FacebookMenu;
    $FacebookMenu = new FacebookMenu();
}

Change Log

Source File

add_menu() is located in onlyincludecodewp-includes/class-wp-admin-bar.php/code/onlyinclude

div class=template-description style=padding: 0 1.5em; border: 1px solid #eeeeee; background-color: #f9f9f9

Template Description

Link to the source code on http://core.trac.wordpress.org/browser/.

Parameters

  1. filename
  2. (option) path to codetag/code (version) or codetrunk/code. This option is only used for a new function.br /Default: codetrunk/code -- trunk is the latest bleeding edge development version of WordPress.

Usage

Link to the stable version: pre检查到模板循环:模板:Trac/pre

Link to trunk: pre检查到模板循环:模板:Trac/pre

/div

wordpress.org.cn.

Resources

Related Articles

模板:Toolbar Tags

includeonlydiv style=clear:both; background-color:#F7F7F7; border:1px solid #CCCCCC; color:#000000; padding:7px; margin:0.5em auto 0.5em auto; vertical-align:middle;See also index of Function Reference and index of Template Tags./div/includeonlynoinclude

Description

This Template is used by Codex:Template Messages.

Usage

pre 检查到模板循环:模板:Message /pre

Result

检查到模板循环:模板:Message

/noinclude