Cómo mejorar el SEO de los resultados de búsqueda

  • Autor Autor SoloNegocios
  • Fecha de inicio Fecha de inicio
S

SoloNegocios

Xi
SEO
He estado haciendo pruebas posicionando las búsquedas en mis Blogs, algo así como hace Softonic.

Todos sabemos que el Plugin All in One SEO nos ayuda a colocar las Metas en nuestros Posts pero este Plugin tiene una falla y es que no las coloca en los resultados de las búsquedas internas de nuestro Blog.

Hoy les voy a dejar varios códigos que les ayudaran a que las Metas (Meta Descripcion, Meta Keywords y Meta Title) se coloquen automáticamente en todos los resultados de las búsquedas.

Primero les dejo 2 capturas:

Sin mi código:

Enlace eliminado

Con mi código:

Enlace eliminado

Como pueden ver la captura que tiene mi código tiene una Descripción que contiene una lista de Keywords relevantes a lo que buscamos, la otra solo tiene un extracto de los resultados encontrados.

Lo primero que les digo es que no voy a hacer un Plugin para algo tan fácil, ademas aprenden mucho mas metiendole mano al archivo Functions.php que instalando un Plugin.

En el archivo Functios.php deben colocar todo esto antes del
PHP:
?>
que esta al final:

PHP:
function retornar_busqueda_realizada()
{
 $cadena_buscada= get_search_query();

 $cadena_espacios = str_replace(" ", "+", $cadena_buscada);
 $cadena_espacios=trim($cadena_espacios);
 
 return urldecode($cadena_espacios);
}

function retornar_url_busqueda_realizada($prefijo='/search/')
{
 $url_blog = get_bloginfo('url');
 $busqueda_realizada= retornar_busqueda_realizada();
 $busqueda_sinespacios= str_replace(" ", "+", $busqueda_realizada);
 $busqueda_url= '<a href="'. $url_blog . $prefijo . $busqueda_sinespacios . '" title="'. $busqueda_realizada .'">'. $busqueda_realizada .'</a>';
 return $busqueda_url;
}

function cadena_sin_stopwords($busqueda_realizada)
{
 $cont_nueva_cadena=0;
 $palabras_cadena = explode(" ",$busqueda_realizada);
 include("stopwords.php");

 for($i=0;$palabras_cadena[$i];$i++)
 {
  $longitud= strlen($palabras_cadena[$i]);
  $compara=0;
  if (is_array($stopwords) && count($stopwords) > 0)
  {
   for($j=0;$stopwords[$j];$j++)
   {
    if ( (strcasecmp($stopwords[$j], $palabras_cadena[$i]) == 0)) 
    {
     $compara=1;
     break;
    }
   }
   if($compara==0)
   {
    $nueva_cadena[$cont_nueva_cadena]=$palabras_cadena[$i];
    $cont_nueva_cadena++;
   }
  }
 }
 return $nueva_cadena;
}

function crear_nueva_cadena($cadena)
{

 $tam=count($cadena);
 for($i=0;$i<$tam;$i++)
 {
  $resultado='';
  for($j=0;$j<$tam;$j++)
  {
   if($i!=$j)
   {
    $resultado=$resultado . $cadena[$j];
    if($j<$tam-1&&$resultado!='')
     $resultado=$resultado . ' ';
   }
  }
  $nueva_cadena[$i]=trim($resultado);
 }
 return $nueva_cadena;
}

function metadatos_busqueda()
{
 $busqueda_realizada= retornar_busqueda_realizada();
 $cadena_stopwords=cadena_sin_stopwords($busqueda_realizada);
 $palabras_cadena= crear_nueva_cadena($cadena_stopwords);

 $tam=count($cadena_stopwords);
 for($i=0;$i<$tam;$i++)
 {
  $resultado=$resultado . $cadena_stopwords[$i];
  if($i<$tam-1)
   $resultado=$resultado . ' ';
 }
 $nueva_cadena=trim($resultado);

 $tam=count($palabras_cadena);
 for($i=0;$i<$tam;$i++)
 {
  if($i==0)
   $keywords= $keywords . $busqueda_realizada . ', ' . $nueva_cadena . ', ';

  $keywords= $keywords . $palabras_cadena[$i];

  if($i!=$tam-1)
   $keywords= $keywords . ', ';
 }
?>

 <meta name="title" content="<?php echo $busqueda_realizada ?>">
 <meta name="description" content="<?php echo $keywords ?>">
 <meta name="keywords" content="<?php echo $keywords ?>">

<?php 
 $url_blog = get_bloginfo('url');
 $actual_url= $_SERVER['REQUEST_URI'];
 echo "".'<link rel="canonical" href="'. $url_blog . str_replace(" ", "+", urldecode($actual_url)) .'" type="text/html"/>'."\n";
}

