<?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>Eressea Solutions &#187; Wordpress-Themes</title>
	<atom:link href="http://www.eresseasolutions.com/tag/wordpress-themes/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.eresseasolutions.com</link>
	<description>Eressea Solutions es una empresa que brinda servicios y asesoramiento en soluciones tecnológicas que añadan valor y diferencien a su empresa.</description>
	<lastBuildDate>Thu, 05 Jan 2012 22:07: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>Cómo agregar BreadCrumb sin utilizar un plugin en WordPress</title>
		<link>http://www.eresseasolutions.com/tutoriales/how-to/como-agregar-breadcrumb-sin-utilizar-un-plugin-en-wordpress/</link>
		<comments>http://www.eresseasolutions.com/tutoriales/how-to/como-agregar-breadcrumb-sin-utilizar-un-plugin-en-wordpress/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 00:25:42 +0000</pubDate>
		<dc:creator>Rene Silva</dc:creator>
				<category><![CDATA[How to]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Wordpress-Themes]]></category>

		<guid isPermaLink="false">http://tutoriales.eresseasolutions.com/?p=63</guid>
		<description><![CDATA[Existen varias opciones para poder implementar los breadCrumbs en Wordpress, ya sea con plugins o sin ellos<div class="author-info related_articles">
	
<strong>También te recomendamos leer:</strong>
				<div class="related_article">
						

				<a href="http://www.eresseasolutions.com/recursos/herramientas/como-asegurar-y-hacer-mas-rapido-tu-blog-en-wordpress/" style="font-weight:700;" rel="bookmark" title="Link permanente a Cómo asegurar y hacer más rápido tu blog en WordPress">
					Cómo asegurar y hacer más rápido tu blog en WordPress				</a>
			
			
Nunca está demás darle un poco más de tiempo a tu instalación de Wordpress. En PV.M Garage publicaron una lista de sugerencias para poder hacer mucho más seguro y rápido nuestro blog de Wordpress

		</div>
				<!--<div class="clearfix"></div>-->
</div>
]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-74 img-first" src="http://www.eresseasolutions.com/files/breadcrumb.jpg?9d7bd4" alt="Bread Crumb IMG" width="218" height="117" />Los <strong>BreadCrumbs</strong> son esenciales en cualquier sitio ya que el usuario puede saber fácilmente donde se encuentra. Existen varias opciones para poder implementar los BreadCrumbs en WordPress, ya sea con plugins (<a href="http://wordpress.org/extend/plugins/breadcrumbs/">Yoast BreadCrumbs</a>) o sin ellos; pero el uso de plugins tiende a volver a WordPress mucho más lento (excluyendo a plugins de caché) es por eso que se debe tratar de utilizar la menor cantidad posible de plugins.</p>
<p>En EGRACE CREATIVE nos dieron un ejemplo claro de <a href="http://www.egracecreative.com/2009/07/08/add-breadcrumbs-to-wordpress-without-a-plugin/">cómo crear BreadCrumbs sin utilizar un plugin</a>. Este script utiliza la variable <strong>$_SERVER["REQUEST_URI"]</strong> (que nos devuelve algo parecido a &#8220;/categoria/nombre-del-post/&#8221;), la separa por los &#8220;/&#8221; que contiene. Al utilizarlo solemos tener algunas fallas cómo por ejemplo:</p>
<ul>
<li>No funciona correctamente al ser utilizado en una instalación WordPress dentro de una carpeta del tipo <strong>&#8220;www.example.com/blog&#8221;</strong></li>
<li>Problemas con los links en los comentarios del tipo <strong>&#8220;www.example.com/post-name/comment-page-1/#comment-1&#8243;</strong></li>
<li>El script está optimizado para permalinks del tipo <strong>&#8220;/%year%/%monthnum%/%day%/%postname%/&#8221;</strong></li>
<li>Este script no soporta las subcategorías produciendo links a páginas inexistentes <strong>&#8220;www.example.com/cat_1/sub_cat_1&#8243;</strong></li>
</ul>
<p>Por lo que modifiqué el código para una instalación de WordPress con los permalinks de tipo <strong>&#8220;/%category%/%postname%/&#8221;</strong> (que es uno de los más utilizados).</p>
<h2>Paso 1: Crear breadcrumbs.php</h2>
<p>Para poder utilizar este script debes crear un archivo llamado <strong>breadcrumbs.php</strong> en el directorio de tu theme y colocar el siguiente código en el archivo.</p>
<pre class="brush:php">&lt;div class="breadcrumbs"&gt;
&lt;?php
function breadcrumbs() {
	$url = get_bloginfo('url');
	$a = explode("/",$url);
	$b = explode("/",$_SERVER["REQUEST_URI"]);
	//intersección de arrays para poder quitar la URL
	$c = array_intersect($a, $b);
	$url_array = array_diff($b, $c);
	//quitamos el nombre del post del array
	array_pop($url_array);
	//para quitar las "/page/2"
	if(preg_match('@(/page/)([0-9])@',$_SERVER["REQUEST_URI"])) {
		array_pop($url_array); //quitamos sacar el "/2"
		array_pop($url_array); //quitamos sacar el "/page"
	}
	//para quitar los comentarios "/coment-page-"
	if(preg_match('/comment-page-/',$_SERVER["REQUEST_URI"]) || preg_match('/?/',$_SERVER["REQUEST_URI"])) {
		//sacamos el post ya que ya sacamos el comentario
		array_pop($url_array);
	}
	echo 'Estás en &lt;a href="'.$url.'/" rel="home"&gt;Inicio&lt;/a&gt;';
	$dir = $url.'/';
	if(is_single() || is_category()) {
		//algoritmo para single.php
		$category = 'category';
		foreach($url_array as $folder) {
			if($folder != 'category'){
				$category .= '/'.$folder;
				//hay confusion con las categorias hijos
				$dir = $url.'/'.$category.'/';
				//con URL para que jale del URL al que pertenece
				echo ' &amp;raquo; &lt;a href="'.$dir.'" rel="category tag"&gt;'.ucwords(str_replace("-", " ", $folder)) . '&lt;/a&gt;';
			}
		}
	} else {
		//para page.php y otros (archivos)
		foreach($url_array as $folder) {
			if($folder != 'tag' &amp;&amp; $folder != 'author'){
				if(!is_numeric($folder)){
					$dir = $dir.$folder.'/';//los folders se van acoplando
					echo ' &amp;raquo; &lt;a href="'.$dir.'"&gt;'.ucwords(str_replace("-", " ", $folder)) . '&lt;/a&gt;';
				}
			}
		}
	}
	echo wp_title();
}
breadcrumbs();
?&gt;
&lt;/div&gt;</pre>
<h2>Paso 2: Modificar el código en Single.php y Page.php</h2>
<p>Después de haber creado el archivo debemos llamarlo desde los archivos <strong>single.php</strong> y <strong>page.php </strong>(pueden probar también en archive.php) para que estos desplieguen el breadcumb. Debemos colocar el código preferentemente antes de que se despliegue el título dentro del <a href="http://codex.wordpress.org/The_Loop">Loop</a>.</p>
<pre class="brush:php">&lt;?php if(have_posts()) : while(have_posts()) : the_post(); ?&gt;
&lt;?php include ( TEMPLATEPATH . '/breadcrumbs.php'); ?&gt;
&lt;h1&gt;&lt;a href="&lt;?php the_permalink(); ?&gt;" title="&lt;?php the_title(); ?&gt;"&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h1&gt;</pre>
<h2>Paso 3: Estilizando al Breadcumb</h2>
<p>Que puede ir bien con el siguiente código CSS:</p>
<pre class="brush:css">.breadcrumbs {
background:#f7f6ed;
padding:10px;
}
.breadcrumbs a {
/*También podemos utilizar uppercase*/
text-transform:capitalize;
color:#666;
font-weight:700;
}</pre>
<h3>Notas</h3>
<p>Las tildes de los títulos se perderán y todo dependerá del slug que utilicemos en las categorías.</p>
<h3>Update</h3>
<p>Estoy utilizando la función &#8220;ucwords&#8221; en el código. Básicamente el código agarra el URL y lo secciona con el criterio &#8220;/&#8221;. El resultado es un array con caracteres en minúscula. Este problema lo solucionaba con CSS (text-transform:capitalize), pero olvidé que a Google no le importa el código CSS, así que lo indexaba en minúscula.</p>
<h3>Update 2</h3>
<p>Actualizé el código por si colocan el código en &#8220;archive.php&#8221;, todavía lo sigo probando en este archivo. Por el momento funciona sin problemas para las categorías, author pages y tag pages.</p>
<h3>Update 3</h3>
<p>Corrección de los permalinks (post-name a postname) gracias a Jose David Cortes.</p>

<hr/>
<br/>
Si deseas leer muchos más artículos acerca de Diseño y Desarrollo Web, Tecnología y Social Media puedes suscribirte <a href='http://feeds.feedburner.com/eresseasolutions-blogs'>via RSS</a> y
seguirnos en <a href='http://twitter.com/eresseasol'>Twitter</a>.
<br/><div class="author-info related_articles">
	<p><strong>También te recomendamos leer:</strong></p>
				<div class="related_article">
						<p>
				<a href="http://www.eresseasolutions.com/recursos/herramientas/como-asegurar-y-hacer-mas-rapido-tu-blog-en-wordpress/" style="font-weight:700;" rel="bookmark" title="Link permanente a Cómo asegurar y hacer más rápido tu blog en WordPress">
					Cómo asegurar y hacer más rápido tu blog en WordPress				</a>
			</p>
			<p>Nunca está demás darle un poco más de tiempo a tu instalación de Wordpress. En PV.M Garage publicaron una lista de sugerencias para poder hacer mucho más seguro y rápido nuestro blog de Wordpress</p>

		</div>
				<!--<div class="clearfix"></div>-->
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.eresseasolutions.com/tutoriales/how-to/como-agregar-breadcrumb-sin-utilizar-un-plugin-en-wordpress/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic (Feed is rejected)
Page Caching using disk: enhanced

Served from: www.eresseasolutions.com @ 2012-02-07 12:39:38 -->
