Estructura web modular con filtro WEB y WAP

Iniciado por jdc, 22 Enero 2010, 07:28 AM

0 Miembros y 1 Visitante están viendo este tema.

jdc

Esto es para quien desee hacer una pagina con versiones para web y wap (internet para telefonos mobiles)

* Primero en la raiz del sitio crearemos dos carpetas una llamada "web" y otra llamada "mobile"
           ** En la carpeta web iran nuestros archivos web
           ** En la carpeta mobile nuestros archivos wap ¬¬

veamos... En la raiz del sitio ponemos nuestro index.php que sera este:
Código (php) [Seleccionar]

<?php
error_reporting
(0);
/* Esto es para evitar que las paginas que se incluyen
se visualicen directamente */
define('nI'1);

/* se definira si entra desde el celular o desde un 
navegador web normal */
if (isset($_SERVER['HTTP_ACCEPT']) && strpos($_SERVER['HTTP_ACCEPT'], 'application/vnd.wap.xhtml+xml') !== false){
$path 'mobile';
}elseif (isset(
$_SERVER['HTTP_ACCEPT']) && strpos($_SERVER['HTTP_ACCEPT'], 'text/vnd.wap.wml') !== false){
{
if (strpos($_SERVER['HTTP_USER_AGENT'], 'DoCoMo/') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'portalmmm/') !== false)
$path 'mobile';
else
$path 'mobile';
}

}else{
$path 'web';
}
/* Obtenemos la pagina a la que se desea acceder */
$pagina $_GET['pagina'];

/* Si no se solicita pagina mostramos el index wap o web segun determine lo anterior
cambiando la variable $path */
if(empty($pagina)){ 
 include(
''.$path.'/index.php');
 }else{
 
/* borramos todo lo que no sea letras o numeros y agregamos la extension .php
y generamos la url final que sera por ejemplo "web/contacto.php" */
$inc ''.$path.'/'.preg_replace('|[^A-Za-z0-9_]|i'''$pagina).'.php';
/* Si el archivo existe */
if(file_exists($inc)){
/* incluimos $inc que seria nuestro path verificado */
 
include($inc);
}else{
/* Sino incluimos el documento 404.php de la carpeta definida */
 
include(''.$path.'/404.php');
 }
}
?>



Ahora en nuestra carpeta web ponemos la pagina 404.php que es necesaria, ustedes la personalizan y la dejan bonita xD

Código (php) [Seleccionar]

<?php
if (!defined('nI')){
die('No se permite vizualizaci&oacute;n directa');
}

echo 
'Pagina web no encontrada';
?>



nuestro index.php para web

Código (php) [Seleccionar]

<?php
if (!defined('nI')){
die('No se permite vizualizaci&oacute;n directa');
}

echo 
'Soy la pagina web para www';
?>



y un contacto.php para probar si funciona bien o no

Código (php) [Seleccionar]

<?php
if (!defined('nI')){
die('No se permite vizualizaci&oacute;n directa');
}

echo 
'pagina de contacto web';
?>



En nuestra carpeta mobile pondremos los mismos 3 archivos:

index.php
Código (php) [Seleccionar]

<?php
if (!defined('nI')){
die('No se permite vizualizaci&oacute;n directa');
}

echo 
'soy la pagina de inicio para celulares';
?>



404.php
Código (php) [Seleccionar]

<?php
if (!defined('nI')){
die('No se permite vizualizaci&oacute;n directa');
}

echo 
'Pagina wap no encontrada';
?>



y contacto.php
Código (php) [Seleccionar]

<?php
if (!defined('nI')){
die('No se permite vizualizaci&oacute;n directa');
}

echo 
'pagina de contacto wap';
?>



La gracia es que cuando el usuario entre a nuestra web entrara a un portal mas comodo para su navegador, en especial si tenemos en nuestra version web mucho flash y js que es letal para los pobres e inocentes celulares xD

Espero que les guste y cualquier cosa aqui esta el post :)

dark_sargon

Excelente aporte aunque ahora los telefonos móviles son cada vez más 'inteligentes' y muchos pueden abrir sitios Web fácilmente.

Aunque creo que pasará un buen tiempo antes de que todos adquieran smartphones o similares por eso digo que es un excelente aporte.

Un saludo.
http://www.actimediaonline.com
Diseño Web, animación y más.