Ahora deben crear en la carpeta donde tienen el Theme que usan un archivo llamado stopwords.php y meterle el siguiente codigo:

PHP:
<?php
$stopwords = array(
"el",
"la",
"los",
"les",
"las",
"de",
"del",
"a",
"ante",
"con",
"en",
"para",
"por",
"y",
"o",
"u",
"tu",
"te",
"ti",
"le",
"que",
"al",
"ha",
"un",
"han",
"lo",
"su",
"una",
"estas",
"esto",
"este",
"es",
"tras",
"a",
"acá",
"ahí",
"al",
"algo",
"algún",
"alguna",
"algunas",
"alguno",
"algunos",
"allá",
"alli",
"allí",
"antes",
"aquel",
"aquella",
"aquellas",
"aquello",
"aquellos",
"aqui",
"aquí",
"asi",
"atras",
"aun",
"aunque",
"bajo",
"bastante",
"bien",
"cabe",
"cada",
"casi",
"cierta",
"ciertas",
"cierto",
"ciertos",
"como",
"cómo",
"con",
"conmigo",
"conseguimos",
"conseguir",
"consigo",
"consigue",
"consiguen",
"consigues",
"contigo",
"contra",
"cual",
"cuales",
"cualquier",
"cualquiera",
"cualquieras",
"cuando",
"cuanta",
"cuánta",
"cuantas",
"cuántas",
"cuanto",
"cuánto",
"cuantos",
"cuántos",
"de",
"dejar",
"del",
"demás",
"demas",
"demasiada",
"demasiadas",
"demasiado",
"demasiados",
"dentro",
"desde",
"donde",
"dos",
"el",
"él",
"ella",
"ellas",
"ello",
"ellos",
"en",
"encima",
"entonces",
"entre",
"era",
"eramos",
"eran",
"eras",
"eres",
"es",
"esa",
"esas",
"ese",
"eso",
"esos",
"esta",
"estaba",
"estado",
"estais",
"estamos",
"estan",
"estar",
"estas",
"este",
"esto",
"estos",
"estoy",
"etc",
"fin",
"fue",
"fueron",
"fui",
"fuimos",
"gueno",
"ha",
"hace",
"haceis",
"hacemos",
"hacen",
"hacer",
"haces",
"hacia",
"hago",
"hasta",
"incluso",
"intenta",
"intentais",
"intentamos",
"intentan",
"intentar",
"intentas",
"intento",
"ir",
"jamás",
"junto",
"juntos",
"la",
"largo",
"las",
"lo",
"los",
"mas",
"más",
"me",
"menos",
"mi",
"mía",
"mia",
"mias",
"mientras",
"mio",
"mío",
"mios",
"mis",
"misma",
"mismas",
"mismo",
"mismos",
"modo",
"mucha",
"muchas",
"muchísima",
"muchísimas",
"muchísimo",
"muchísimos",
"mucho",
"muchos",
"muy",
"nada",
"ni",
"ningun",
"ninguna",
"ningunas",
"ninguno",
"ningunos",
"no",
"nos",
"nosotras",
"nosotros",
"nuestra",
"nuestras",
"nuestro",
"nuestros",
"nunca",
"os",
"otra",
"otras",
"otro",
"otros",
"para",
"parecer",
"pero",
"poca",
"pocas",
"poco",
"pocos",
"podeis",
"podemos",
"poder",
"podria",
"podriais",
"podriamos",
"podrian",
"podrias",
"por",
"por qué",
"porque",
"primero",
"primero desde",
"puede",
"pueden",
"puedo",
"pues",
"que",
"qué",
"querer",
"quien",
"quién",
"quienes",
"quienes",
"quiera",
"quienquiera",
"quiza",
"quizas",
"sabe",
"sabeis",
"sabemos",
"saben",
"saber",
"sabes",
"se",
"segun",
"según",
"ser",
"si",
"sí",
"siempre",
"siendo",
"sin",
"sín",
"sino",
"so",
"sobre",
"sois",
"solamente",
"solo",
"somos",
"soy",
"sr",
"sra",
"sres",
"esta",
"su",
"sus",
"suya",
"suyas",
"suyo",
"suyos",
"tal",
"tales",
"también",
"tambien",
"tampoco",
"tan",
"tanta",
"tantas",
"tanto",
"tantos",
"te",
"teneis",
"tenemos",
"tener",
"tengo",
"ti",
"tiempo",
"tiene",
"tienen",
"toda",
"todas",
"todo",
"todos",
"tras",
"tú",
"tu",
"tus",
"tuya",
"tuyo",
"tuyos",
"ultimo",
"un",
"una",
"unas",
"uno",
"unos",
"usa",
"usais",
"usamos",
"usan",
"usar",
"usas",
"uso",
"usted",
"ustedes",
"va",
"vais",
"vamos",
"van",
"varias",
"varios",
"vaya",
"verdad",
"verdadera",
"vosotras",
"vosotros",
"voy",
"vuestra",
"vuestras",
"vuestro",
"vuestros",
"y",
"ya",
"yo"
);
?>

