Ver Mensaje Individual
  #6 (permalink)  
Antiguo 25/05/2012, 12:59
Avatar de kernelcom-com
kernelcom-com
 
Fecha de Ingreso: mayo-2008
Ubicación: Lima
Mensajes: 216
Antigüedad: 16 años
Puntos: 3
Respuesta: Contenido duplicado para un articulo y uno para versión mobil

Encontré una mejor forma, como lo hace yahoo y otros grandes, es identificar el browser si es mobile entonces brindar la información a dicho navegador.

1.-
Código PHP:
if (preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|android)/i'strtolower($_SERVER['HTTP_USER_AGENT']))) {
echo 
'<h1>Aqui el contenido para mobiles incluyendo CSS y demás archivos</h1>';

} else {
echo 
'Aqui el cotenido normal de la web para todos los browser si así lo quisieras';} 
para evitar el www.example.com/articulo1.html , example.com/articulo1.html o peor aun example.com/articulo.php?id=1 y www.example.com/articulo.php?id=1

Todos estos el bot de google los puede indexar y crear duplicados entonces ideado esta formaula.


Obiamente tengo que tenerlos deficino en el .htacces las URL amigables antes de proceder a efectuar esta operación
Código PHP:
$xref averiguaUrl(); // Funcion simple para averiguar la URL 
$permitir='no'// Si dice $permitir='si' puedo indexar articulo.php?id=1

// Determino que tenga las www 
if (preg_match("/www/"$xref))
{

       
// Si tiene las 3 w entonces verifico que no este expresado como php
    
if (preg_match("/id/"$xref) and $permitir=='no'){
    
$urldeNoticia='www.example.com/articulo1.html';
    
    
header('Location: '.$urldeNoticia.'');
    }


else 

    
$urldeNoticia='www.example.com/articulo1.html';
    
// de lo contrario siempre obligo a indexar www con URL amigables
    
header('Location: '.$urldeNoticia.'');

Con esto evito poner de diferentes modos las URL y siempre se comprenderás una forma de escribir y leer las URL en mi website, mas datos estaré muy agradecido.

averiguaurl();
Código PHP:
function averiguaUrl() {
 
$protocolo $_SERVER['HTTPS'] == 'on' 'https' 'http'// Se extrae el protocolo (http o https)
 
return $protocolo.'://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; // Se devuelve la URL completa

Gracias amigos.
__________________
Las ideas estimulan la mente.(Eric Hoffer)
http://www.reycarlos.com
http://www.clasificadosde.com