Agrega una página de menú de nivel superior.
Descripción
Esta función tiene una capacidad que se utilizará para determinar si se incluye o no una página en el menú.
La función que está conectada para manejar la salida de la página debe verificar que el usuario también tenga la capacidad requerida.
Parámetros
- $ page_title
-
(cuerda)(Requerido)El texto que se mostrará en las etiquetas de título de la página cuando se seleccione el menú.
- $ menu_title
-
(cuerda)(Requerido)El texto que se utilizará para el menú.
- $ capacidad
-
(cuerda)(Requerido)La capacidad requerida para que este menú se muestre al usuario.
- $ menu_slug
-
(cuerda)(Requerido)El nombre de la barra para hacer referencia a este menú. Debe ser único para esta página de menú y solo debe incluir caracteres alfanuméricos en minúscula, guiones y guiones bajos para que sea compatible con sanitize_key ().
- $ función
-
(invocable)(Opcional)La función que se llamará para generar el contenido de esta página.
Valor por defecto: ”
- $ icon_url
-
(cuerda)(Opcional)La URL del icono que se utilizará para este menú.
- Pase un SVG codificado en base64 utilizando un URI de datos, que se coloreará para que coincida con el esquema de color. Esto debería comenzar con ‘data: image / svg + xml; base64,’.
- Pase el nombre de una clase auxiliar de Dashicons para usar un icono de fuente, por ejemplo, ‘dashicons-chart-pie’.
- Pase ‘none’ para dejar div.wp-menu-image vacío para que se pueda agregar un icono a través de CSS.
Valor por defecto: ”
- $ posición
-
(En t)(Opcional)La posición en el orden del menú debe aparecer este elemento.
Valor predeterminado: nulo
Regreso
(cuerda) El hook_suffix de la página resultante.
Más información
Notas
- Nota IMPORTANTE: Desde WordPress 4.4, no necesita preocuparse por hacer que el número de posición sea único para evitar conflictos. Ver ticket de trac # 23316 para más información.
- Si se encuentra con el error “No tiene permisos suficientes para acceder a esta página”, significa que se ha conectado demasiado pronto. El gancho que debes usar es admin_menu.
- Si solo desea mover los elementos del menú de administración existentes a diferentes posiciones, puede usar el admin_menu gancho para desarmar elementos de menú de sus posiciones actuales en el global $ menú y $ submenú variables (que son matrices) y restablecerlas en otra parte de la matriz.
- Esta función tiene una ‘capacidad’ (ver Funciones y capacidades) que se utilizará para determinar si una página está incluida o no en el menú. La función que está conectada para manejar la salida de la página debe verificar que el usuario también tenga la ‘capacidad’ requerida.
- Si está utilizando el API de configuración para guardar datos, y necesita que el usuario sea otro que el administrador, deberá modificar los permisos a través del enlace option_page_capability _ $ option_group, dónde $ option_group es lo mismo que option_group en register_setting(). Revisar la API de configuración.
Ejemplo que permite a un editor guardar datos:
// Register settings using the Settings API functionwpdocs_register_my_setting()register_setting('my-options-group','my-option-name','intval');add_action('admin_init','wpdocs_register_my_setting');// Modify capabilityfunctionwpdocs_my_page_capability($capability)return'edit_others_posts';add_filter('option_page_capability_my-options-group','wpdocs_my_page_capability');
Estructura del menú
Predeterminado: parte inferior de la estructura del menú
- 2 – Tablero
- 4 – Separador
- 5 – Publicaciones
- 10 – Medios
- 15 – Enlaces
- 20 – Páginas
- 25 – Comentarios
- 59 – Separador
- 60 – Apariencia
- 65 – Complementos
- 70 – Usuarios
- 75 – Herramientas
- 80 – Configuración
- 99 – Separador
Para el menú Administrador de red, los valores son diferentes:
- 2 – Tablero
- 4 – Separador
- 5 – Sitios
- 10 – Usuarios
- 15 – Temas
- 20 – Complementos
- 25 – Configuración
- 30 – Actualizaciones
- 99 – Separador
Fuente
Expediente: wp-admin / includes / plugin.php
functionadd_menu_page($page_title,$menu_title,$capability,$menu_slug,$function='',$icon_url='',$position=null)global$menu,$admin_page_hooks,$_registered_pages,$_parent_pages;$menu_slug=plugin_basename($menu_slug);$admin_page_hooks[$menu_slug]=sanitize_title($menu_title);$hookname=get_plugin_page_hookname($menu_slug,'');if(!empty($function)&&!empty($hookname)&¤t_user_can($capability))add_action($hookname,$function);if(empty($icon_url))$icon_url='dashicons-admin-generic';$icon_class='menu-icon-generic ';else$icon_url=set_url_scheme($icon_url);$icon_class='';$new_menu=array($menu_title,$capability,$menu_slug,$page_title,'menu-top '.$icon_class.$hookname,$hookname,$icon_url);if(null===$position)$menu[]=$new_menu;elseif(isset($menu["$position"]))$position=$position+substr(base_convert(md5($menu_slug.$menu_title),16,10),-5)*0.00001;$menu["$position"]=$new_menu;else$menu[$position]=$new_menu;$_registered_pages[$hookname]=true;// No parent as top level.$_parent_pages[$menu_slug]=false;return$hookname;
Relacionado
Usos
Usos | Descripción |
---|---|
wp-admin / includes / plugin.php:get_plugin_page_hookname () |
Obtiene el nombre del enlace de la página administrativa de un complemento. |
wp-includes / features.php:current_user_can () |
Devuelve si el usuario actual tiene la capacidad especificada. |
wp-includes / formatting.php:sanitize_title () |
Desinfecta una cadena en un slug, que se puede utilizar en URL o atributos HTML. |
wp-includes / link-template.php:set_url_scheme () |
Establece el esquema de una URL. |
wp-includes / plugin.php:plugin_basename () |
Obtiene el nombre base de un complemento. |
wp-includes / plugin.php:add_action () |
Engancha una función a una acción específica. |
Usado por
Usado por | Descripción |
---|---|
wp-admin / includes / deprecated.php:add_object_page () |
Agregue una página de menú de nivel superior en la sección ‘objetos’. |
wp-admin / includes / deprecated.php:add_utility_page () |
Agregue una página de menú de nivel superior en la sección ‘utilidad’. |
Registro de cambios
Versión | Descripción |
---|---|
1.5.0 | Introducido. |
Acuérdate de que tienes concesión de reseñar .