Ahora explicare cada funcion:

retornar_busqueda_realizada: Esta lo unico que hace es retornarnos la Keyword que ingresaron en el buscador de nuestro Blog.

retornar_url_busqueda_realizada: Nos regresa un enlace con la URL hacia la busqueda realizada, tenemos que ingresarle un prefijo yo uso /search/ que es el que casi todos usan /search/, si tu usas /s/ o /busquedas/ debes colocar como prefijo "/s/" o "/busquedas/"

Eje: Si buscan Comida gratis nos regresa

<a href="'www.tublogcito.com/search/comida+gratis" title="Comida gratis'">Comida gratis</a>

cadena_sin_stopwords: Nos regresa la busqueda realizada sin las molestas Stopwords,

Eje: Si alguien busca en tu Blog esto "Donde puedo Descargar mi musica favorita" el resultado que nos mostrara es "Descargar musica favorita" como ven elimina esas palabras molestas "Adjetivos, Adverbios, etc"

crear_nueva_cadena: Nos devuelve una cadena con posibles Keywords

Eje: Descargar mi musica en internet
Regresa: Descargar musica internet, musica internet, descargar musica

metadatos_busqueda: Nos crea los Metadatos de las busquedas xD

Se preguntaran que son las Stopwords pues son simples palabras basura que no queremos que salgan, Google usa Stopwords ya que no toma en cuenta palabras como "El, Con, La, Etc", yo hice una lista con varias de esas palabras.

Ahora para usar el código que les di deben ir primero al Header.php y colocar después del <head> esto

PHP:
<?php if(is_search()) echo metadatos_busqueda() ;?>

Para que coloque los Metas en los resultados de las búsquedas.

Ahora van al search.php y colocan esto

PHP:
<?php print retornar_url_busqueda_realizada() ?></strong>

Yo lo hago asi

PHP:
<h1>Resultados: <strong><?php print retornar_url_busqueda_realizada() ?></strong></h1>

Lo que hace es colocar "Resultados: " y el termino de busqueda

Debe ir antes del

PHP:
<?php while (have_posts()) : the_post(); ?>

