Tag Archives: Programacion

Como funciona Google, introduccion al indice

Esto pretende ser una introducción a como funcionan los buscadores modernos. Muchas veces me lo pregunte: ¿Como puede hacer una búsqueda entre tantos millones de paginas? ¿Como guarda esa información?. Empecemos:

Primero dejemos en claro una cosa, cuando introducimos una búsqueda en Google (O yahoo, o bing o quien sea) este no chequea en las paginas que tiene almacenadas, el chequea su indice.

¿Que es un indice?

No es un indice como al que estamos acostumbrados en el que se nombran los títulos de los capítulos de un libro, pero se acerca, es mas algunos libros tienen un indice que se acerca mucho mas todavía. Seguramente en algún libro de texto lo han visto, al final tienen toda una serie de términos y junto a cada uno de ellos las paginas donde podemos encontrarlo. El indice de Google funciona asi.

Se crea un indice por palabras, eliminando las superfluas. Es decir tenemos todas las palabras y a cada una la asociamos con una serie de paginas. Mas facil con un ejemplo, supongamos que solo tenemos 3 paginas diminutas indexadas, sus textos son los siguientes:

a. “Juan lava el auto”

b. “Pedro anda en auto”

c. “Marta lava la ropa”

Nuestro indice seria:

  1. juan -> a
  2. pedro -> b
  3. marta -> c
  4. lava -> a, c
  5. auto -> a,b
  6. ropa -> c

Eliminamos “el”, “en” y “la” por ser considerados supefluos.

Ahora supongamos que viene alguien y busca en nuestro diminuto buscador. Si en el cuadro de busqueda introduce: “lava” le daremos como resultado links a “Juan lava el auto” y “marta lava la ropa” y si en vez de eso ingresa “anda” nuestro unico resultado seria un link a “Pedro anda en auto”. Y si introduce “comer” no podríamos darle ningún resultado.

También se podrían hacer búsquedas mas complicadas. Por ejemplo supongamos que alguien busca “lava auto”. Nuestro indice primero buscaría las paginas que tienen “lava” y luego las que tienen “auto” y nuestro resultado serian las paginas que estan presentes en las dos búsquedas.

Por ultimo, para que nuestro buscado pueda ser eficiente debe poder indexar frases y no solo palabras sueltas. Pero creo que esto ya es cosa de otro post.

Seguramente algun dia, ni se cuando, me ponga a escribir sobre como funcionan las arañas (el famoso Googlebot) y como es el proceso de indexado.

Solucion al Cannot modify header information – headers already sent by… de WordPress

Un error muy común en los archivos php es el de Cannot modify header information – headers already sent by… Y aca ponen el archivo que genera esa error.

Una vez, recuerdo, abandone un proyecto que estaba haciendo porque no lo pude solucionar. Cuando buscamos información referente a este error siempre nos encontramos con lo mismo, fijate que tu script no haga ninguna salida antes de crear un cookie (o de usar una funcion referida a los headers) y fijate que no halla espacios en blanco antes del <?php o despues del ?>. Pero hay una cosa mas.

No recuerdo donde lo lei, hace unos meses ya, si nuestro archivo esta guardado en una codificación de caracteres distinta de ANSI nos va a dar el mismo error. Supuestamente se toma el cambio de codificación de caracteres como una salida.

Bueno el tema es que hoy me econtre con ese problema en una instalación de WordPress. Me decia: “Cannot modify header information – headers already sent by (output started at chorizo/wp-config.php)” Agarre el archivo, me fije que no hubiera espacios al principio o al final (es que lo estuve toqueteando), y siguio dando problemas. Agarre el viejo y querido Notepad, abri el archivo y le di al guardar como, ahí eleji la codificación ANSI. ¿Y saben que?… salio andando.

Aclaraciones sobre eso del CMS

Con eso de cmswordpress.ferticidio.com la idea era ir mostrándoles paso a paso como se crea un portal. Y cuando uno esta creando portales o cosas asi siempre puede pasar que por dificultades para entender que es lo que el cliente quiere se tenga que dar borrón y cuenta nueva.

Este es el caso. Después de una charla con el interesado decidimos cambiar todo. Los posts, seguramente van a tener que esperar, hasta que este todo hecho.

Eso si, pueden pasarse por el sitio para ver que tal va.

WordPress como CMS – Antes de empezar

Al decir que queremos usar wordpress como un verdadero CMS, básicamente queremos decir que queremos armar un portal con secciones bastante diferenciadas.

Para dividir las secciones usaremos las categorías. Pero no las trataremos de la misma forma que en un blog. Es por eso que antes de empezar tenemos que tener bien definidas las distintas secciones, aunque nada dice que no se puedan agregar después.

El sitio que estoy montando, de ejemplo, y de paso para un proyecto propio, es el de una marmolería. No es un portal propiamente dicho pero a los fines prácticos de este mini-tutorial nos va a servir muy bien.

El ejemplo va a ser bastante sencillo en realidad. La pagina principal tendra un texto introductorio y se listaran las ultimas noticia (De la categoria noticias).

Después tendremos la seccion de mesadas prefabricadas y otra seccion de mesadas a medida. Con unos ligeros cambios podemos agregar todas las secciones que querramos. Por ejemplo, se me ocurre agregar una seccion de muebles.

Ya definida la estructura temática del sitio queda definir la estructura gráfica de el.

Esto ya es mas difícil de explicar, pero ya lo tengo pensado, asi que para ejemplificarlo van a tener que verlo:

wordpress-cms

Definido esto a grandes rasgos queda hacerlo :p

Mientras escribo aca juego en el blog de pruebas, pueden ver como va quedando entrando a cmswordpress.ferticidio.com.

Usar WordPress como CMS (Capitulo preliminar)

wordpress1Hace algunos meses tengo pensado hacer un post asi. Un tutorial para transformar a WordPress en un verdadero CMS.

Y como siempre lo voy atrasando por una cosa u otra decidi hacer una serie de artículos. No se cada cuanto voy a ir sacando los posts porque tiempo es lo que menos tengo. Pero la idea es tener al menos un post semanal con este tema.

El lugar en donde hacer el experimento ya esta: cmswordpress.ferticidio.com. Durante esta serie de post tengo pensado tratar mas o menos estos temas:

  1. Antes de empezar
  2. Page templates
  3. Custom Fields
  4. Modificaciones del index.php
  5. Modificaciones del single.php
  6. Puesta en marcha

Esto no quiere decir que sean los únicos temas que vamos a tocar. Tampoco quiere decir que vayan a ser 5 posts. Pueden ser mas, pueden ser menos. Pero la base esta.