Algo hermoso que descubrí hace mucho tiempo y que apenas días atras le tome importancia y lo entendí al 100% jaja
se trata de que crear paginas directamente en tu theme sin hacer mods ni nada y las genialidades que se pueden hacer son muchas
Casos de uso
Quiero crear una Api rest solo para que me devuelva los top users
La url seria
https://localhost/index.php?action=Api;sa=Toptuser;
me devolvería algo como esto ( top user para el ejemplo) - pudes sacar 30 o lo quieras
{
"id": 78,
"nombre": "Juan",
"post": 100000,
}
esto combinado con ajax puedo hacer pequeños módulos interesantes
OTRO CASO DE USO
Si quiero crear un chat
la url seria por ejemplo
https://localhost/index.php?action=chat;
y al entrar se mostraría tu foro con el header y footer pero con tu chat en el medio
Normalmente esto podría hacerse con mods, pero esto nos da más libertades
¿VEAMOS COMO SE HACE?
PARA UN CHAT SIGUE ESTO PASOS
editaremos el archivo index.template.php del theme que estés usando (todos lo tienen)
1:Buscar la linea (utiliza la función buscar de tu editor de codigo favorito)
$settings['require_theme_strings'] = false;
2:Agregar despues
if (@$_REQUEST['action'] == 'chat')
$settings['catch_action'] = array(
'template' => 'ThemeChat',
);
3:Guardar Ahora visualiza https://localhost/index.php?action=chat;
deberia salir un error de plantilla, no te asustes, Continuemos
4. Crea un nuevo archivo y ponle de nombre ThemeChat.template.php (estamos creando una nueva plantilla) (obviamente dentro de la carpeta del theme que estés usando)
5. si lo probamos aun tendremos un error
6. en el archivo ThemeChat.template.php pega este código
<?php
function template_main(){
global $context;
$context['page_title'] = 'my chat';
echo'
aqui puedo poner el código iframe de cualquier chat ,
';
}
?>
una vez que termines hacer eso ya puedes actualizar y debe aparecer el contenido que pusimos en ThemeChat.template.php
eso es todo
Ventajas
-puedes hacer y deshacer no tenderas problemas con el núcleo de smf
-acceso a SSI:php para usar sus funciones predeterminadas
-puede hacer experimentos sin afectar otras secciones de tu foro
-paginas ilimitadas puedes crear las que quieras
Lo movi a tutoriales que me parece va mejor ;) ademas parece bastante bueno y simple, voy hacer algunas pruebas a ver que tal. Gracias por aportarlo @Dhayzon.
Saludos!
Hola, me interesa este asunto.
He probado en mi foro y es como dices.
Ahora bien, ¿qué código iframe puedo utilizar para disponer de chat realmente?
Gracias!
Quote from: jemaral on April 11, 2020, 10:11:55 PM
Hola, me interesa este asunto.
He probado en mi foro y es como dices.
Ahora bien, ¿qué código iframe puedo utilizar para disponer de chat realmente?
Gracias!
hay varios chaats gratuitos como cbox.ws o chatango tambien el antiguo XAT esos son chat de terceros realmente un chat efectivo realtime integrado con los usuarios de tu sitio te lo da cbox.ws pero solo en su opcion premiiun,
por la misma arquitectura de smf que usa php y mysql un chat nativo no seria lo ideal
Ok gracias, echo un ojo!
bastante simple pero bien certero y excelente.
gracias Dhayzon.
Interesante, me recuerda a Daniiel que siempre quería meter json todos lados jajaja :P
Muy bueno ver un post de esto, es bastante útil dependiendo la situación y si se agrega un poco de javascript mejor aún :laugh:
Muchas gracias por tu aporte, me pareció una muy buena idea de implementarlo.
Siendo este tu caso:
{
"id": 78,
"nombre": "Juan",
"post": 100000,
}
Necesitas algún source en especial ?? O lo trabajas con SSI.php?
Eso es la información que el navegador devuelve en formato json
Hola, aunque si bien eso muestra el navegador, pero no está estructurado así, sino de ésta otra forma:
{"id": 78, "nombre": "Juan", "post": 100000}
Todo en una sola línea, incluso aunque sean muchas keys y values.
Saludos
Es exactamente lo mismo, pero si usas el inspector te mostrará los elementos como los pone dhayzon
Quote from: gohanjaja on May 09, 2020, 06:41:42 PM
Muchas gracias por tu aporte, me pareció una muy buena idea de implementarlo.
Siendo este tu caso:
{
"id": 78,
"nombre": "Juan",
"post": 100000,
}
Necesitas algún source en especial ?? O lo trabajas con SSI.php?
se usa solo ssi nada dee source
Quote from: Daniel user on May 09, 2020, 08:54:15 PM
Hola, aunque si bien eso muestra el navegador, pero no está estructurado así, sino de ésta otra forma:
{"id": 78, "nombre": "Juan", "post": 100000}
Todo en una sola línea, incluso aunque sean muchas keys y values.
Saludos
eso depende de como codeas en tu backend es una cosa trivial , JSON_PRETTY_PRINT