Eso es todo amigos, ahora le aplicaron un poquito de SEO a los resultados de las búsquedas, hasta Softonic lo hace (De ahí saque la idea xD"

PD: Usenlo bajo su propio riesgo, no me hago responsable xD
 
Última edición:
No entiendo bien qué es lo que optimiza esto. ¿Son las búsquedas internas del blog o qué?

Parece interesante!
 
No entiendo bien qué es lo que optimiza esto. ¿Son las búsquedas internas del blog o qué?

Parece interesante!

Si las busquedas internas del Blog, les agrega una Descripcion construida con Keywords relevantes.

Es como lo que hacemos con el All in One Seo en nuestros Posts
 
No entiendo bien qué es lo que optimiza esto. ¿Son las búsquedas internas del blog o qué?

Parece interesante!

Lo que optimiza son las etiquetas, y visualiza tmb la entrada al blog, osea para saber en que blog esta posteado sin la necesidad de entrar a la url.
 
Por un lado me parece puede mejorar la descripción y por tanto el posicionamiento, pero para el lector puede que no sea tan atractivo ver una descripción llena de palabras claves. Ahí el dilema.
 
O sea: si alguien hace una búsqueda en mi blog usando el buscador interno, la misma aparecería en Google, y optimizada usando esta función
 
O sea: si alguien hace una búsqueda en mi blog usando el buscador interno, la misma aparecería en Google, y optimizada usando esta función

Esto no hace que se posicione en Google así de una, lo que hace esto es añadir un extra para que se posicionen mejor.

Si lo que quieres es posicionar las búsquedas debes enlazarlas como haces con los Posts que quieres posicionar.
 
Por un lado me parece puede mejorar la descripción y por tanto el posicionamiento, pero para el lector puede que no sea tan atractivo ver una descripción llena de palabras claves. Ahí el dilema.

Por un lado creo que tiene razón, un user normal (que no tenga que ver con el mundo se los webmasters y que no entienda mucho) no le dará gran importancia a las keywords ya que no las entenderá, AUNQUE si sabemos colocar de buena manera nuestras keywords, será incluso mejor... Por ejemplo en las capturas que puso, en el texto original habla de algo del blackberry y eso, con las keywoords explica en pocas palabras incluso mas que con lo otro, ya que dice que cosas específiccas del blackberry 😀

Gracias por el aporte man
 
Esto no hace que se posicione en Google así de una, lo que hace esto es añadir un extra para que se posicionen mejor.

Si lo que quieres es posicionar las búsquedas debes enlazarlas como haces con los Posts que quieres posicionar.

Si, ya se que no va a posicionar de una. Pero no sabía que se podían indexar las búsquedas en google 😀

Gracias!!
 
Es mucho pedir que alguien confeccione una especie de plugin con esto hecho? es que la verdad no entiendo NADA de programación, estuve provando con eso y no me salió nada de nada...

si realmente ayuda bastante con el posicionamiento, me gustaría tratar de usarlo ya que estoy experimentando en posicionar 1 keyword o dos 😀
 
Lo estoy probando con un blog, gracias.
 
Buenisimo SN, mañana que tengo dia libre me pongo a leer esto, varios sitios utilizan esta tecnica, uno busca algo y encuentra precisamente lo que ingreso en su busqueda y cuando entras es la misma busqueda pero dentro del sitio.

Dedo verde.
 
Según las directrices de Google no se deben indexarse las búsquedas si no se arriesgan a que alguien les denuncie y les penalicen.

Copia textual de lo que dice Google en Directrices para webmasters - Ayuda de Herramientas para webmasters de Google:

Utilice robots.txt para evitar el rastreo de páginas de resultados de búsqueda u otras páginas generadas automáticamente que carecen de valor para los usuarios procedentes de motores de búsqueda.

¿No?

PD: Completo:
Si sigue estas directrices, ayudará a Google a buscar, indexar y clasificar su sitio en los resultados. Aunque decida no implementar ninguna de estas sugerencias, le recomendamos encarecidamente que preste especial atención a las "Directrices de calidad", que describen algunas de las prácticas ilícitas que pueden conducir a la eliminación completa de un sitio del índice de Google o a algún otro tipo de penalización.
 
Última edición:
Según las directrices de Google no se deben indexarse las búsquedas si no se arriesgan a que alguien les denuncie y les penalicen.

Copia textual de lo que dice Google en Directrices para webmasters - Ayuda de Herramientas para webmasters de Google
Utilice robots.txt para evitar el rastreo de páginas de resultados de búsqueda u otras páginas generadas automáticamente que carecen de valor para los usuarios procedentes de motores de búsqueda.

¿No?

Es algo confuso, a mi particularmente no me gusta indexar búsquedas... realmente solo uno de mis blogs las indexa y eso porque ya me lo vendieron así.

La situación es que si estas indexando una búsqueda debe tener contenido, el problema es cuando indexan búsquedas que carecen de este y hacen que el usuario no llegue a lo que está buscando. Así es como penalizaron a varios sitios pues indexaban búsquedas tontas como sexo, porno, cuando en realidad carecían de los temas.

En cambio si el usuario busco "wallpapers de naruto" y en tu blog tienes una entrada llamada "fondos de pantalla naruto", lo único que estas haciendo es duplicar tu contenido indexando la búsqueda con el cambio de nombre. Creo que por eso SN dice que es bajo el riesgo de cada uno, yo por lo pronto paso pues como bien dije si por mi fuera no indexara ninguna búsqueda.

Este es el post donde he dicho más la palabra "búsqueda" XD
 
Según las directrices de Google no se deben indexarse las búsquedas si no se arriesgan a que alguien les denuncie y les penalicen.

Copia textual de lo que dice Google en Directrices para webmasters - Ayuda de Herramientas para webmasters de Google
Utilice robots.txt para evitar el rastreo de páginas de resultados de búsqueda u otras páginas generadas automáticamente que carecen de valor para los usuarios procedentes de motores de búsqueda.

¿No?

Mi código lo que hace es colocar Keywords en los resultados, el problema viene si tratas de indexar algo que no muestra resultados, eso es lo que hacen en Softonic y otros miles de sitios

Es algo confuso, a mi particularmente no me gusta indexar búsquedas... realmente solo uno de mis blogs las indexa y eso porque ya me lo vendieron así.

La situación es que si estas indexando una búsqueda debe tener contenido, el problema es cuando indexan búsquedas que carecen de este y hacen que el usuario no llegue a lo que está buscando. Así es como penalizaron a varios sitios pues indexaban búsquedas tontas como sexo, porno, cuando en realidad carecían de los temas.

En cambio si el usuario busco "wallpapers de naruto" y en tu blog tienes una entrada llamada "fondos de pantalla naruto", lo único que estas haciendo es duplicar tu contenido indexando la búsqueda con el cambio de nombre. Creo que por eso SN dice que es bajo el riesgo de cada uno, yo por lo pronto paso pues como bien dije si por mi fuera no indexara ninguna búsqueda.

Este es el post donde he dicho más la palabra "búsqueda" XD

Mejor no lo hubiera podido decir, por eso les digo "Usenlo bajo su propio riesgo" yo me arriesgue tomando como ejemplo que sitios como mi amado Softonic lo hacen
 
Última edición:
Esta interesante, aunque no me animaria a hacer un cambio tan sustancial en este momento, lo que si me interesa es saber como haces para sacar la fecha del description, fijate que en la primer captura dice "12 de marzo de 2009", como haces para sacar eso? 🙂

Muchas gracias!😀

Se feliz 🙂
 
Si claro concuerdo con Carlos. Google lo que quiere es que si indexas algo tenga contenido, por eso las tags se pueden indexar puesto que siempre van a tener contenido que mostrar. En cambio si indexas una búsqueda puede que no tengan contenido alguno y es ahí donde se incumpliría la directriz o simplemente, como también dice Carlos, indexar búsquedas que no tienen el contenido real de la búsqueda.

Es un punto bastante delicado ya que hay en juego las búsquedas Long Tail... si mal no recuerdo a NeoTeo lo penalizaron. Ver Enlace eliminado o Enlace eliminado

Pero igual ahora te dejo dedo verde :=) Buen aporte
 
