Seleccionar página

Funciones para agregar menús en wordpress





//Ej 1 Agregar menú en el de otro plugin. ***** FUNCIONA ******
//https://wordpress.stackexchange.com/questions/91377/admin-menu-as-submenu-from-another-plugin
add_action('admin_menu', 'submenu_woocommerce_booking_calendario', 11 ); //<=Notar la prioridad 11 para agregar en submenú de otro plugin
function submenu_woocommerce_booking_calendario() 
{
    add_submenu_page(
        'edit.php?post_type=wc_booking', //Third party plugin Slug 
        'Calendario Nexo', 
        'Calendario Nexo', 
        'read', //Capability: https://codex.wordpress.org/Roles_and_Capabilities
        'nexo-calendario', //El slug que aparecerá como "...&page=nexo-calendario"
        'func_callback'
    );
}
function func_callback() 
{ 
    echo '<h1>OK</h1>'; 
}

//Ej 2 Ejemplo FUNCIONANDO de agregar menú/submenú:
//https://wordpress.stackexchange.com/questions/66498/add-menu-page-with-different-name-for-first-submenu-item
add_action('admin_menu', 'my_menu_pages');

add_menu_page('My Page Title',
        	'My Menu Title',
        	'manage_options', //Capability: https://codex.wordpress.org/Roles_and_Capabilities
        	'my-menu', //Plugin slug
        	'my_menu_output_callback' );

add_submenu_page(
        	'my-menu', //plugin slug
        	'Submenu Page Title', 'Whatever You Want', 'manage_options', 'my-menu', 'callback' );

add_submenu_page('my-menu', 'Submenu Page Title2', 'Whatever You Want2', 'manage_options', 'my-menu2', 'callback' );


//Ej 3 Agrega opción al menú AJUSTES: https://developer.wordpress.org/reference/functions/add_options_page/
add_action( 'admin_menu', 'my_plugin_menu' );
function my_plugin_menu() {
	add_options_page( 'My Plugin Options', 
'My Plugin',
'manage_options', //Capability: https://codex.wordpress.org/Roles_and_Capabilities
'my-unique-identifier', 'my_plugin_options' );
}
function my_plugin_options() {
	if ( !current_user_can( 'manage_options' ) )  {
		wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
	}
	echo '<div class="wrap">';
	echo '<p>Here is where the form would go if I actually had options.</p>';
	echo '</div>';
}

Crear Hooks y Plugins en WordPress

Documentación Oficial de WordPress: Cómo crear plugins:

https://developer.wordpress.org/plugins/intro/

https://codex.wordpress.org/es:Plugin_API

https://codex.wordpress.org/es:Escribiendo_un_Plugin


Cómo crear plugins en WordPress

( I )

Creación de Plugins en WordPress (I)

( II )

Creación de Plugins en WordPress (II): Organización y Trucos

Cómo trabajar con Hooks en WordPress desde Themes

WordPress Hooks Guía para principiantes

 

Cómo trabajar con Hooks creando un plugin para WordPress

https://raiolanetworks.es/blog/crear-plugin-wordpress/ 

 

Ejecutar cualquier $screen->id con add_action()

La función $screen = get_current_screen(); retorna el identificador de pantalla desde $screen->id, el cual sirve para ser llamado desde cualquier add_action cuyo primer parametro sea add_action('el_id_del_screen','funcion_callback');

Es decir, si

$screen = get_current_screen();
//$screen->id => 'test_jlm_plugin_page_pagina_de_prueba'

add_action('test_jlm_plugin_page_pagina_de_prueba', 'se_ejecutara');

Ejecutará la función «se_ejecutara()«

Solventar problemas de memory exhaust en la ejecución de algunos procesos de wordpress

PHP Fatal error:  Allowed memory size of 805306368 bytes exhausted (tried to allocate 114688 bytes) in /home/xxx/public_html/wp-includes/wp-db.php on line 2007

//Solucionar con incrementar el uso de memoria que wordpress puede hacer para sus procesos
define('WP_MEMORY_LIMIT', '2G');

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad