<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" ><channel><title>unijimpe &#187; SEO</title> <atom:link href="http://blog.unijimpe.net/category/seo/feed/" rel="self" type="application/rss+xml" /><link>http://blog.unijimpe.net</link> <description>Desarrollo Web, SEO, Adsense</description> <lastBuildDate>Mon, 28 Nov 2011 03:18:21 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>SEO Parser: Analizar contenido SEO</title><link>http://blog.unijimpe.net/seo-parser-analizar-contenido-seo/</link> <comments>http://blog.unijimpe.net/seo-parser-analizar-contenido-seo/#comments</comments> <pubDate>Fri, 25 Nov 2011 02:50:18 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[Servicios Web]]></category> <category><![CDATA[Tools]]></category> <category><![CDATA[alt]]></category> <category><![CDATA[Google]]></category> <category><![CDATA[metatags]]></category> <category><![CDATA[nofollow]]></category> <category><![CDATA[seo parser]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1307</guid> <description><![CDATA[<p><a href="http://seoparser.com">SEO Parser</a> es una herramienta que permite analizar como interpretan los buscadores el contenido de una web, para ello elimina los bloques que no son interpretados por los buscadores (Javascript, Flash, Vídeos, Applets, etc) mostrando solo &#8230;</p>]]></description> <content:encoded><![CDATA[<p><a href="http://seoparser.com">SEO Parser</a> es una herramienta que permite analizar como interpretan los buscadores el contenido de una web, para ello elimina los bloques que no son interpretados por los buscadores (Javascript, Flash, Vídeos, Applets, etc) mostrando solo el contenido basado en texto HTML, además de ello hace un análisis de los enlaces y una previsualización de la página en los resultados de Google.</p><p><a href="http://seoparser.com"><img src="http://blog.unijimpe.net/wp-content/uploads/2011/11/seo-parser.png" alt="" title="seo-parser" width="350" height="202" /></a></p><p><em>SEO Parser</em> esta basado en las diferentes reglas que aplican los buscadores al contenido y a los enlaces, estas reglas están detalladas en el libro <a href="http://www.amazon.com/gp/product/0596518862/ref=as_li_qf_sp_asin_tl?ie=UTF8&#038;tag=sepa0c-20&#038;linkCode=as2&#038;camp=217145&#038;creative=399369&#038;creativeASIN=0596518862">The Art of SEO: Mastering Search Engine Optimization (Theory in Practice)</a><img src="http://www.assoc-amazon.com/e/ir?t=sepa0c-20&#038;l=as2&#038;o=1&#038;a=0596518862&#038;camp=217145&#038;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important; padding: 0;" />.</p><p>Para utilizar <em>SEO Parser</em> solo hace falta ingresar el URL del enlace que se desea analizar y devolverá como resultado una página con los resultados de: análisis de contenido, análisis de enlaces, análisis de imágenes y una previsualización en los resultados de Google.</p><p><strong>Análisis de Contenido</strong></p><p><em>SEO Parser</em> elimina los bloques que no son visibles a los buscadores (Javascript, Flash, Vídeos, Applets, etc) por lo cual solo muestra el contenido basado en texto HTML.</p><p>Adicionalmente muestra las etiquetas de cabecera (<em>h1</em>, <em>h2</em>, <em>h3</em>, <em>h4</em>, <em>h5</em>, <em>h6</em>) que permiten definir el nivel de importancia del contenido. Por ejemplo el titulo de todo el contenido (h1), el titulo de cada sección (h2) y así sucesivamente.</p><p><img src="http://blog.unijimpe.net/wp-content/uploads/2011/11/seo-parser-content-analysis.png" alt="" title="seo-parser-content-analysis" width="400" height="713" /></p><p><strong>Análisis de Enlaces</strong></p><p>Todos los enlaces dentro de la página se analizan y muestran en diferentes colores para diferenciarlos. Para ello se agrupan en cuatro tipo de enlaces.</p><ul><li><strong>Enlaces Internos</strong>, son enlaces naturales y permiten posicionar secciones internas de un web.</li><li><strong>Enlaces Externos</strong>, son enlaces a otros dominios y mejoran el posicionamiento del dominio de destino.</li><li><strong>Enlaces No Follow</strong>, son enlaces que no pasan ningún beneficio de posicionamiento.</li><li><strong>Enlaces Javascript</strong>, son enlaces creados con javascript o anchors los cuales son invisibles para los buscadores.</li></ul><p><strong>Análisis de Imágenes</strong></p><p>Los buscadores no pueden interpretar el contenido de las imágenes, pero tienen una señal de lo que contienen gracias a la propiedad <em>alt</em> o en su defecto por el nombre del archivo de la imagen. <em>SEO Parser</em> reemplaza las imágenes por el texto <em>Alt</em> y si no existe por el nombre del archivo. Esto permite distinguir rápidamente si hace falta la propiedad <em>alt</em> a nuestras imágenes.</p><p><strong>Previsualizar en Google</strong></p><p>SEO Parser toma los datos del <em>title</em> y <em>description</em> o en su defecto el contenido filtrado de la página para simular como se mostrará la página en los resultados de Google. De esta forma identificaremos rápidamente como se verá nuestra página en Google.</p><p>Adicionalmente se muestra en detalle todos los metatags que contiene la página así como un resumen de las cantidades de enlaces, imágenes e incluso el tamaño del archivo leído.</p><p>Finalmente ofrece <a href="http://seoparser.com/help/">documentación</a> acerca de las reglas que aplica al contenido, también tiene un formulario de <a href="http://seoparser.com/feedback/">feedback</a> donde pueden enviar sus sugerencias, errores y comentarios para mejorar esta herramienta.</p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 &#8211; 2011 <a href="http://blog.unijimpe.net">unijimpe</a> &#8211; Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/seo-parser-analizar-contenido-seo/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Tips para identificar problemas en SEO</title><link>http://blog.unijimpe.net/tips-para-identificar-problemas-en-seo/</link> <comments>http://blog.unijimpe.net/tips-para-identificar-problemas-en-seo/#comments</comments> <pubDate>Mon, 06 Jun 2011 05:50:46 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[Google]]></category> <category><![CDATA[Optimización Web]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[301]]></category> <category><![CDATA[buscador]]></category> <category><![CDATA[canonicalización]]></category> <category><![CDATA[headers]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[metatags]]></category> <category><![CDATA[nofollow]]></category> <category><![CDATA[redirección]]></category> <category><![CDATA[robots.txt]]></category> <category><![CDATA[sitemap.xml]]></category> <category><![CDATA[yahoo]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1273</guid> <description><![CDATA[<p>Auditar o identificar problemas relacionados con el SEO es el primer paso para posicionar adecuadamente un sitio web. Identificando los problemas podremos plantear soluciones adecuadas para corregir estos puntos débiles y reforzar nuestros aciertos.</p><p></p><p><strong>Análisis en </strong>&#8230;</p>]]></description> <content:encoded><![CDATA[<p>Auditar o identificar problemas relacionados con el SEO es el primer paso para posicionar adecuadamente un sitio web. Identificando los problemas podremos plantear soluciones adecuadas para corregir estos puntos débiles y reforzar nuestros aciertos.</p><p><img src="http://blog.unijimpe.net/wp-content/uploads/2011/06/identificar-problemas-seo.jpg" alt="" title="identificar-problemas-seo" width="500" height="284" /></p><p><strong>Análisis en los Motores de Búsqueda</strong></p><p>El primer paso es verificar que la información de nuestro web esta indexada correctamente en los motores de búsqueda.</p><ul><li>Busca en Google: <code>site: tudominio.com</code>, esto devolverá todas la páginas indexadas de tu dominio. Compara el total de páginas indexadas con el total de páginas que tienes alojadas en tu servidor.</li><li>Prueba buscar el nombre de tu web o marca y verificar tu posición en los buscadores. Si no existen resultados de tu web es probable que hayas sido penalizado.</li><li>Revisa la versión en cache que tienen los buscadores y verifica que sea la misma versión de tu página actual, si no es así entonces el buscador tiene indexado una versión antigua de tu página.</li></ul><p><strong>Análisis Contenido Duplicado</strong></p><p>Verifica que tu dominio tenga <strong>canonicalización</strong>. Es decir que la versión <strong>no-www</strong> (<em>http://tudominio.com</em>) de tu web haga una redirección 301 a la versión <strong>www</strong> (<em>http://www.tudominio.com</em>) o viceversa. Si no existe esta redirección 301 ambas versiones puedes considerarse como dominios diferentes y una considerada como contenido duplicado.</p><p>Para hacer una revisión de contenido, realiza la búsqueda exacta de una frase (Entre comillas dobles) que se encuentre en tu web y analizar la cantidad y tipo de resultados devueltos. Tambíen puedes utilizar el la palabra clave <strong>intitle</strong> para indicar la búsqueda solo en los títulos.</p><ul><li>Buscar en el contenido: <code>"Frase a buscar"</code></li><li>Buscar en los titulos: <code>intitle: "Frase a buscar"</code></li></ul><p>Si tienes varias páginas con el mismo contenido, puedes utilizar la propiedad <strong>canonical</strong> para indicar a los buscadores cual de estas páginas debe ser considerada como contenido original:</p><div class="syntax_hilite"><div id="html-7"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/link.html"><span style="color: #000000;">&lt;link</span></a> <span style="color: #000066;">rel</span>=<span style="color: #ff0000;">'canonical'</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">'http://blog.unijimpe.net/depurar-flash-con-firebug/'</span> /<span style="color: #000000;">&gt;</span></a></span></div></li></ol></div></div></div><p></p><p><strong>Análisis de los URLs</strong></p><p>Revisar que los URLs de tu página sean cortos, limpios y descriptivos (<em>Descriptivos</em>: que contienen keywords indicadores del contenido hay en la página). Evitar incluir parámetros adicionales como identificadores, códigos de sesión entre otros. En resumen los URLs deben ser sencillos de recordar y deben indicar directamente el contenido que están alojando.</p><p>Ejemplos:</p><ul><li>Incorrecto: <code>http://blog.unijimpe.net/?p=1268</code></li><li>Correcto: <code>http://blog.unijimpe.net/depurar-flash-con-firebug/</code></li></ul><p><strong>Análisis de la etiqueta &lt;title&gt;</strong></p><p>Asegúrate que todas las páginas tengan títulos únicos y descriptivos. Recuerda que los títulos deben ser únicos pues de lo contrario los motores de búsqueda no distinguirán la diferencia entre las diferentes páginas. Deben ser descriptivos de forma que explique sin opción a dudas cual es el contenido de la página.</p><p>No es necesario incluir el nombre de tu marca en el titulo, pero si deciden hacerlo debe ser al final de titulo y con un carácter separador, esto para obtener mejores beneficios en el ranking de los buscadores. Además hay que verificar que los títulos deben ser de menos de 70 caracteres de longitud en lo posible.</p><p><strong>Análisis de los Metatags</strong></p><p>Revisa el metatag <strong>robots</strong> en todas las páginas de tu sitio. Ten en cuenta que si el metatag robots tiene asignado el valor <em>NoIndex</em> o <em>NoFollow</em> evitará que tu contenido sea indexado en los buscadores. El uso no intencionado de estos tags hará que el contenido no sea indexado. El siguiente código debe ser utilizado sólo cuando se quiera evitar que la página sea indexada, por ejemplo cuando el contenido es accesible sólo para usuarios registrados.</p><div class="syntax_hilite"><div id="html-8"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/meta.html"><span style="color: #000000;">&lt;meta</span></a> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">"robots"</span> <span style="color: #000066;">content</span>=<span style="color: #ff0000;">"noindex, nofollow"</span> /<span style="color: #000000;">&gt;</span></a></span></div></li></ol></div></div></div><p></p><p>También es necesario revisar que el metatag <strong>description</strong> sea único y contenga un resumen del contenido de la página. El contenido de este tag será mostrado en los resultados de la búsqueda por lo que ayuda a los usuarios a obtener una  idea del contenido de nuestra página. Si no puedes crear un resumen de la página elimina el metatag <em>description</em> y Google hará un resumen automático.</p><div class="syntax_hilite"><div id="html-9"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/meta.html"><span style="color: #000000;">&lt;meta</span></a> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">"description"</span> <span style="color: #000066;">content</span>=<span style="color: #ff0000;">"resumen del contenido de tu pagina "</span> /<span style="color: #000000;">&gt;</span></a></span></div></li></ol></div></div></div><p></p><p><strong>Analisis de robots.txt y sitemap.xml</strong></p><p>En el archivo <em>robots.txt</em> se incluye un listado de las páginas o archivos que incluir o bloquear según el tipo de buscador. Es necesario verificar que este archivo no contengan enlaces que deseamos sean indexadas.</p><p>El archivo <em>sitemap.xml</em> es un documento XML que contiene todas las rutas con su respecto intervalo de tiempo a rastrear que deseamos enviar a los buscadores. Revisar que todas nuestras páginas estén incluidas con el intervalo de tiempo adecuado.</p><p>Para analizar estos dos archivos pueden utilizar las herramientas de <a href="www.google.com/webmasters/tools/?hl=es">Google Webmaster Tools</a>.</p><p><strong>Análisis de Redirecciones</strong><br /> Los buscadores interpretan el contenido de nuestra página pero no interpretan javascript, por lo que las redirecciones se deben hacer utilizando headers a nivel de servidor de lo contrario los motores de búsqueda no llegarán a la página de destino. Además de ello si se hace una redirección esta debe ser del tipo 301 para indicar que el contenido ha sido movido definitivamente a la nueva dirección. También hay que evitar el uso excesivo de las redirecciones pues estas incrementan el tiempo de carga de la página debido al tiempo que se toman los servidores para resolver las direcciones.</p><p>Se puede utilizar la herramienta <a href="http://samples.unijimpe.net/redirect-viewer/">HTTP Redirect Viewer</a> para el análisis del tipo y cantidad de redirecciones.</p><p><strong>Análisis de las Enlaces Internos</strong></p><p>Revisa que las páginas no tengan enlaces excesivos. Google informa que se debe utilizar una máximo de 100 enlaces por cada página, por que debes incluir sólo las páginas que consideres mas importantes para no exceder es límite.</p><p>También es necesario verificar el uso correcto de los textos <em>anchor</em> en los enlaces internos. Esta es una oportunidad para informar a los usuarios y motores de búsqueda el contenido del enlace de destino, por lo cual debes elegir correctamente el texto del enlace.</p><div class="syntax_hilite"><div id="html-10"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #808080; font-style: italic;">&lt;!-- incorrecto --&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"contacto.php"</span><span style="color: #000000;">&gt;</span></a></span>Click Aquí<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #808080; font-style: italic;">&lt;!-- correcto --&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"contacto.php"</span><span style="color: #000000;">&gt;</span></a></span>Formulario de Contácto<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p>Tener en cuenta que Google no interpreta Javascript por lo cual los enlaces hechos de esta forma no serán interpretados y los buscadores nunca llegarán a la página de destino.</p><div class="syntax_hilite"><div id="html-11"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #808080; font-style: italic;">&lt;!-- incorrecto --&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"javascript:showContact();"</span><span style="color: #000000;">&gt;</span></a></span>Formulario de Contácto<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"#"</span> <span style="color: #000066;">onclick</span>=<span style="color: #ff0000;">"showContact();"</span><span style="color: #000000;">&gt;</span></a></span>Formulario de Contácto<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><span style="color: #808080; font-style: italic;">&lt;!-- correcto --&gt;</span></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"contacto.php"</span><span style="color: #000000;">&gt;</span></a></span>Formulario de Contácto<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p>Si tus visitantes pueden publicar comentarios u otro tipo de contenido que incluyan enlaces, utiliza el la propiedad <em>rel="nofollow"</em> para evitar que estemos enlazando a sitios de baja calidad o sitios de spam lo que afectaría negativamente nuestro posicionamiento.</p><div class="syntax_hilite"><div id="html-12"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"http://spam-site.com"</span> <span style="color: #000066;">rel</span>=<span style="color: #ff0000;">"nofollow"</span><span style="color: #000000;">&gt;</span></a></span>Spammer Site<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p><strong>Análisis del Tiempo de Carga</strong></p><p>Si el tiempo de carga de tu página es excesivo los motores de búsqueda lo considerarán como un factor en contra y en el peor caso no lo indexarán debido a la dificultad para acceder a nuestra información. Para hacer un análisis de la velocidad de carga se puede utilizar el plugin para Firebug <a href="http://developer.yahoo.com/yslow/">YSlow</a> o también la herramienta online <a href="http://pagespeed.googlelabs.com/">Page Speed Online de Google</a>.</p><p>Para resolver este problema, revisa que las imágenes de tu web no sean muy pesadas, utiliza los headers de expiración, minifica tus archivos <em>js</em> y <em>css</em>, utiliza <em>gzip</em> para enviar contenido. Para mas tips para acelerar la velocidad de carga pueden leer <a href="http://blog.unijimpe.net/optimizar-carga-de-paginas-web/">Optimizar Carga de Paginas Web</a>.</p><p><strong>Análisis del Código HTML</strong></p><p>Los motores de búsqueda interpretan nuestra página como un texto plano y los tags HTML indican la forma como debe ser interpretado, pero estos no pueden interpretar imágenes, vídeos, flash. Interpretan texto pero no tienen la capacidad de interpretar código Javascript por lo cual lo que vemos en pantalla no es necesariamente lo que puede ser interpretado por el motor de búsqueda.</p><p>Entonces hay que asegurarse que nuestro código HTML sea redactado adecuadamente y muestre al buscador el contenido correcto de nuestro web. Se puede hacer un análisis de como interpretan los buscadores una página con <a href="http://seoparser.com">SEO Parser</a> la cual esta en estado beta pero que permite hacer una análisis de como nos ven los buscadores.</p><p><strong>Mas Información</strong></p><ul><li><a href="http://www.amazon.com/Art-SEO-Theory-Practice/dp/0596518862">The Art of SEO</a> - Chapter IV: Auditing an Existing Site to Identify SEO Problems</li><li><a href="http://googlewebmastercentral.blogspot.com/2008/09/demystifying-duplicate-content-penalty.html">Demystifying the "duplicate content penalty"</a></li><li><a href="http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html">Specify your canonical </a></li><li><a href="http://www.google.com/support/webmasters/bin/answer.py?hl=es&#038;answer=96569">Acerca de rel="nofollow"</a></li><li><a href="http://blog.unijimpe.net/optimizar-carga-de-paginas-web/">Optimizar Carga de Paginas Web</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/tips-para-identificar-problemas-en-seo/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Factores que influyen en el SEO</title><link>http://blog.unijimpe.net/factores-que-influyen-en-el-seo/</link> <comments>http://blog.unijimpe.net/factores-que-influyen-en-el-seo/#comments</comments> <pubDate>Mon, 09 May 2011 04:16:15 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[Google]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[enlaces]]></category> <category><![CDATA[metatags]]></category> <category><![CDATA[nofollow]]></category> <category><![CDATA[yahoo]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1263</guid> <description><![CDATA[<p>Existen diversos factores que afectan el posicionamiento de una página web, en la experiencia de los webmasters se ha demostrado que algunos influyen más que otros y en algunos casos existen factores que influyen negativamente. &#8230;</p> Factores]]></description> <content:encoded><![CDATA[<p>Existen diversos factores que afectan el posicionamiento de una página web, en la experiencia de los webmasters se ha demostrado que algunos influyen más que otros y en algunos casos existen factores que influyen negativamente.</p><h3>Factores que afectan Positivamente</h3><p><strong>Keyword utilizado en la etiqueta &lt;title&gt;</strong></p><p>El texto utilizado dentro de la etiqueta <em>&lt;title&gt;</em> se muestra en la barra de estado del navegador y se utiliza como titulo en el resumen del resultado de búsqueda. Es considerado el factor mas influyente en el posicionamiento. Si el titulo contiene el keyword que esta buscando el usuario hay mas probabilidad de aparecer en las primeras posiciones.</p><p>Recomendaciones:</p><ul><li>No dejar páginas sin titulo como: "Untitled Page" o "Untitled Document".</li><li>El titulo debe ser descriptivo y describir completamente el contenido de la página.</li><li>Colocar títulos distintos a cada página, por ejemplo "Contáctenos - unijimpe".</li></ul><p><strong>Texto utilizado en los enlaces</strong></p><p>El texto utilizado en los enlaces es una descripción del contenido que se esta enlazando. Si existen enlaces desde diferentes dominios que contienen un mismo keyword es una fuerte indicador del contenido de un web. Es por ello que conseguir enlaces desde otras páginas con el texto adecuado es importante para posicionar una página en los primeros lugares.</p><p>Recomendaciones:</p><ul><li>Evitar crear enlaces del tipo <a href="#">Click Aquí</a> en su lugar se debe utilizar <a href="#">Contáctenos</a>.</li><li>Evitar utilizar javascript en la propiedad "href" del enlace, los buscadores no pueden seguirla.</li><li>Si se utiliza la propiedad <em>rel="nofollow"</em> los enlaces no son seguidos por Google.</li></ul><p><strong>Estructura de enlaces</strong></p><p>Si se utiliza una estructura de enlaces limpia, que sea descriptiva de la sección donde nos encontramos y que contengan las palabras clave del contenido, tendremos mejores opciones para posicionar nuestro contenido. Por ejemplo en lugar de tener un enlace de la forma: <em>producto.php?id=25</em> es mejor reemplazarlo por <em>product/macbook-pro-13/</em> donde es obvio que estamos revisando la sección productos y especificamente un Macbook Pro de 13 pulgadas.</p><p><strong>Autoridad Global del Sitio</strong></p><p>Esto es la cantidad de enlaces que tiene el sitio web desde otros dominios. Si un sitio es considerado de gran autoridad el contenido de estas páginas aparecerán entre los primeros resultados de búsqueda. Para tener una idea de la autoridad de un sitio se puede ver el <a href="http://samples.unijimpe.net/pagerank/">Pagerank</a> de la página principal del dominio también utilizando <a href="https://siteexplorer.search.yahoo.com/">Yahoo Site Explorer</a> donde se puede conocer la cantidad de links entrantes.</p><p><strong>Edad del Sitio</strong></p><p>El tiempo del sitio es una señal de la importancia de un web. Un sitio que tiene 8 años se considera mas importante que un sitio creado hace 3 meses. Algunos señalan que la fecha de expiración del dominio también es importante por lo cual registran el dominio por varios años.</p><p><strong>Popularidad del enlace en la estructura interna del Site</strong></p><p>En la estructura interna de enlaces hay algunos que son mas importantes, esto es por la cantidad de enlaces que tienen dentro del mismo web. Así una pagina que tenga un enlace solo desde la sección contacto y no de las demás tienes menos importancia que los otros enlaces.</p><p><strong>Relevancia tópica de los enlaces entrantes</strong></p><p>Si los enlaces entrantes vienen desde otros sitios que tienen relevancia, entonces es mas probable que este contenido aparezca en los primeros resultados de la búsqueda. Estos enlaces se consiguen creando contenido de calidad de modo que otros sitios nos enlazarán como referencia.</p><p><strong>Keyword utilizado en el contenido</strong></p><p>Los motores de búsqueda analizan el contenido de nuestra página y si la palabra clave que busca un usuario se encuentra en el contenido de nuestra página entonces apareceremos en el resultado de las búsquedas.</p><h3>Factores que afectan Negativamente</h3><p><strong>Servidor inaccesible a los buscadores</strong></p><p>Si tu servidor web esta inaccesible (en determinados momentos) y el motor de búsqueda intenta acceder, entonces no se podrá indexar el contenido. Por lo cual es recomendable contratar un hosting de calidad  que nos ofrezca un porcentaje alto de <em>uptime</em>.</p><p><strong>Contenido similar o duplicado de otras páginas</strong></p><p>Si el contenido de nuestra página es muy semejante o copiado de otros sitios, el buscador lo catalogará como contenido duplicado por lo cual la pagina con el contenido original aparecerá en los primeros lugares mientras que el duplicado será relegado a las ultimas posiciones.</p><p><strong>Enlaces externos de baja calidad o de sitios de spam</strong></p><p>Si nuestro web tiene enlaces desde sitios considerados como <em>spamers</em> es una señal que estamos trabajando con técnicas de spam por cual esto afectará negativamente para nuestro posicionamiento.</p><p><strong>Compra de enlaces</strong></p><p>La compra de enlaces es una técnica penalizada por los buscadores ya que intenta manipular el posicionamiento natural. Los buscadores detectan la compra de enlaces por ejemplo por el incremento abrupto de enlaces entrantes, es por ello que no es recomendable comprar enlaces o hacerlos utilizando la propiedad <em>rel="nofollow"</em>.</p><p><strong> Títulos y/o metatags duplicados</strong></p><p>Si colocamos varias páginas con el mismo <em>title</em> y <em>metatags</em> los buscadores no distinguirán que tipo de contenido tiene cada página e incluso cual es la página principal. Es por ello que hay que tener cuidado cuando se redacten estos parámetros.</p><p><strong>Mas Información</strong></p><ul><li><a href="http://www.seomoz.org/article/search-ranking-factors">Search Engine Ranking Factors | SEOmoz</a></li><li><a href="http://www.google.com/support/webmasters/bin/answer.py?answer=35769">Webmaster Guidelines - Webmaster Tools Help</a></li><li><a href="http://www.searchengineoptimizationjournal.com/2010/01/14/google-ranking-factors/">Top Ten Google SEO Ranking Factors</a></li><li><a href="http://www.amazon.com/Art-SEO-Theory-Practice/dp/0596518862">The Art of SEO</a> - Chapter II: Analyzing Ranking Factors</li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/factores-que-influyen-en-el-seo/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>HTTP Redirect Viewer</title><link>http://blog.unijimpe.net/http-redirect-viewer/</link> <comments>http://blog.unijimpe.net/http-redirect-viewer/#comments</comments> <pubDate>Sun, 23 May 2010 20:50:29 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[iPhone]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[Servicios Web]]></category> <category><![CDATA[301]]></category> <category><![CDATA[302]]></category> <category><![CDATA[canonicalización]]></category> <category><![CDATA[headers]]></category> <category><![CDATA[http]]></category> <category><![CDATA[redirect]]></category> <category><![CDATA[user agent]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1175</guid> <description><![CDATA[<p><a href="http://samples.unijimpe.net/redirect-viewer/">HTTP Redirect Viewer</a> es un herramienta que te permitirá visualizar todas las redirecciones que se hacen en una determinada URL dependiendo del <em>User Agent</em> que se puede seleccionar. Esto es útil para verificar el tipo de &#8230;</p>]]></description> <content:encoded><![CDATA[<p><a href="http://samples.unijimpe.net/redirect-viewer/">HTTP Redirect Viewer</a> es un herramienta que te permitirá visualizar todas las redirecciones que se hacen en una determinada URL dependiendo del <em>User Agent</em> que se puede seleccionar. Esto es útil para verificar el tipo de redirección que estamos aplicando a nuestros proyectos y probar el funcionamiento dependiendo del navegador con que se accede.</p><p><a href="http://samples.unijimpe.net/redirect-viewer/"><img src="http://blog.unijimpe.net/wp-content/uploads/2010/05/http-redirect-viewer1.jpg" alt="" title="http-redirect-viewer" width="480" height="395" /></a></p><p><strong>Características</strong></p><p>Entre las principales características de esta herramienta podemos mencionar:</p><ul><li>Visualizar la cantidad y tipos de redirecciones (<em>301</em> y <em>302</em>).</li><li>Verificar el tipo de <em>canonicalización</em> de un dominio.</li><li>Verificar si el cambio de dominio se hace correctamente (Redirección 301).</li><li>Verificar el tipo de respuesta por navegador (Se puede seleccionar el <em>User Agent</em>).</li><li>Revisar que contenido se envía a los usuarios que acceden desde iPhone/iPad.</li><li>Se puede determinar que URL pueden ver el robot de Google.</li><li>Permite visualizar los headers de respuesta de un URL.</li><li>Permite visualizar el contenido de respuesta de un URL.</li></ul><p><strong>Ejemplos de Uso</strong></p><p>Analizamos la dirección <em>http://gmail.com</em> tendremos un total de 4 redirecciones (Tres del tipo 301 y una  del tipo 302). Obviamente esto no es optimo por la cantidad de redirecciones lo cual incrementa el tiempo de carga para el usuario.</p><p>Analizando la dirección <em>http://www.bajar-youtube.com</em> se tiene una sola redirección y del tipo 301 a la ruta final http://bajar-youtube.com lo cual indica que hay <em>canonicalización</em> (En este caso para no utilizar WWW en el dominio).</p><p>Esta herramienta fue escrita como complemento al artículo <a href="http://blog.unijimpe.net/como-hacer-redireccionamiento-301-y-302/">Como hacer redireccionamiento 301 y 302</a>, si tienen sugerencias u observaciones pueden dejarnos un comentario para tomarlo en cuenta para futuras versiones.</p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/http-redirect-viewer/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Como hacer redireccionamiento 301 y 302</title><link>http://blog.unijimpe.net/como-hacer-redireccionamiento-301-y-302/</link> <comments>http://blog.unijimpe.net/como-hacer-redireccionamiento-301-y-302/#comments</comments> <pubDate>Wed, 19 May 2010 06:05:01 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[301]]></category> <category><![CDATA[302]]></category> <category><![CDATA[apache]]></category> <category><![CDATA[canonicalización]]></category> <category><![CDATA[header]]></category> <category><![CDATA[htaccess]]></category> <category><![CDATA[redirección]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1169</guid> <description><![CDATA[<p>Redireccionar una página consiste en enviar al usuario de una dirección a otra. Existen dos tipos de redireccionamiento: <em>301</em> y <em>302</em>, cada uno para diferentes situaciones. Veamos como y cuando utilizar estos tipos para redireccionar &#8230;</p>]]></description> <content:encoded><![CDATA[<p>Redireccionar una página consiste en enviar al usuario de una dirección a otra. Existen dos tipos de redireccionamiento: <em>301</em> y <em>302</em>, cada uno para diferentes situaciones. Veamos como y cuando utilizar estos tipos para redireccionar de manera apropiada.</p><p><strong>Tipos de Redirección</strong></p><p>Existen dos tipos de redireccionamiento que podemos utilizar, los dos le cambian de dirección a los visitantes pero se comportan de manera diferente para los buscadores, esto nos puede ayudar a mejorar nuestro posicionamiento si sabes cual emplear.</p><ul><li><strong>Redirección 301</strong>: Indica una redirección <em>permanente</em>.<br />Esto le indica a los buscadores que ignoren la dirección original e indexen la nueva dirección. Este tipo de redirección se utiliza cuando estamos cambiando de dominio a una web, esto haría que los buscadores indexen la nueva dirección sin perder los enlaces entrantes que tenía el dominio y sin perder el pagerank.</li><li><strong>Redirección 302</strong>: Indica una redirección <em>temporal</em>.<br />Esto indica que la dirección original no ha cambiado y se seguirá utilizando pero temporalmente cambiaremos de dirección.</li></ul><p><strong>Redireccionamiento con PHP</strong></p><p>Para redireccionar en PHP se utiliza la función <em>header</em>, por defecto esto crea una redirección del tipo 302, indicando un cambio de dirección temporal, mientras que para hacer una redirección del tipo 301 es necesario agregar un header adicional.</p><p>Para hacer una redirección <strong>302</strong>.</p><div class="syntax_hilite"><div id="php-20"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><a href="http://www.php.net/header"><span style="color:#000066;">header</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"Location: /users/home.php"</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p>Para hacer una redirección <strong>301</strong>.</p><div class="syntax_hilite"><div id="php-21"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><a href="http://www.php.net/header"><span style="color:#000066;">header</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"HTTP/1.1 301 Moved Permanently"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><a href="http://www.php.net/header"><span style="color:#000066;">header</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"Location: http://newdomain.com"</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p><strong>Redireccionamiento con .htaccess</strong></p><p>Las redirecciones también se pueden hacer con el servidor web Apache utilizando el archivo <em>.htaccess</em> el cual esta ubicado en la carpeta principal del servidor.</p><p>Para hacer una redirección <strong>302</strong>.</p><div class="syntax_hilite"><div id="code-22"><div class="code"><ol><li style="color:#3A6A8B;"><div style="">redirect <span style="color:#800000;color:#800000;">302</span> /download/ /files/tubeplayer-<span style="color:#800000;color:#800000;">1</span>.<span style="color:#800000;color:#800000;">2</span>.<span style="">zip</span></div></li></ol></div></div></div><p></p><p>Para hacer una redirección <strong>301</strong>.</p><div class="syntax_hilite"><div id="code-23"><div class="code"><ol><li style="color:#3A6A8B;"><div style="">redirect <span style="color:#800000;color:#800000;">301</span> / http:<span style="color:#FF9933; font-style:italic;">//newdomain.com </span></div></li></ol></div></div></div><p></p><p><strong>Cambiar de dominio</strong></p><p>Si hemos decidido cambiar nuestra web a un nuevo dominio, haremos una redirección 301 con .htaccess de forma que nuestros visitantes vean todas las páginas en el nuevo dominio y los buscadores lo indexen sin perder pagerank.</p><div class="syntax_hilite"><div id="code-24"><div class="code"><ol><li style="color:#3A6A8B;"><div style="">Redirect <span style="color:#800000;color:#800000;">301</span> <span style="color:#006600;">&#40;</span>.*<span style="color:#006600;">&#41;</span> http:<span style="color:#FF9933; font-style:italic;">//newdomain.com/$1 </span></div></li></ol></div></div></div><p></p><p><strong>Redireccionar a WWW</strong></p><p>Si tenemos un dominio y deseamos que cuando se acceda a http://mydomain.com esta cambie a http://www.mydomain.com (Esto es llamado <em>canonicalización</em> y evita el contenido duplicado en los buscadores) podemos utilizar el siguiente código en .htaccess.</p><div class="syntax_hilite"><div id="code-25"><div class="code"><ol><li style="color:#3A6A8B;"><div style="">RewriteEngine On</div></li><li style="color:#26536A;"><div style="">RewriteCond %<span style="color:#006600;">&#123;</span>HTTP_HOST<span style="color:#006600;">&#125;</span> ^mydomain\.<span style="">com</span>$</div></li><li style="color:#3A6A8B;"><div style="">RewriteRule <span style="color:#006600;">&#40;</span>.*<span style="color:#006600;">&#41;</span> http:<span style="color:#FF9933; font-style:italic;">//www.mydomain.com/$1 [R=301,L] </span></div></li></ol></div></div></div><p></p><p><strong>Redireccionar a no-WWW</strong></p><p>Ahora podemos elegir que nuestra dirección no contenga el término www. Para ello utilizamos la segunda forma de canonicalización al redirigir desde http://www.mydomain.com hasta http://mydomain.com.</p><div class="syntax_hilite"><div id="code-26"><div class="code"><ol><li style="color:#3A6A8B;"><div style="">RewriteEngine On</div></li><li style="color:#26536A;"><div style="">RewriteCond %<span style="color:#006600;">&#123;</span>HTTP_HOST<span style="color:#006600;">&#125;</span> !^mydomain\.<span style="">com</span>$</div></li><li style="color:#3A6A8B;"><div style="">RewriteRule <span style="color:#006600;">&#40;</span>.*<span style="color:#006600;">&#41;</span> http:<span style="color:#FF9933; font-style:italic;">//mydomain.com/$1 [R=301,L] </span></div></li></ol></div></div></div><p></p><p><strong>Mas Información</strong></p><ul><li><a href="http://en.wikipedia.org/wiki/URL_redirection">Wikipedia: URL redirection</a></li><li><a href="http://www.faqs.org/rfcs/rfc2616.html">Hypertext Transfer Protocol -- HTTP/1.1</a></li><li><a href="http://php.net/manual/en/function.header.php">PHP manual: header</a></li><li><a href="http://www.askapache.info//2.3/misc/rewriteguide.html">Apache: URL Rewriting Guide</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/como-hacer-redireccionamiento-301-y-302/feed/</wfw:commentRss> <slash:comments>15</slash:comments> </item> <item><title>Optimizar Carga de Paginas Web</title><link>http://blog.unijimpe.net/optimizar-carga-de-paginas-web/</link> <comments>http://blog.unijimpe.net/optimizar-carga-de-paginas-web/#comments</comments> <pubDate>Tue, 29 Dec 2009 05:16:59 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Optimización Web]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[optimizacion]]></category> <category><![CDATA[rendimiento]]></category> <category><![CDATA[velocidad]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1130</guid> <description><![CDATA[<p>La optimización de los sitios web es un punto muy importante para mejorar el rendimiento de cualquier sitio web. Según el libro <a href="http://www.amazon.com/High-Performance-Web-Sites-Essential/dp/0596529309/">High Performance Web Sites: Essential Knowledge for Front-End Engineers</a> de Steve Souders, basado en &#8230;</p>]]></description> <content:encoded><![CDATA[<p>La optimización de los sitios web es un punto muy importante para mejorar el rendimiento de cualquier sitio web. Según el libro <a href="http://www.amazon.com/High-Performance-Web-Sites-Essential/dp/0596529309/">High Performance Web Sites: Essential Knowledge for Front-End Engineers</a> de Steve Souders, basado en los estudios hechos por el equipo de optimización de Yahoo han llegado a definir una regla:</p><blockquote><p> Sólo el <strong>10-20%</strong> del tiempo de respuesta se utiliza en descargar el documento HTML. <br />El otro <strong>80-90%</strong> está empleado en descargar todos los componentes en la página.</p></blockquote><p>Esto significa que si logramos optimizar la carga de todos los elementos de la pagina web, tendríamos el 80% de la velocidad de carga bajo nuestro control, con el consiguiente aumento considerable en la velocidad de carga de una web.</p><p><img src="http://blog.unijimpe.net/wp-content/uploads/2009/12/firebug.jpg" alt="" title="firebug" width="400" height="280" class="alignnone size-full wp-image-1131" /></p><p><strong>Reglas para Optimización</strong></p><p>Para acelerar la carga de las paginas web podemos seguir algunas reglas que hemos recopilado de <a href="http://developer.yahoo.com/performance/">Exceptional Performance</a> de Yahoo y de <a href="http://code.google.com/speed/page-speed/docs/rules_intro.html">Web Performance Best Practices</a> de Google.</p><ul><li><strong>Reducir las peticiones HTTP</strong><br />Reduciendo la cantidad de elementos externos a nuestra página podemos reducir el tiempo de carga, para ello podemos combinar archivos JS, CSS, utilizar sprites para los botones, etc.</li><li><strong>Agregar headers de Expiración</strong><br />Agregando los headers indicando cuando expiran los archivos evitaremos la carga innecesaria de archivos que ya han sido cargados.</li><li><strong>Utilizar compresión Gzip</strong><br />Al comprimir los archivos con gzip antes de enviarlos al browser conseguiremos disminuir la cantidad de datos a transmitir.</li><li><strong>Colocar los Estilos en el Header</strong><br />Se recomienda colocar los archivos de estilos en el header para que se carguen primero y renderear rápidamente el web.</li><li><strong>Colocar los Scripts en el Footer</strong><br />Cuando se carga un archivo JS, este bloquea la carga de otros archivos hasta que se complete la carga, si el archivo JS es pesada hará que nuestra página se vea en blanco mientras se carga el Javascript.</li><li><strong>Poner Javascript y CSS en archivos externos</strong><br />Al colocar en archivos externos los javascripts y hojas de estilos, en la primera vez cargaremos estos archivos y en la siguientes peticiones las leeremos del cache del browser.</li><li><strong>Reducir las búsquedas DNS</strong><br />Se recomienda no utilizar varios dominios en la carga de los elementos del web, por cada dominio habrá un tiempo para resolver la dirección IP.</li><li><strong>Minificar archivos Javascript y CSS</strong><br />Minificar es eliminar los espacios en blanco y los saltos de linea innecesarios, minificar ayuda a reducir el tamaño de los archivos.</li><li><strong>Evitar las Redirecciones</strong><br />El hacer una redirección toma un tiempo para resolver el URL de destino, utilizar correctamente los tipos de redirecciones ayudará a mantener rápida la carga de nuestras paginas.</li><li><strong>Configurar los eTags</strong><br />Los eTags se agregan en los header para indicar si el archivo se ha modificado, para ello se compara el valor del eTag guardado en el browser con el eTag del archivo en el servidor.</li><li><strong>Remover Scripts duplicados</strong><br />Al eliminar los scripts duplicados conseguiremos disminuir la carga de nuestros archivos.</li><li><strong>Optimizar las Imagenes</strong><br />Podemos optimizar las imágenes, para ello hay que escoger adecuadamente el formato del archivo de imagen para reducir el tamaño del archivo.</li><li><strong>Utilizar dominios libre de Cookies</strong><br />Es recomendable colocar las imagenes, js y css en dominios que no utilizen cookies, esto ayudará a disminuir el trafico de contenido.</li></ul><p><strong>Herramientas para la Optimización</strong></p><p>Existen herramientas que nos pueden ayudar a hacer un diagnostico del estado de optimización de nuestra página, ello nos dará una guia de lo que podemos optimizar para mejorar la velocidad de nuestra web.</p><ul><li><a href="http://getfirebug.com/">Firebug</a><br />Firebug es el complemento básico para todo desarrollador web, esta extensión permite ver todos los archivos que se cargan con la pagina y los tiempos de carga.</li><li><a href="http://developer.yahoo.com/yslow/">YSlow</a><br />Este es una extensión para Firebug creada por Yahoo que permite hacer un diagnostico de la velocidad de carga de una pagina basado en reglas definidas por YSlow.</li><li><a href="http://code.google.com/speed/page-speed/ ">Page Speed</a><br />Este plugin creado por Google permite diagnosticar que puntos de nuestra web podemos mejorar para acelerar la carga de nuestras paginas.</li></ul><p><img src="http://blog.unijimpe.net/wp-content/uploads/2009/12/yslow.jpg" alt="" title="yslow" width="400" height="248" class="alignnone size-full wp-image-1132" /></p><p><strong>Mas Información</strong><br /> Hay mucha información y muy bien documentada de todas las formas para optimizar nuestras paginas.</p><ul><li><a href="http://www.amazon.com/High-Performance-Web-Sites-Essential/dp/0596529309/">High Performance Web Sites: Essential Knowledge for Front-End Engineers</a></li><li><a href="http://developer.yahoo.com/performance/rules.html">Best Practices for Speeding Up Your Web Site</a></li><li><a href="http://yuiblog.com/blog/2006/11/28/performance-research-part-1/">Performance Research, Part 1: What the 80/20 Rule Tells Us about Reducing HTTP Requests</a></li><li><a href="http://code.google.com/speed/page-speed/docs/rules_intro.html">Web Performance Best Practices</a></li></ul><p>En futuros posts desarrollaremos uno a unos los puntos mencionados para optimizar nuestras páginas, las pondremos en práctica y analizaremos algunos casos prácticos.</p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/optimizar-carga-de-paginas-web/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>Facelift: Reemplaza texto por imagenes</title><link>http://blog.unijimpe.net/facelift-reemplaza-texto-por-imagenes/</link> <comments>http://blog.unijimpe.net/facelift-reemplaza-texto-por-imagenes/#comments</comments> <pubDate>Fri, 23 Oct 2009 06:21:22 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[HTML]]></category> <category><![CDATA[Javascript]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[CSS]]></category> <category><![CDATA[PHP]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1112</guid> <description><![CDATA[<p><a href="http://facelift.mawhorter.net/learn-more/">Facelift</a> es una librería PHP/Javascript que permite reemplazar dinámicamente textos por imágenes, con lo cual podemos mostrar cualquier tipografía en nuestra web. Esto permite que los usuarios puedan ver texto con tipografías especiales mientras que los &#8230;</p>]]></description> <content:encoded><![CDATA[<p><a href="http://facelift.mawhorter.net/learn-more/">Facelift</a> es una librería PHP/Javascript que permite reemplazar dinámicamente textos por imágenes, con lo cual podemos mostrar cualquier tipografía en nuestra web. Esto permite que los usuarios puedan ver texto con tipografías especiales mientras que los buscadores interpretarán este contenido como texto plano con lo cual mantenemos nuestro sitio optimizado para los buscadores.</p><p><a href="http://facelift.mawhorter.net/learn-more/"><img src="http://blog.unijimpe.net/wp-content/uploads/2009/10/facelift.jpg" alt="facelift" title="facelift" width="157" height="70" /></a></p><p><strong>Utilizando Facelift</strong><br /> <em>Facelift</em> consta de un javascript que se encarga de reemplazar un texto por una imágen que es generada dinámicamente por un PHP en el servidor. Para utilizar esta librería primero <a href="http://facelift.mawhorter.net/download/?latest=true">descargamos la ultima versión</a>, extraemos los archivos y copiamos el contenido en una carpeta llamada '<em>flir</em>' de nuestro servidor.</p><p><a href="http://samples.unijimpe.net/facelift/"><img src="http://blog.unijimpe.net/wp-content/uploads/2009/10/facelift-demo.jpg" alt="facelift-demo" title="facelift-demo" width="450" height="211" /></a></p><p><strong>Configurar las Fuentes</strong><br /> A continuación configuramos la librería en donde incluimos las tipografías que utilizaremos, para ello editamos el archivo <em>config-flir.php</em> en donde colocamos la lista de tipografías disponibles.</p><div class="syntax_hilite"><div id="php-32"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$fonts</span> = <a href="http://www.php.net/array"><span style="color:#000066;">array</span></a><span style="color:#006600;">&#40;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$fonts</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'wanta'</span><span style="color:#006600;">&#93;</span>&nbsp; &nbsp; &nbsp; = <span style="color:#FF0000;">'wanta_091.ttf'</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$fonts</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'aorange'</span><span style="color:#006600;">&#93;</span>&nbsp; &nbsp; = <span style="color:#FF0000;">'AgentOrange.ttf'</span>;</div></li></ol></div></div></div><p></p><p>Estas tipografías deben estar en la carpeta <em>fonts</em> y en formato <em>.ttf</em>, puedes encontrar fuentes gratuitas para descargar en <a href="http://www.webpagepublicity.com/free-fonts.html">http://www.webpagepublicity.com/free-fonts.html </a>.</p><p><strong>Configurar el HTML</strong><br /> El siguiente paso es incluir el archivo <em>flir.js</em> en el header de nuestro html</p><div class="syntax_hilite"><div id="html-33"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"flir/flir.js"</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Luego aplicamos <em>Facelift</em>, para ello definimos la carpeta donde se ubica la librería y a continuación asignamos las tipografía utilizando el método <em>FLIR.replace</em> en donde definimos a que elementos del html se aplicarán.</p><div class="syntax_hilite"><div id="html-34"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; FLIR.init( { path: 'flir/' } );</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; FLIR.replace( 'h2', new FLIRStyle({ cFont:'aorange' }) );</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; FLIR.replace( 'h3', new FLIRStyle({ cFont:'wanta' }) );</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Este código lo colocamos justo antes del tag <em>&lt;/body&gt;</em>. En el ejemplo estamos asignando a todos los elementos <strong>h2</strong> la tipografía <em>Agent Orange</em> y a los elementos <strong>h3</strong> la fuente <em>Wanta 091</em>.</p><p><strong>Personalizando los Textos</strong><br /> Para cambiar el tamaño, color y alineación de los textos generados lo podemos hacer mediante estilos, para ello creamos los CSS de acuerdo a nuestras necesidades, para nuestro ejemplo podríamos tener:</p><div class="syntax_hilite"><div id="css-35"><div class="css"><ol><li style="color:#3A6A8B;"><div style="">h2 <span style="color: #66cc66;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color: #000000;">font-size</span>: 24px;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color: #000000;">color</span>: #06C;</div></li><li style="color:#26536A;"><div style=""><span style="color: #66cc66;">&#125;</span></div></li><li style="color:#3A6A8B;"><div style="">h3 <span style="color: #66cc66;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color: #000000;">font-size</span>: 15px;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color: #000000;">color</span>: #C06;</div></li><li style="color:#26536A;"><div style=""><span style="color: #66cc66;">&#125;</span></div></li></ol></div></div></div><p></p><p><strong>Uniendo Todo</strong><br /> Uniendo todos estos elementos tendríamos el siguiente código para generar nuestras imágenes dinámicamente. El resultado del ejemplo lo pueden ver en <a href="http://samples.unijimpe.net/facelift/">http://samples.unijimpe.net/facelift/</a>.</p><div class="syntax_hilite"><div id="html-36"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/html.html"><span style="color: #000000;">&lt;html&gt;</span></a></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/head.html"><span style="color: #000000;">&lt;head&gt;</span></a></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/title.html"><span style="color: #000000;">&lt;title&gt;</span></a></span>Facelift Demo<span style="color: #009900;"><span style="color: #000000;">&lt;/title&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"flir/flir.js"</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/style.html"><span style="color: #000000;">&lt;style</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/css"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><span style="color: #808080; font-style: italic;">&lt;!--</span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #808080; font-style: italic;">h2 {</span></div></li><li style="color:#26536A;"><div style=""><span style="color: #808080; font-style: italic;">&nbsp; &nbsp; font-size: 24px;</span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #808080; font-style: italic;">&nbsp; &nbsp; color: #06C;</span></div></li><li style="color:#26536A;"><div style=""><span style="color: #808080; font-style: italic;">&nbsp; &nbsp; font-weight: bold;</span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #808080; font-style: italic;">}</span></div></li><li style="color:#26536A;"><div style=""><span style="color: #808080; font-style: italic;">h3 {</span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #808080; font-style: italic;">&nbsp; &nbsp; font-size: 15px;</span></div></li><li style="color:#26536A;"><div style=""><span style="color: #808080; font-style: italic;">&nbsp; &nbsp; font-weight: bold;</span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #808080; font-style: italic;">&nbsp; &nbsp; color: #C06;</span></div></li><li style="color:#26536A;"><div style=""><span style="color: #808080; font-style: italic;">}</span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #808080; font-style: italic;">--&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/style&gt;</span></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/head&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/body.html"><span style="color: #000000;">&lt;body&gt;</span></a></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #808080; font-style: italic;">&lt;!-- contenido html --&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; FLIR.init( { path: 'flir/' } );</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; FLIR.replace( 'h2', new FLIRStyle({ cFont:'aorange' }) );</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; FLIR.replace( 'h3', new FLIRStyle({ cFont:'wanta' }) );</div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/body&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/html&gt;</span></span></div></li></ol></div></div></div><p></p><p>Con esto tenemos nuestra pagina personalizada con las fuentes que nosotros deseamos, eso te traduce en una web con mejor calidad visual si perder la optimización para los buscadores</p><p style="text-align:left;"><a href="http://blog.unijimpe.net/download/facelift.zip" title="Facelift"><img src="http://blog.unijimpe.net/btdown.png" border="0"></a></p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/facelift-reemplaza-texto-por-imagenes/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>PHP PageRank Checker</title><link>http://blog.unijimpe.net/php-pagerank-checker/</link> <comments>http://blog.unijimpe.net/php-pagerank-checker/#comments</comments> <pubDate>Thu, 30 Jul 2009 03:20:30 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[class]]></category> <category><![CDATA[Google]]></category> <category><![CDATA[pagerank]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1068</guid> <description><![CDATA[<p>El <em>PageRank</em> (PR) en un valor (<em>De 0 a 10</em>) el cual es asignado por Google que representa la importancia que una página tiene en Internet. Fue desarrollado por los fundadores de Google, Larry &#8230;</p>]]></description> <content:encoded><![CDATA[<p>El <em>PageRank</em> (PR) en un valor (<em>De 0 a 10</em>) el cual es asignado por Google que representa la importancia que una página tiene en Internet. Fue desarrollado por los fundadores de Google, Larry Page y Sergey Brin, en la Universidad de Stanford.</p><p style="text-align:center;"><a href="http://samples.unijimpe.net/pagerank/"><img src="http://blog.unijimpe.net/wp-content/uploads/2009/07/php-pagerank.gif" alt="php-pagerank" title="php-pagerank" width="400" height="171" /></a></p><p><strong>Google Page Rank Checker</strong><br /> <a href="http://www.phpclasses.org/browse/package/2682.html">Google Page Rank Checker</a> es una clase creado por Emre Odabas el cual se conecta a los servidores de Google y obtiene el valor del PageRank de cualquier dominio. Esta clase es un sencilla de utilizar pues solo hace falta pasarle como parámetro el dominio que deseamos consultar.</p><p>Para utilizar esta clase, descargamos los archivos y copiamos el archivo <em>class.googlepr.php</em>, luego de ello incluimos este archivo en nuestro script, creamos una instancia de la clase <em>GooglePR</em> para finalmente utilizar el método <em>GetPR</em>.</p><div class="syntax_hilite"><div id="php-38"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#616100;">include_once</span><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"class.googlepr.php"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$pageRank</span> = <span style="color:#000000;">new</span> GooglePR<span style="color:#006600;">&#40;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$pageRank</span>-&gt;<span style="color:#006600;">debug</span> = <span style="color:#000000;">true</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$result</span> = <span style="color:#0000FF;">$pageRank</span>-&gt;<span style="color:#006600;">GetPR</span><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"http://blog.unijimpe.com/"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><a href="http://www.php.net/echo"><span style="color:#000066;">echo</span></a> <span style="color:#FF0000;">"PageRank : "</span> . <span style="color:#0000FF;">$result</span> .<span style="color:#FF0000;">"<span style="color:#000099;">\n</span>"</span>;</div></li></ol></div></div></div><p></p><p>Como pueden ver, es sencillo de utilizar es es muy rápida al momento de devolver los resultados. Ahora si le agregan un formulario, una imagen que muestre el PageRank de manera gráfica y finalmente una hoja de estilos podemos tener un script para consultar el Pagerank como el que hemos creado en <a href="http://samples.unijimpe.net/pagerank/">PHP PageRank Checker</a>.</p><p style="text-align:left;"><a href="http://blog.unijimpe.net/download/pagerank.zip" title="PHP Pagerank"><img src="http://blog.unijimpe.net/btdown.png" border="0"></a></p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/php-pagerank-checker/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>Crear Metatags con PHP</title><link>http://blog.unijimpe.net/crear-metatags-con-php/</link> <comments>http://blog.unijimpe.net/crear-metatags-con-php/#comments</comments> <pubDate>Tue, 28 Jul 2009 05:51:38 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[metatags]]></category> <category><![CDATA[posicionamiento]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=1064</guid> <description><![CDATA[<p>Los <em>metatags</em> con muy importantes en la optimización para los buscadores, mediante estos metatags podemos indicarle a los buscadores el contenido que tiene nuestra página. Crearemos funciones en PHP para generar dinámicamente los metatags <em>description</em> y &#8230;</p>]]></description> <content:encoded><![CDATA[<p>Los <em>metatags</em> con muy importantes en la optimización para los buscadores, mediante estos metatags podemos indicarle a los buscadores el contenido que tiene nuestra página. Crearemos funciones en PHP para generar dinámicamente los metatags <em>description</em> y <em>keywords</em>.</p><p style="text-align:center;"><a href="http://samples.unijimpe.net/metatags/"><img src="http://blog.unijimpe.net/wp-content/uploads/2009/07/metatags-generator.gif" alt="metatags-generator" title="metatags-generator" width="404" height="239" /></a></p><p><strong>Acerca de los Metatags</strong><br /> Los metatags mas importantes son description y keywords que sirven para mostrar el resumen de nuestra página en los buscadores como ya lo explicamos en <a href="http://blog.unijimpe.net/metatags-en-html/">MetaTags en HTML</a>.</p><div class="syntax_hilite"><div id="html-43"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/meta.html"><span style="color: #000000;">&lt;meta</span></a> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">"description"</span> <span style="color: #000066;">content</span>=<span style="color: #ff0000;">"Articulos, tutoriales y noticias acerca de PHP, ActionScript, WordPress. "</span> /<span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/meta.html"><span style="color: #000000;">&lt;meta</span></a> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">"keywords"</span> <span style="color: #000066;">content</span>=<span style="color: #ff0000;">"wordpress, php, actionscript, google, adsense, flash, thickbox"</span> /<span style="color: #000000;">&gt;</span></a></span></div></li></ol></div></div></div><p></p><p><strong>Función para Description</strong><br /> Este consiste en un resumen del contenido de la página y el cual no debe excederse de 250 caracteres, entonces crearemos una función que elimine las etiquetas de HTML y que luego cortamos el texto a 247 caracteres y concatenamos tres puntos al final.</p><div class="syntax_hilite"><div id="php-44"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#000000;">function</span> getMetaDescription<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/strip_tags"><span style="color:#000066;">strip_tags</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/trim"><span style="color:#000066;">trim</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/substr"><span style="color:#000066;">substr</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span>, <span style="color:#CC66CC;color:#800000;">0</span>, <span style="color:#CC66CC;color:#800000;">247</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#616100;">return</span> <span style="color:#0000FF;">$text</span>.<span style="color:#FF0000;">"..."</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#006600;">&#125;</span></div></li></ol></div></div></div><p></p><p><strong>Función para Keywords</strong><br /> Para obtener las palabras clave o keywords primero limpiamos el texto, luego extraemos todas las palabras a un array para luego contar uno a uno la cantidad de veces que se repite, omitiendo las palabras de menos de tres caracteres. Luego ordenamos el array por la cantidad de veces que repite la palabra para finalmente mostrar los 10 primeras separadas por comas.</p><div class="syntax_hilite"><div id="php-45"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#000000;">function</span> getMetaKeywords<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// Limpiamos el texto</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/strip_tags"><span style="color:#000066;">strip_tags</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/strtolower"><span style="color:#000066;">strtolower</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/trim"><span style="color:#000066;">trim</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$text</span> = <a href="http://www.php.net/preg_replace"><span style="color:#000066;">preg_replace</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">'/[^a-zA-Z0-9 -]/'</span>, <span style="color:#FF0000;">' '</span>, <span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// extraemos las palabras</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$match</span> = <a href="http://www.php.net/explode"><span style="color:#000066;">explode</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">" "</span>, <span style="color:#0000FF;">$text</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// contamos las palabras </span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$count</span> = <a href="http://www.php.net/array"><span style="color:#000066;">array</span></a><span style="color:#006600;">&#40;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#616100;">if</span> <span style="color:#006600;">&#40;</span><a href="http://www.php.net/is_array"><span style="color:#000066;">is_array</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$match</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#616100;">foreach</span> <span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$match</span> <span style="color:#616100;">as</span> <span style="color:#0000FF;">$key</span> =&gt; <span style="color:#0000FF;">$val</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#616100;">if</span> <span style="color:#006600;">&#40;</span><a href="http://www.php.net/strlen"><span style="color:#000066;">strlen</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$val</span><span style="color:#006600;">&#41;</span>&gt; <span style="color:#CC66CC;color:#800000;">3</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#616100;">if</span> <span style="color:#006600;">&#40;</span><a href="http://www.php.net/isset"><span style="color:#000066;">isset</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$count</span><span style="color:#006600;">&#91;</span><span style="color:#0000FF;">$val</span><span style="color:#006600;">&#93;</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#0000FF;">$count</span><span style="color:#006600;">&#91;</span><span style="color:#0000FF;">$val</span><span style="color:#006600;">&#93;</span>++;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#006600;">&#125;</span> <span style="color:#616100;">else</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#0000FF;">$count</span><span style="color:#006600;">&#91;</span><span style="color:#0000FF;">$val</span><span style="color:#006600;">&#93;</span> = <span style="color:#CC66CC;color:#800000;">1</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#006600;">&#125;</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#006600;">&#125;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#006600;">&#125;</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#006600;">&#125;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// Ordenamos los totales</span></div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <a href="http://www.php.net/arsort"><span style="color:#000066;">arsort</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$count</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$count</span> = <a href="http://www.php.net/array_slice"><span style="color:#000066;">array_slice</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$count</span>, <span style="color:#CC66CC;color:#800000;">0</span>, <span style="color:#CC66CC;color:#800000;">10</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#616100;">return</span> <a href="http://www.php.net/implode"><span style="color:#000066;">implode</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">", "</span>, <a href="http://www.php.net/array_keys"><span style="color:#000066;">array_keys</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$count</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#006600;">&#125;</span></div></li></ol></div></div></div><p></p><p>Luego si tenemos el texto que vamos a mostrar en nuestra página que por ejemplo extraemos de nuestra base de datos generamos los metatags dinámicamente utilizando nuestras funciones recién creadas:</p><div class="syntax_hilite"><div id="php-46"><div class="php"><ol><li style="color:#3A6A8B;"><div style="">&lt;meta name=<span style="color:#FF0000;">"description"</span> content=<span style="color:#FF0000;">"&lt;?php echo getMetaDescription($text); ?&gt;"</span> /&gt;</div></li><li style="color:#26536A;"><div style="">&lt;meta name=<span style="color:#FF0000;">"keywords"</span> content=<span style="color:#FF0000;">"&lt;?php echo getMetaKeywords($text); ?&gt;"</span> /&gt;</div></li></ol></div></div></div><p></p><p>Pueden ver un ejemplo de uso de estas funciones en nuestro <a href="http://samples.unijimpe.net/metatags/">Metatags Generator</a>. Obviamente estas funciones se pueden mejorar, por ejemplo agregando un array con palabras comunes que no deseamos que se generen como keywords por ejemplo.</p><p style="text-align:left;"><a href="http://blog.unijimpe.net/download/metatags.zip" title="Metatags con PHP"><img src="http://blog.unijimpe.net/btdown.png" border="0"></a></p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/crear-metatags-con-php/feed/</wfw:commentRss> <slash:comments>17</slash:comments> </item> <item><title>Convertir texto en URL SEO</title><link>http://blog.unijimpe.net/convertir-texto-en-url-seo/</link> <comments>http://blog.unijimpe.net/convertir-texto-en-url-seo/#comments</comments> <pubDate>Tue, 18 Nov 2008 03:05:53 +0000</pubDate> <dc:creator>unijimpe</dc:creator> <category><![CDATA[General]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[buscador]]></category> <category><![CDATA[MySQL]]></category> <category><![CDATA[trabajo]]></category> <category><![CDATA[trim]]></category><guid isPermaLink="false">http://blog.unijimpe.net/?p=965</guid> <description><![CDATA[<p>Una de las tareas más comunes en el desarrollo de Web optimizada para los buscadores es el generar los URL en formato <strong>SEO</strong>, es decir que contengan el titulo, pero que no contengan tildes, comas, &#8230;</p>]]></description> <content:encoded><![CDATA[<p>Una de las tareas más comunes en el desarrollo de Web optimizada para los buscadores es el generar los URL en formato <strong>SEO</strong>, es decir que contengan el titulo, pero que no contengan tildes, comas, espacios en blanco. Esta vez les presentamos la forma de convertir los títulos en URLs  optimizadas para los buscadores.</p><p><strong>Implementando la text2url</strong><br /> A la función encargada de convertir un texto normal en formato URL la llamaremos <em>text2url</em>, implementaremos esta función en PHP. El primer paso es eliminar los espacios al inicio y al lcon la función <em>trim</em>, luego convertimos todo a minúsculas, luego limitamos los caracteres a números  y letras y convertimos los demás caracteres en guiones. Adicionalmente eliminamos los  saltos de línea, tabuladores y finalmente reemplazamos los espacios en blanco por un separador que en nuestro caso hemos asignado al guion (<em>-</em>).</p><div class="syntax_hilite"><div id="php-50"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#000000;">function</span> text2url<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$spacer</span> = <span style="color:#FF0000;">"-"</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$string</span> = <a href="http://www.php.net/trim"><span style="color:#000066;">trim</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$string</span> = <a href="http://www.php.net/strtolower"><span style="color:#000066;">strtolower</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$string</span> = <a href="http://www.php.net/trim"><span style="color:#000066;">trim</span></a><span style="color:#006600;">&#40;</span><a href="http://www.php.net/ereg_replace"><span style="color:#000066;">ereg_replace</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"[^ A-Za-z0-9_]"</span>, <span style="color:#FF0000;">" "</span>, <span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span>;&nbsp;</div></li><li style="color:#26536A;"><div style="">&nbsp;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$string</span> = <a href="http://www.php.net/ereg_replace"><span style="color:#000066;">ereg_replace</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"[ <span style="color:#000099;">\t</span><span style="color:#000099;">\n</span><span style="color:#000099;">\r</span>]+"</span>, <span style="color:#FF0000;">"-"</span>, <span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$string</span> = <a href="http://www.php.net/str_replace"><span style="color:#000066;">str_replace</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">" "</span>, <span style="color:#0000FF;">$spacer</span>, <span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;<span style="color:#0000FF;">$string</span> = <a href="http://www.php.net/ereg_replace"><span style="color:#000066;">ereg_replace</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"[ -]+"</span>, <span style="color:#FF0000;">"-"</span>, <span style="color:#0000FF;">$string</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp;<span style="color:#616100;">return</span> <span style="color:#0000FF;">$string</span>;&nbsp;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#006600;">&#125;</span></div></li></ol></div></div></div><p></p><p>Para hacer uso de esta función simplemente le pasamos como parámetro el texto que deseamos convertir a URL. Podemos ver un ejemplo de uso en el siguiente código.</p><div class="syntax_hilite"><div id="php-51"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$title</span> = <span style="color:#FF0000;">"MoFuse Versión movil de tu Web en Español"</span>;</div></li><li style="color:#26536A;"><div style=""><a href="http://www.php.net/echo"><span style="color:#000066;">echo</span></a> <span style="color:#0000FF;">$title</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#FF9933; font-style:italic;">// MoFuse Versión movil de tu Web en Español</span></div></li><li style="color:#26536A;"><div style=""><a href="http://www.php.net/echo"><span style="color:#000066;">echo</span></a> text2url<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$title</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#FF9933; font-style:italic;">// mofuse-versi-n-movil-de-tu-web-en-espa-ol </span></div></li></ol></div></div></div><p></p><p>Un ejemplo practico de de uso de esta función es el momento de guardar información en nuestra base de datos, por ejemplo si tenemos un tabla donde guardamos los datos de nuestros productos, la forma de insertar esta información incluyendo el URL sería de la forma:</p><div class="syntax_hilite"><div id="php-52"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$name</span> = <span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'name'</span><span style="color:#006600;">&#93;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$content</span> = <span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'content'</span><span style="color:#006600;">&#93;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$url</span> = text2url<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'name'</span><span style="color:#006600;">&#93;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$sql</span> = <span style="color:#FF0000;">"INSERT INTO products (name, content, url)</span></div></li><li style="color:#26536A;"><div style=""><span style="color:#FF0000;">&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;VALUES ('"</span>.<span style="color:#0000FF;">$name</span>.<span style="color:#FF0000;">"', '"</span>.<span style="color:#0000FF;">$content</span>.<span style="color:#FF0000;">"', '"</span>.<span style="color:#0000FF;">$url</span>.<span style="color:#FF0000;">"')"</span>;</div></li><li style="color:#3A6A8B;"><div style=""><a href="http://www.php.net/mysql_query"><span style="color:#000066;">mysql_query</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$insertSQL</span>, <span style="color:#0000FF;">$conn</span><span style="color:#006600;">&#41;</span> or <a href="http://www.php.net/die"><span style="color:#000066;">die</span></a><span style="color:#006600;">&#40;</span><a href="http://www.php.net/mysql_error"><span style="color:#000066;">mysql_error</span></a><span style="color:#006600;">&#40;</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p>Obviamente esta es una función básica que aunque cumple con los requisitos de crear URL amigables, se podría mejorar con la posibilidad de convertir la vocales tildadas o con diéresis en vocales normales, la cual con un poco de trabajo se puede implementar.</p><p style="text-align:left;"><a href="http://blog.unijimpe.net/download/text2url.zip" title="Text2URL"><img src="http://blog.unijimpe.net/btdown.png" border="0"></a></p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> ]]></content:encoded> <wfw:commentRss>http://blog.unijimpe.net/convertir-texto-en-url-seo/feed/</wfw:commentRss> <slash:comments>19</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced (User agent is rejected)
Database Caching using disk: basic

Served from: blog.unijimpe.net @ 2012-02-08 09:37:39 -->
