El tip para los que saben o alguna vez intentaron hacer un custom action osea un
index.php?action=Myacion
generar una pagina esto se puede hacer con mods o directamente en un tema
al hacer esto suele añadirse automaticamente el encabezado de la pagina mas el footer si deseas anular eso
y salga solo una pagina blanca, muy útil si lo usas para cosas con ajax.
tienes que usar un
$context['template_layers'] = array();
al inicio función para que no cargue las plantillas;
ahora al ingresar a index.php?action=Myacion saldrá completamente en blanco para que lo uses para enviar datos con json xml etc
Quote from: Dhayzon on January 28, 2017, 01:02:56 PM
ahora al ingresar a index.php?action=Myacion saldrá completamente en blanco para que lo uses para enviar datos con json xml etc
¿Eso para que me serviría precisamente?, creo el mod era el Custom Action Mod[url] el que enlaza las paginas...
Saludos! (http://custom.simplemachines.org/mods/index.php?mod=331)
no, ese mod es otra cosa .... lo que pretendo explicar es que cuando creas
add_integration_function('integrate_actions', 'mifuncion', false);
$actionArray['miaction'] = array('Subs-mimod.php', 'mifuncion');
automaticamente se crea la acción pero te muestra la pagina con el header y footer
que pasa si quier una accion para un Json una pagina blanca sin que se muestre nada
pues si uso $context['template_layers'] = array(); le digo que no cargue plantillas
pero creo que mejor ahora es usar
un exit();
por ejemplo
function inews_upload(){
header('Content-Type: application/json');
echo'aqui todo mi json';
exit();
}
es más para desarrolladores o los que quieran hacer modificaciones a su gusto no es para los que solo instalan mods
es mas limpio si usas las opciones de smf para no mostrar el header o footer, me refiero para no usar el "exit".
pero asi como menciona Dhayzon, sirve de mucho cuando quieres hacer actions que son asincronos y no necesitas mostrar nada mas que recibir una respuesta.
/me