<?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>Macgrafic - Tutoriales InDesign, Photoshop y fotografía. Vectorizar logo &#187; function.php</title>
	<atom:link href="http://www.macgrafic.com/tag/functionphp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.macgrafic.com</link>
	<description>MacGrafic - Tutoriales InDesign, Photoshop, Freehand, illustrator y fotografía</description>
	<lastBuildDate>Fri, 09 Dec 2011 21:13:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Función Wordress. Cambiar el color del tag dependiendo de la cantidad. Actualizado</title>
		<link>http://www.macgrafic.com/funcion-wordress-cambiar-el-color-del-tag-dependiendo-de-la-cantidad/</link>
		<comments>http://www.macgrafic.com/funcion-wordress-cambiar-el-color-del-tag-dependiendo-de-la-cantidad/#comments</comments>
		<pubDate>Tue, 26 May 2009 14:59:36 +0000</pubDate>
		<dc:creator>Macgrafic</dc:creator>
				<category><![CDATA[Funciones]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[funciones de wordpress]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[function.php]]></category>
		<category><![CDATA[tag]]></category>

		<guid isPermaLink="false">http://www.macgrafic.com/?p=960</guid>
		<description><![CDATA[Llevo unas cuantas horas creando esta función. Pero al final he conseguido crearla gracias a un ejemplo de ayudawordpress, en el cual se mostraban los tags en una lista de selección.
Para implementarla tenéis que editar vuestro archivo functions.php de vuestro theme y añadir este código.]]></description>
			<content:encoded><![CDATA[<p>Llevo unas cuantas horas creando esta función. Pero al final he conseguido crearla gracias a un ejemplo de ayudawordpress, en el cual se mostraban los tags en una lista de selección.<br />
Para implementarla tenéis que editar vuestro archivo functions.php de vuestro theme y añadir este código.<br />
<span id="more-960"></span></p>
<p>[php]<br />
function imprimir_colorear_tags( $args = &#8221; ) {<br />
	$defaults = array(<br />
		&#8216;smallest&#8217; =&gt; 12, &#8216;largest&#8217; =&gt; 30, &#8216;unit&#8217; =&gt; &#8216;px&#8217;, &#8216;number&#8217; =&gt; 45,<br />
		&#8216;format&#8217; =&gt; &#8216;flat&#8217;, &#8216;orderby&#8217; =&gt; &#8216;name&#8217;, &#8216;order&#8217; =&gt; &#8216;ASC&#8217;,<br />
		&#8216;exclude&#8217; =&gt; &#8221;, &#8216;include&#8217; =&gt; &#8221;<br />
	);<br />
	$args = wp_parse_args( $args, $defaults );</p>
<p>	$tags = get_tags( array_merge($args, array(&#8216;orderby&#8217; =&gt; &#8216;count&#8217;, &#8216;order&#8217; =&gt; &#8216;DESC&#8217;)) ); // Siempre hace la query a las tags superiores</p>
<p>	if ( empty($tags) )<br />
		return;</p>
<p>	$return = generador_imprimir_colorear_tags( $tags, $args ); // Aqui es donde se ordenan las tags de acuerdo a los $args<br />
	if ( is_wp_error( $return ) )<br />
		return false;<br />
	else<br />
		echo apply_filters( &#8216;imprimir_colorear_tags&#8217;, $return, $args );<br />
}</p>
<p>function generador_imprimir_colorear_tags( $tags, $args = &#8221; ) {<br />
	global $wp_rewrite;<br />
	$defaults = array(<br />
		&#8216;smallest&#8217; =&gt; 12, &#8216;largest&#8217; =&gt; 30, &#8216;unit&#8217; =&gt; &#8216;px&#8217;, &#8216;number&#8217; =&gt; 45,<br />
		&#8216;format&#8217; =&gt; &#8216;flat&#8217;, &#8216;orderby&#8217; =&gt; &#8216;name&#8217;, &#8216;order&#8217; =&gt; &#8216;ASC&#8217;<br />
	);<br />
	$args = wp_parse_args( $args, $defaults );<br />
	extract($args);</p>
<p>	if ( !$tags )<br />
		return;<br />
	$counts = $tag_links = array();<br />
	foreach ( (array) $tags as $tag ) {<br />
		$counts[$tag-&gt;name] = $tag-&gt;count;<br />
		$tag_links[$tag-&gt;name] = get_tag_link( $tag-&gt;term_id );<br />
		if ( is_wp_error( $tag_links[$tag-&gt;name] ) )<br />
			return $tag_links[$tag-&gt;name];<br />
		$tag_ids[$tag-&gt;name] = $tag-&gt;term_id;<br />
	}</p>
<p>	$min_count = min($counts);<br />
	$spread = max($counts) &#8211; $min_count;<br />
	if ( $spread &lt;= 0 )<br />
		$spread = 1;<br />
	$font_spread = $largest &#8211; $smallest;<br />
	if ( $font_spread &lt; 0 )<br />
		$font_spread = 1;<br />
	$font_step = $font_spread / $spread;</p>
<p>	// SQL no puede salvarte; este es un segundo (y potencialmente diferente) orden en una secuencia de datos.<br />
	if ( &#8216;name&#8217; == $orderby )<br />
		uksort($counts, &#8216;strnatcasecmp&#8217;);<br />
	else<br />
		asort($counts);</p>
<p>	if ( &#8216;DESC&#8217; == $order )<br />
		$counts = array_reverse( $counts, true );</p>
<p>	$a = array();</p>
<p>	$rel = ( is_object($wp_rewrite) &amp;&amp; $wp_rewrite-&gt;using_permalinks() ) ? &#8216; rel=&quot;tag&quot;&#8217; : &#8221;;</p>
<p>	foreach ( $counts as $tag =&gt; $count ) {<br />
		$tag_id = $tag_ids[$tag];<br />
		$tag_link = clean_url($tag_links[$tag]);<br />
		$tag = str_replace(&#8216; &#8216;, &#8216;&amp;nbsp;&#8217;, wp_specialchars( $tag ));</p>
<p>		$medida_letra_tag = ( $smallest + ( ( $count &#8211; $min_count ) * $font_step ) );</p>
<p>		if ( $medida_letra_tag ==30) {<br />
			$contador_tags = 1;<br />
		} else if ( $medida_letra_tag &lt;= 29 AND $medida_letra_tag &gt;= 24 ) {<br />
			$contador_tags = 2;<br />
		} else if ( $medida_letra_tag &lt;= 23 AND $medida_letra_tag &gt;= 18 ) {<br />
			$contador_tags = 3;<br />
		} else if ( $medida_letra_tag &lt;= 17 AND $medida_letra_tag &gt;= 15 ) {<br />
			$contador_tags = 4;<br />
		} else {<br />
			$contador_tags = 5;<br />
		}</p>
<p>		$a[] = &quot;&lt;a href=&#8217;$tag_link&#8217; class=&#8217;tag-level-$contador_tags&#8217; style=&#8217;font-size: &quot; .<br />
			( $smallest + ( ( $count &#8211; $min_count ) * $font_step ) )<br />
			. &quot;$unit;&#8217;&gt;$tag&lt;/a&gt; &amp;#8226;&quot;;<br />
	}</p>
<p>	switch ( $format ) :<br />
	case &#8216;array&#8217; :<br />
		$return =&amp; $a;<br />
		break;<br />
	case &#8216;list&#8217; :<br />
		$return = &quot;&lt;ul class=&#8217;wp-tag-cloud&#8217;&gt;\n\t&lt;li&gt;&quot;;<br />
		$return .= join(&quot;&lt;/li&gt;\n\t&lt;li&gt;&quot;, $a);<br />
		$return .= &quot;&lt;/li&gt;\n&lt;/ul&gt;\n&quot;;<br />
		break;<br />
	default :<br />
		$return = join(&quot;\n&quot;, $a);<br />
		break;<br />
	endswitch;</p>
<p>	return apply_filters( &#8216;generador_imprimir_colorear_tags&#8217;, $return, $tags, $args );<br />
}<br />
[/php]</p>
<p>Una vez hayas guardado el archivo tenéis que añadir este código donde os mostrará el resultado. En mi caso lo tengo en el pie de página, en el archivo footer.php de mi theme.</p>
<p>[php]<br />
&lt;?php imprimir_colorear_tags(&#8216;number=30&amp;order=DESC&amp;orderby=count&#8217;); ?&gt;<br />
[/php]</p>
<p>ACTUALIZADO<br />
He actualizado el codigo porque habia algunas cosas incoherentes. La actualización de la condición, que condiciona mediante los tamaños de letra.</p>
<p>[php]<br />
$medida_letra_tag = ( $smallest + ( ( $count &#8211; $min_count ) * $font_step ) );</p>
<p>		if ( $medida_letra_tag ==30) {<br />
			$contador_tags = 1;<br />
		} else if ( $medida_letra_tag &lt;= 29 AND $medida_letra_tag &gt;= 24 ) {<br />
			$contador_tags = 2;<br />
		} else if ( $medida_letra_tag &lt;= 23 AND $medida_letra_tag &gt;= 18 ) {<br />
			$contador_tags = 3;<br />
		} else if ( $medida_letra_tag &lt;= 17 AND $medida_letra_tag &gt;= 15 ) {<br />
			$contador_tags = 4;<br />
		} else {<br />
			$contador_tags = 5;<br />
		}</p>
<p>		$a[] = &quot;&lt;a href=&#8217;$tag_link&#8217; class=&#8217;tag-level-$contador_tags&#8217; style=&#8217;font-size: &quot; .<br />
			( $smallest + ( ( $count &#8211; $min_count ) * $font_step ) )<br />
			. &quot;$unit;&#8217;&gt;$tag&lt;/a&gt; &amp;#8226;&quot;;<br />
[/php]</p>
<p>Y claro está, los estilos.<br />
Recodaros que teneis que crear los estilos que en este caso son cinco.</p>
<p>[css]<br />
#footer_tags a.tag-level-1 {<br />
	color: #fff;<br />
}</p>
<p>#footer_tags a.tag-level-2 {<br />
	color: #a8a8a8;<br />
}</p>
<p>#footer_tags a.tag-level-3 {<br />
	color: #777;<br />
}<br />
#footer_tags a.tag-level-4 {<br />
	color: #4c4c4c;<br />
}<br />
#footer_tags a.tag-level-5 {<br />
	color: #333;<br />
}<br />
[/css]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.macgrafic.com/funcion-wordress-cambiar-el-color-del-tag-dependiendo-de-la-cantidad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Función wordpress. Calcular el tiempo de publicación de una entrada</title>
		<link>http://www.macgrafic.com/funcion-wordpress-para-calcular-el-tiempo-de-una-entrada/</link>
		<comments>http://www.macgrafic.com/funcion-wordpress-para-calcular-el-tiempo-de-una-entrada/#comments</comments>
		<pubDate>Thu, 21 May 2009 08:09:06 +0000</pubDate>
		<dc:creator>Macgrafic</dc:creator>
				<category><![CDATA[Funciones]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[calcular tiempo entrada]]></category>
		<category><![CDATA[funciones de wordpress]]></category>
		<category><![CDATA[function.php]]></category>

		<guid isPermaLink="false">http://www.macgrafic.com/?p=943</guid>
		<description><![CDATA[Esta función la hago servir en el sidebar.php para calcular el tiempo que llevan publicadas las entradas recientes, supongo que hay plugins que hacen lo mismo, pero prefiero crear funciones y tener mayor control sobre el código. La manera de implementar la función es la siguiente&#8230; Esta función la tenéis que definir en el archivo [...]]]></description>
			<content:encoded><![CDATA[<p>Esta función la hago servir en el sidebar.php para calcular el tiempo que llevan publicadas las entradas recientes, supongo que hay plugins que hacen lo mismo, pero prefiero crear funciones y tener mayor control sobre el código.<br />
La manera de implementar la función es la siguiente&#8230;<br />
<span id="more-943"></span><br />
Esta función la tenéis que definir en el archivo functions.php de vuestro theme de wordpress.</p>
<p>[php]<br />
function cantidad_tiempo_entrada() {<br />
	$dia_actual= date(&#8216;Y-m-d&#8217;);<br />
	$dia_entrada= get_the_time(&#8216;Y-m-d&#8217;);</p>
<p>	$s_time = strtotime($dia_actual)-strtotime($dia_entrada);<br />
	$d_time = intval($s_time/86400);</p>
<p>	if ($d_time == 0 ) {<br />
		$cantidad_tiempo= &#8216;, hace unas horas.&#8217;;<br />
	} else {<br />
		if ($d_time == 1 ) {<br />
			$cantidad_tiempo= &#8216;, hace &#8216;.$d_time.&#8217; d&amp;iacute;a.&#8217;;<br />
		} else {<br />
			$cantidad_tiempo= &#8216;, hace &#8216;.$d_time.&#8217; d&amp;iacute;as.&#8217;;<br />
		}<br />
	}<br />
	return $cantidad_tiempo;<br />
}<br />
[/php]</p>
<p>Y en mi caso, en el sidebar.php muestro los 10 últimos post publicados y le inserto la función creada para que devuelva el resultado de la cantidad de tiempo que lleva publicada.</p>
<p>[php]<br />
&lt;h2&gt;Entradas recientes&lt;/h2&gt;<br />
&lt;ul&gt;<br />
	&lt;?php<br />
	$posts = get_posts(&#8216;numberposts=10&amp;orderby=post_date&#8217;);<br />
	foreach($posts as $post) {<br />
		setup_postdata($post);<br />
		echo &#8216;<br />
	&lt;li&gt;&lt;a href=&quot;&#8217; . get_permalink() . &#8216;&quot;&gt;&#8217;. get_the_title() . &#8216; &lt;/a&gt;<br />
&lt;span class=&quot;span_entradas_recientes&quot;&gt;<br />
			Por &#8216;.get_the_author().cantidad_tiempo_entrada().&#8217;<br />
		&lt;/span&gt;&lt;/li&gt;<br />
&#8216;;<br />
	}<br />
	$post = $posts[0];<br />
	?&gt;&lt;/ul&gt;<br />
[/php]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.macgrafic.com/funcion-wordpress-para-calcular-el-tiempo-de-una-entrada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