http://www.ciudadoscura.com
Diseño Web, electrónica, programación, móviles y más.

jdc

Tienes que pensar que la web tambien avanza cada vez mas, con ajax, jquery, la asquerosidad de flash :S y otras cosas que hasta los smarthphones no son capaces de mostrar bien todavia.

La forma de filtrar celulares es la que usa smf asi que incluso siguiendo lo mismo se podria hacer 4 versiones de la misma pagina wap 1.0 (wml), wap 2.0(la mayoria de celulares acuales), imode (smarthphones), web. es solo cosa de armar 4 carpetas  ;)

Alex_bro

Cita de: dark_sargon en 22 Enero 2010, 18:36 PM
Excelente aporte aunque ahora los telefonos móviles son cada vez más 'inteligentes' y muchos pueden abrir sitios Web fácilmente.

Aunque creo que pasará un buen tiempo antes de que todos adquieran smartphones o similares por eso digo que es un excelente aporte.

Un saludo.

Si bien es cierto un iPhone, por ejemplo, sabe mostrar perfectamente una pagina, siempre es mas agradable navegar por un sitio adaptado a tener que estar haciendo Zoom cada vez que entras en un apartado nuevo. Incluso el mismo navegador de este dispositivo, cuando entras en una pagina, intenta buscar si existen versiones adaptadas buscando creo 4 carpetas diferentes a partir de la raiz con nombres clave.

Ademas, como dice janito24, de aqui a que puedan ver flash, java, envolverse con soltura con acciones javascript... aun hay un tiempecito. Si algunos quisieran podria ser ya, pero el mercado va a su ritmo.

jdc

Eso sin olvidar que no hay sólo 2 o 3 tipos de teléfonos.

Hay decenas de tamaños de pantalla, y no es fácil filtrar por tamaño por ejemplo y mostrar la que mas se acomodé, lo mejor al hacer plantillas wap es usar valores con porcentajes, no abusar de las tablas, no usar js, flash ni nada muy muy pesado, siempre que piensen en celular piensen en 16 kbps desde gprs mas o menos xD sí le meten un fondo en mp3 de 3 mb sonara, pero el usuario estará entretenido unos 15 minutos para bajarlo y que suene?

dark_sargon

Uds. tienen razón. Aun queda mucho tiempo para que un teléfono celular se parezca más a un computador (de ahora). Mi punto es que hemos notado un gran avance si hacemos comparaciones. Mi primer teléfono celular tenía un navegador WAP mediante GPRS y un día me decidí a hacer un sitio WAP, estaba muy impresionado con lo que se podía hacer en ese tiempo aunque había que tener presente tartar de hacer el sitio lo menos pesado posible debido al costo del servicio o como dices tú: por la velocidad.
Luego adquirí un teléfono con WM (el que tengo ahora) y de solo recordar lo poco que podía hacer mi anterior teléfono, me da un poco de risa. Actualmente puedo trabajar con algunos scripts en JS (no todos funcionan), formularios, imágenes en colores completos, mapas de imágenes, CSS, etc. Lo mejor de todo es que los cosotos del servicio de internet para móviles ha bajado y con la aparición de Wi-Fi, todo resulta mejor y muy rápido.

Actualmente las resoluciones en las pantallas de los móviles está mejorando, por ejemplo, los últimos HTC que salieron al mercado con 480px X 800px.

Un saludo.
http://www.actimediaonline.com
Diseño Web, animación y más.

http://www.ciudadoscura.com
Diseño Web, electrónica, programación, móviles y más.

Ari Slash

hola janito

estoy terminando un software en php
y me acorde que habias publicado el metodo de utilizar la version wap.  ;D
no me conecto hace mucho pero no podia pasar sin agradecer.. asi que gracias xDD

nos vemos


saludos


pd:
if (strpos($_SERVER['HTTP_USER_AGENT'], 'DoCoMo/') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'portalmmm/') !== false)
$path = 'mobile';
else
$path = 'mobile';
}


aunque no entendi esta parte o la indentacion jugo en contra xD


jdc

Eso al final quedo como solo web y wap pero son mas filtros, por ejemplo para mostrar web, xhtml 1.0, wml o que se yo, ahora habria que agregar una carpeta por cada sitio y ya.

XD estas hecho todo un desarrollador... Aun recuerdo cuando andabas saqueando supermercados jajajaja

Saludos amigo mio xD