Carga de wordpress mínima para que solo funcione 'get_option' (porque ajax ...)

2

En un complemento, uso ajax para get_option() , lo cual toma mucho más tiempo de lo debido porque se carga todo el wp.

¿Cómo configuro las cosas para que (mi ajax) cargue solo lo que se necesita? ( get_option() )

    
pregunta laggingreflex 23.06.2013 - 04:39

2 respuestas

5

Si estás creando algo para consumo público (un complemento, un tema, etc.) utiliza admin-ajax.php como deberías porque esa es la forma adecuada y aceptada de hacer las cosas y les brinda a los usuarios finales la potencia que necesitan para cambiar y modificar las cosas si así lo desean.

Más allá de eso, lo mejor que PUEDES poder hacer es usar la constante SHORTINIT . Defínalo en un archivo php personalizado, luego requiera wp-load.php y haga lo que necesita hacer. SHORTINIT impide que se cargue la mayor parte del núcleo de WordPress.

<?php
define('SHORTINIT', true);
require '/path/to/wp-load.php';
// you'll have the basic API here, including 'get_option'. Do stuff.

Si haces esto fuera del núcleo de WP, deberás adivinar dónde puede estar wp-load.php ; no tendrás ningún contendiente ABSPATH para guiarte. Es una apuesta arriesgada a menos que usted tenga el control total del sistema. En otras palabras, si esto es algo personalizado, no publicado públicamente, hágalo. De lo contrario, utilice admin-ajax.php .

    
respondido por el chrisguitarguy 23.06.2013 - 05:13
0

Otro método es agregar este código en functions.php (o en el complemento), sin necesidad de require '/path/to/wp-load.php' ... pero no será tan rápido como SHORTINIT :

// EXAMPLE
function MyFuncion(){
    if (isset($_POST['mynamee'])) { echo get_option('my_nm');}
}

//===================Then====================
//1) Execute directly
MyFunction();
//========OR=========
//2) Hook into the EARLIEST ACTION:  
add_action('muplugins_loaded', 'MyFunction',1);

p.s ¡NUNCA OLVIDES GUARDAR Y FILTRAR LAS SOLICITUDES DE HACKING!

    
respondido por el T.Todua 11.07.2015 - 11:52

Lea otras preguntas en las etiquetas