Última edición:
Esta interesante, aunque no me animaria a hacer un cambio tan sustancial en este momento, lo que si me interesa es saber como haces para sacar la fecha del description, fijate que en la primer captura dice "12 de marzo de 2009", como haces para sacar eso? 🙂

Muchas gracias!😀

Se feliz 🙂

En la primera captura Google coloca eso automáticamente porque no encuentra una descripción y le toca sacar un extracto de lo que encuentra, en la segunda al si encontrar una descripción no tiene que sacar un extracto ni colocar la fecha y solo coloca la descripcion.
 
En la primera captura Google coloca eso automáticamente porque no encuentra una descripción y le toca sacar un extracto de lo que encuentra, en la segunda al si encontrar una descripción no tiene que sacar un extracto ni colocar la fecha y solo coloca la descripcion.

Y no se puede hacer que se tome un extracto sin tomar una fecha? 🙂

Muchas gracias por responder! 😀

Se feliz 😛
 
Y no se puede hacer que se tome un extracto sin tomar una fecha? 🙂

Muchas gracias por responder! 😀

Se feliz 😛

Tendría que hacer que la función que yo tengo que crea las Keywords saque un extracto y lo agregue en la descripción, aunque lo de sacar un extracto de los resultados de las búsquedas no lo se hacer me tocaría investigar ya que no es solo sacar un pedazo del primer Post que muestre el resultado, para que sea realmente relevante tendría que sacar extractos que contengan las Keywords que buscan en todos los posts que salgan en el resultado
 
Atrás
Arriba