<?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/"
xmlns:series="http://unfoldingneurons.com/"
> <channel><title>jlcarneiro.com &#187; WordPress</title> <atom:link href="http://www.jlcarneiro.com/tag/wordpress/feed/" rel="self" type="application/rss+xml" /><link>http://www.jlcarneiro.com</link> <description>Porque agora todo mundo é &#34;pontocom&#34;</description> <lastBuildDate>Wed, 08 Feb 2012 13:11:48 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item><title>Blogroll por ordem de atualização (3)</title><link>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-3/</link> <comments>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-3/#comments</comments> <pubDate>Mon, 09 Aug 2010 16:20:58 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[bookmarks]]></category> <category><![CDATA[código]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=1084</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Outro dia, um amigo meu perguntou por que alguns posts tinham um caráter tão técnico. Peço desculpas, é porque um dos objetivos iniciais deste site é armazenar macetes e dicas para mim mesmo: distribuir material de apoio para meus alunos; ajudar aqueles que não têm muita prática com informática com dicas; manter, num local de [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Outro dia, um amigo meu perguntou por que alguns posts tinham um caráter tão técnico. Peço desculpas, é porque um dos <a
href="http://www.jlcarneiro.com/about/" class="liinternal">objetivos iniciais deste site</a> é armazenar macetes e dicas para mim mesmo:</p><blockquote><ul><li>distribuir material de apoio para meus alunos;</li><li>ajudar aqueles que não têm muita prática com informática com dicas;</li><li>manter, num local de fácil acesso, pequenos macetes, dicas e endereços;</li><li>guardar textos, mensagens, reportagens e notícias interessantes; e</li><li>expressar minha opinião sobre algum assunto interessante.</li></ul></blockquote><p>Portanto, aviso que este post interessa mais àqueles que gostam de programação. Aqueles que o lerem e não compreenderem, não se preocupem: <em>é apenas um registro pessoal para futuras consultas e não contém nenhuma informação de uso geral</em>. <img
src='http://www.jlcarneiro.com/wp-includes/images/smilies/Winking.png' alt=':wink:' class='wp-smiley' /></p><p><span
id="more-1084"></span>Em 2008, escrevi um <a
href="http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/" class="liinternal">script que atualiza o campo de data dos links</a>, para contornar o já conhecido problema com a exibição do blogroll por ordem de atualização no WordPress.</p><p>Recentemente, verifiquei que os script havia parado de funcionar. Como parece que as versões recentes do WordPress não têm mais a variável <code>use_linksupdate</code>, aproveitei para adaptar o código às diferentes versões e formatos de feed, que armazenam a data em campos distintos:</p><div
class="wp_syntax"><div
class="code"><pre class="php" style="font-family:monospace;font-family: 'DejaVu Sans Mono', 'Courier New', monospace;"><span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">require_once</span><span style="color: #009900;">&#40;</span>ABSPATH<span style="color: #339933;">.</span><span style="color: #0000ff;">'wp-config.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">include_once</span><span style="color: #009900;">&#40;</span>ABSPATH<span style="color: #339933;">.</span><span style="color: #0000ff;">'wp-includes/class-snoopy.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">include_once</span><span style="color: #009900;">&#40;</span>ABSPATH<span style="color: #339933;">.</span><span style="color: #0000ff;">'wp-includes/rss.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$link_rsses</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>get_col<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;SELECT link_rss FROM <span style="color: #006699; font-weight: bold;">$wpdb</span>-&amp;gt;links WHERE link_rss &amp;lt;&amp;gt; ''&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$link_rsses</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$link_rsses</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$rssurl</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$feed</span> <span style="color: #339933;">=</span> fetch_rss<span style="color: #009900;">&#40;</span><span style="color: #000088;">$rssurl</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$feed</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #000088;">$pubdate</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$feed</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>channel<span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'pubdate'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Netscape RSS 0.91</span>
			<span style="color: #000088;">$lastbuilddate</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$feed</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>channel<span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'lastbuilddate'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Netscape RSS 0.91</span>
			<span style="color: #000088;">$updated</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$feed</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>channel<span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'updated'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Atom 1.0</span>
			<span style="color: #000088;">$items</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array_slice</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$feed</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>items<span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$items</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$item</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #000088;">$item_pubdate</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$item</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'pubdate'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// RSS 2.0</span>
				<span style="color: #000088;">$item_dcdate</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$item</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'dc'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'date'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// RSS 2.0 Dublin Core</span>
				<span style="color: #000088;">$item_updated</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$item</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'updated'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Atom 1.0</span>
			<span style="color: #009900;">&#125;</span>
			<span style="color: #000088;">$last_update</span> <span style="color: #339933;">=</span> <span style="color: #990000;">max</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$pubdate</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$lastbuilddate</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$updated</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$item_pubdate</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$item_dcdate</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$item_updated</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #000088;">$wpdb</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>query<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;UPDATE <span style="color: #006699; font-weight: bold;">$wpdb</span>-&amp;gt;links SET link_updated = FROM_UNIXTIME(<span style="color: #006699; font-weight: bold;">$last_update</span>) WHERE link_rss = '<span style="color: #006699; font-weight: bold;">$rssurl</span>'&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-3/feed/</wfw:commentRss> <slash:comments>1</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Atualizado para WordPress 3.0</title><link>http://www.jlcarneiro.com/atualizado-para-wordpress-3-0/</link> <comments>http://www.jlcarneiro.com/atualizado-para-wordpress-3-0/#comments</comments> <pubDate>Sat, 03 Jul 2010 04:54:35 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[internet]]></category> <category><![CDATA[monetização]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=1059</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Pronto! Agora que a Copa do Mundo 2010 acabou (pelo menos para a Seleção Brasileira), voltemos à programação normal&#8230; No último dia 17, foi lançado o WordPress 3.0 (Thelonious Monk), com várias novidades. Foi muito festejada a possibilidade de manter vários blogs em uma única instalação WordPress, e é realmente um grande avanço. Mas, como [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Pronto! Agora que a Copa do Mundo 2010 acabou (pelo menos para a Seleção Brasileira), voltemos à programação normal&#8230;</p><p>No último dia 17, foi lançado o <a
href="http://wordpress.org/development/2010/06/thelonious/" class="liexternal">WordPress 3.0</a> (Thelonious Monk), com várias novidades. Foi muito festejada a possibilidade de manter vários blogs em uma única instalação WordPress, e é realmente um grande avanço. Mas, como já tenho pouco tempo para manter <em>este</em> site, interessei-me mais pelas outras mudanças.</p><p><span
id="more-1059"></span>A maior delas, é o novo sistema de taxonomia, que permite múltiplos critérios de classificação de posts. É uma mudança profunda, implicando não apenas adaptações no código, mas na <em>organização</em> dos posts.</p><p>Encontrei um <a
href="http://net.tutsplus.com/tutorials/wordpress/introducing-wordpress-3-custom-taxonomies/" class="liexternal">ótimo tutorial</a> (em inglês) sobre o assunto no <a
href="http://net.tutsplus.com/" class="liexternal">Nettuts+</a>. Para ter uma idéia da tentadora  flexibilidade, vamos imaginar um blog com análises de notebooks:</p><ul><li>até o <a
href="http://codex.wordpress.org/Version_2.2" class="liexternal">WordPress 2.2,</a> uma análise teria que ser classificada simultaneamente em várias categorias: uma para o sistema operacional, outra para a capacidade de memória, outra para o processador, e assim por diante;</li><li>no <a
href="http://codex.wordpress.org/Version_2.3" class="liexternal">WordPress 2.3</a>, surgiram os marcadores, permitindo um menor número de categorias amplas, como &#8220;Netbooks&#8221; e &#8220;Notebooks&#8221;, com uma classificação mais específica por meio de palavras-chave, como &#8220;webcam&#8221;, &#8220;jogos&#8221;, &#8220;3G&#8221; ou &#8220;teclado ABNT2&#8243;; já</li><li>a nova taxonomia, introduzida no <a
href="http://codex.wordpress.org/Version_2.8" class="liexternal">WordPress 2.8</a>, e agora consolidada no <a
href="http://codex.wordpress.org/Version_3.0" class="liexternal">WordPress 3.0</a>, permite eliminar o conceito de categorias, adotando um esquema de critérios simultâneos, muito comum nos sites de comércio eletrônico. Nesse sistema, um equipamento poderia, do ponto de vista da memória, ter &#8220;Mais de 4GiB&#8221;, considerando o disco rígido, ter &#8220;Entre 160GiB e 250GiB&#8221; e usar o sistema operacional &#8220;Ubuntu Linux&#8221;. Isso tudo sem esquecer os marcadores específicos como &#8220;webcam&#8221;, &#8220;jogos&#8221;, &#8220;3G&#8221; e &#8220;teclado ABNT2&#8243;, já citados.</li></ul><p>Associando à nova taxonomia os também novos tipos personalizados de posts que, no exemplo acima, incluiriam, por exemplo, &#8220;Análises&#8221;, &#8220;Comparativos&#8221; e &#8220;Lançamentos&#8221;, o WordPress transforma-se em um Sistema de Gerenciamento de Conteúdo (<em>Content Management System</em> &#8211; CMS) quase completo.</p><p>Minha costumeira falta de tempo me impede de implantar isso no <a
href="../" class="liinternal">jlcarneiro.com</a> (pelo menos por enquanto). Mas, para não ficar para trás, implantei algumas novas funcionalidades (listadas com os links para referências futuras):</p><ol><li>barra de navegação sensível ao contexto (variando de acordo com o  conteúdo  exibido no momento);</li><li>uso de anexos nas mensagens enviadas meio do <a
href="http://www.jlcarneiro.com/contact/" class="liinternal">Formulário de Contato</a>;</li><li>associação da URL do blog ao sistema <a
href="http://www.ferramentasblog.com/2009/08/o-que-e-openid-e-como-usar.html" class="liexternal">OpenID</a> (segui o <a
href="http://blogpond.com.au/2007/12/04/how-to-get-an-openid-and-link-it-to-your-blog-url/" class="liexternal">tutorial do Dipping into the Blogpond</a>);</li><li>tradução (via Google Translate™) na <a
href="#text-9" class="liinternal">barra de navegação</a>, à esquerda;</li><li>integrei a busca do Google ao site (na <a
href="#text-2" class="liinternal">barra de navegação</a>, ou <a
href="javascript: installSearchEngine();">diretamente no navegador</a>, graças a uma <a
href="http://blog.unto.net/opensearch/add-opensearch-to-your-site-in-five-minutes/" class="liexternal">dica de DeWitt Clinton</a>);</li><li>alguns ajustes na indexação do site e na colocação de anúncios (para voltar a ter o <a
href="http://www.mestreseo.com.br/pagerank/o-que-e-pagerank" class="liexternal">PageRank</a> 3);</li><li>por meio de um <a
href="http://millionclues.com/problogging/wordpress-tips/make-your-theme-wordpress-3-0-compatible/" class="liexternal">tutorial do Million Clues</a>, menus de navegação em dois níveis e alteração da imagem de cabeçalho e da decoração de fundo (cores ou imagens), usando apenas o mouse; e</li><li>um pequeno aumento na velocidade de carregamento das  páginas (ver <a
href="#comment-1878" class="liinternal">meu comentário</a>, abaixo).</li></ol><p>Algumas mudanças (como o menu em dois níveis e a busca direto do navegador) estão disponíveis apenas nos navegadores mais modernos. Inclusive, usuários do Internet Explorer 6 <a
href="http://www.jlcarneiro.com/aurora-ou-crepusculo-do-ie6/" class="liinternal">há algum tempo</a> vêm sendo aconselhados a <a
href="http://www.updateyourbrowser.net/pt/" class="liexternal">atualizar o seu navegador</a>.</p><p>A iniciativa parece estar surtindo efeito: hoje, o IE6 é usado por apenas 17% dos meus leitores/visitantes. Antes, era usado por 97%!</p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/atualizado-para-wordpress-3-0/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Como contar os marcadores dos posts</title><link>http://www.jlcarneiro.com/como-contar-os-marcadores-dos-posts/</link> <comments>http://www.jlcarneiro.com/como-contar-os-marcadores-dos-posts/#comments</comments> <pubDate>Tue, 09 Mar 2010 04:45:53 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[código]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[SQL]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=963</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Encontrei dois textos interessantes sobre marcadores de blogs (no Blog for Profit e no Jasor Better). Segundo eles, os marcadores funcionam como palavras-chave, ligando até mesmo posts de diferentes categorias de forma intuitiva. Por outro lado, em excesso, os marcadores podem confundir o leitor, tornando-se prejudiciais. Sendo assim, decidi verificar quantos marcadores meus posts têm. [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Encontrei dois textos interessantes sobre marcadores de blogs (no <a
href="http://blogforprofit.com/tags/using-blog-tags-to-benefit-your-readers-and-your-seo/" class="liexternal">Blog for Profit</a> e no <a
href="http://www.jasonbetter.com/nerve-center/how-to-use-wordpress-tags-properly/" class="liexternal">Jasor Better</a>). Segundo eles, os marcadores funcionam como palavras-chave, ligando até mesmo posts de diferentes categorias de forma intuitiva.</p><p>Por outro lado, em excesso, os marcadores podem confundir o leitor, tornando-se prejudiciais. Sendo assim, decidi verificar quantos marcadores meus posts têm.</p><p>Pesquisei na internet, mas não encontrei nenhuma solução para esse problema. Então, usando a <a
href="http://codex.wordpress.org/Database_Description" class="liexternal">documentação do WordPress</a> e contando com a ajuda de uma colega de trabalho <em>(obrigado, Luciana!)</em>, cheguei ao comando abaixo:</p><div
class="wp_syntax"><div
class="code"><pre class="sql" style="font-family:monospace;font-family: 'DejaVu Sans Mono', 'Courier New', monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> post_title<span style="color: #66cc66;">,</span> <span style="color: #993333; font-weight: bold;">COUNT</span><span style="color: #66cc66;">&#40;</span>db_term_relationships<span style="color: #66cc66;">.</span>object_id<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> num_tags <span style="color: #993333; font-weight: bold;">FROM</span> db_term_relationships
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> db_posts <span style="color: #993333; font-weight: bold;">ON</span> id <span style="color: #66cc66;">=</span> object_id
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> db_term_taxonomy <span style="color: #993333; font-weight: bold;">ON</span> db_term_relationships<span style="color: #66cc66;">.</span>term_taxonomy_id <span style="color: #66cc66;">=</span> db_term_taxonomy<span style="color: #66cc66;">.</span>term_taxonomy_id
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> db_terms <span style="color: #993333; font-weight: bold;">ON</span> db_terms<span style="color: #66cc66;">.</span>term_id <span style="color: #66cc66;">=</span> db_term_taxonomy<span style="color: #66cc66;">.</span>term_id
<span style="color: #993333; font-weight: bold;">WHERE</span> db_term_taxonomy<span style="color: #66cc66;">.</span>taxonomy <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;post_tag&quot;</span>
<span style="color: #993333; font-weight: bold;">GROUP</span> <span style="color: #993333; font-weight: bold;">BY</span> db_term_relationships<span style="color: #66cc66;">.</span>object_id
<span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> num_tags <span style="color: #993333; font-weight: bold;">DESC</span></pre></div></div><p>Por outro lado, se o interesse for apenas uma lista com os marcadores mais usados, pode-se usar o comando abaixo:</p><div
class="wp_syntax"><div
class="code"><pre class="sql" style="font-family:monospace;font-family: 'DejaVu Sans Mono', 'Courier New', monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> db_terms<span style="color: #66cc66;">.</span>name<span style="color: #66cc66;">,</span> <span style="color: #993333; font-weight: bold;">COUNT</span><span style="color: #66cc66;">&#40;</span>db_term_relationships<span style="color: #66cc66;">.</span>object_id<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> qtd <span style="color: #993333; font-weight: bold;">FROM</span> db_term_relationships
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> db_term_taxonomy <span style="color: #993333; font-weight: bold;">ON</span> db_term_relationships<span style="color: #66cc66;">.</span>term_taxonomy_id <span style="color: #66cc66;">=</span> db_term_taxonomy<span style="color: #66cc66;">.</span>term_taxonomy_id
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> db_terms <span style="color: #993333; font-weight: bold;">ON</span> db_terms<span style="color: #66cc66;">.</span>term_id <span style="color: #66cc66;">=</span> db_term_taxonomy<span style="color: #66cc66;">.</span>term_id
<span style="color: #993333; font-weight: bold;">WHERE</span> db_term_taxonomy<span style="color: #66cc66;">.</span>taxonomy <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;post_tag&quot;</span>
<span style="color: #993333; font-weight: bold;">GROUP</span> <span style="color: #993333; font-weight: bold;">BY</span> db_terms<span style="color: #66cc66;">.</span>term_id
<span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> qtd <span style="color: #993333; font-weight: bold;">ASC</span></pre></div></div><p>Fica como lembrete para mim e sugestão para outros que tenham a mesma dúvida&#8230;</p><p><small><strong>Atualização:</strong> Acrescentado o comando SQL para exibir a lista dos marcadores mais usados.</small></p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/como-contar-os-marcadores-dos-posts/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Sufixo de imagens no WordPress</title><link>http://www.jlcarneiro.com/sufixo-de-imagens-no-wordpress/</link> <comments>http://www.jlcarneiro.com/sufixo-de-imagens-no-wordpress/#comments</comments> <pubDate>Sat, 20 Feb 2010 04:06:42 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[código]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[internet]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=954</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Gostei muito das últimas atualizações do WordPress porque adicionaram funcionalidades que eu obtinha apenas por meio de plugins. O gerenciamento de imagens, por exemplo, faço agora pela Biblioteca de Mídia. O sistema oferece ferramentas básicas de edição de figuras, galerias automáticas e a geração automática de miniaturas de figuras com grandes dimensões. As miniaturas são [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Gostei muito das últimas atualizações do WordPress porque adicionaram funcionalidades que eu obtinha apenas por meio de plugins. O gerenciamento de imagens, por exemplo, faço agora pela Biblioteca de Mídia. O sistema oferece ferramentas básicas de edição de figuras, galerias automáticas e a geração automática de miniaturas de figuras com grandes dimensões.</p><p>As miniaturas são sinalizadas por meio de sufixos acrescentados aos seus nomes. Contudo, os sufixos são criados a partir das dimensões (largura x altura) das miniaturas, dificultando uma identificação rápida e eventuais alterações futuras.</p><p><span
id="more-954"></span>As miniaturas deveriam ser nomeadas, de acordo com seu tamanho, com sufixos padronizados como &#8220;large&#8221;, &#8220;medium&#8221; e &#8220;thumbnail&#8221;. Ou, idealmente, com sufixos definidos pelo usuário. Infelizmente, devido à forma como essa rotina foi implementada, até o momento não há plugins para este fim.</p><p>Encontrei <del>uma gambiarra</del> um paliativo, <a
href="http://jstnryan.com/custom-image-suffixes-in-wordpress/" class="liexternal">proposto por Jstn Ryan</a>, que estou usando no momento:</p><ol><li>procurar, no arquivo <code>/wp-includes/media.php</code>, pela definição da variável <code>$suffix</code>:<div
class="wp_syntax"><div
class="code"><pre class="php" style="font-family:monospace;font-family: 'DejaVu Sans Mono', 'Courier New', monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #000088;">$suffix</span> <span style="color: #009900;">&#41;</span>
	<span style="color: #000088;">$suffix</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;<span style="color: #006699; font-weight: bold;">{$dst_w}</span>x<span style="color: #006699; font-weight: bold;">{$dst_h}</span>&quot;</span><span style="color: #339933;">;</span></pre></div></div></li><li>substituí-la pelo código abaixo:<div
class="wp_syntax"><div
class="code"><pre class="php" style="font-family:monospace;font-family: 'DejaVu Sans Mono', 'Courier New', monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #000088;">$suffix</span> <span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">switch</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$max_w</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">case</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">intval</span><span style="color: #009900;">&#40;</span>get_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'large_size_w'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span>
			<span style="color: #000088;">$suffix</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'large'</span><span style="color: #339933;">;</span>
			<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">case</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">intval</span><span style="color: #009900;">&#40;</span>get_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'medium_size_w'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span>
			<span style="color: #000088;">$suffix</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'medium'</span><span style="color: #339933;">;</span>
			<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">case</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">intval</span><span style="color: #009900;">&#40;</span>get_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'thumbnail_size_w'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span>
			<span style="color: #000088;">$suffix</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'thumbnail'</span><span style="color: #339933;">;</span>
			<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">default</span><span style="color: #339933;">:</span>
			<span style="color: #000088;">$suffix</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'other'</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div></li></ol><p>Está funcionando muito bem. Mas como envolve a edição de um arquivo do WordPress, precisa ser refeito a cada atualização de versão. Nem tudo é perfeito&#8230;</p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/sufixo-de-imagens-no-wordpress/feed/</wfw:commentRss> <slash:comments>2</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Barras laterais devem ficar à direita ou à esquerda?</title><link>http://www.jlcarneiro.com/barras-laterais-devem-ficar-a-direita-ou-a-esquerda/</link> <comments>http://www.jlcarneiro.com/barras-laterais-devem-ficar-a-direita-ou-a-esquerda/#comments</comments> <pubDate>Fri, 24 Jul 2009 03:29:11 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Enquetes]]></category> <category><![CDATA[layout]]></category> <category><![CDATA[usabilidade]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=355</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Há mais de dois anos atrás, encontrei um texto sobre como, na web, as pessoas tendem a ler em formato de &#8220;F&#8221;. Fiz alguns testes e terminei mudando a barra lateral para a esquerda. Confesso que gostei do resultado, acho mais lógica a navegação pela direita, mas algo me aconselhava a por o conteúdo no [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Há mais de dois anos atrás, encontrei um texto sobre como, na web, as <a
href="http://www.jlcarneiro.com/internautas-leem-em-forma-de-f/" class="liinternal">pessoas tendem a ler em formato de &#8220;F&#8221;</a>. Fiz alguns testes e terminei mudando a barra lateral para a esquerda. Confesso que gostei do resultado, acho mais lógica a navegação pela direita, mas algo me aconselhava a por o <em>conteúdo</em> no local de destaque.</p><p>Recentemente, encontrei dois textos questionando a localização da barra lateral no <a
href="http://www.problogdesign.com/blog-layout/should-a-sidebar-go-on-the-left-or-right/" class="liexternal">Pro Blog Design</a> e no <a
href="http://www.webmaster-source.com/2008/02/04/right-vs-left-sidebar/" class="liexternal">Webmaster-Source</a>. Apesar de um pouco datados, esses texto aconselham que barras voltadas para navegação fiquem localizadas à esquerda.</p><p>Por outro lado, o <a
href="http://blog.alexandremagno.net/" class="liexternal">Webpoint</a>, traz um texto sobre a <a
href="http://www.alexandremagno.net/blog/2009/04/14/navegacao-em-um-site-topo-esquerda-ou-direita/" class="liexternal">navegação em um site</a>. Há inclusive os resultados de testes de usabilidade realizados no site da Audi, segundo os quais, não há grande diferença em usar um lado ou outro.</p><p>E agora?</p><p><span
id="more-355"></span>Ainda não sei se farei essa alteração, mas seguem fotos representando cada uma das situações e uma enquete para colher algumas opiniões. Quem quiser explicar sua opção, fique à vontade para postar um comentário.</p><p><strong>Alguns argumentos para cada lado:</strong></p><table
border="1" cellspacing="0" cellpadding="5" align="center"><tbody><tr
align="center"><th
width="50%">Esquerda</th><th
width="50%">Direita</th></tr><tr
align="center"><td><a
href="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/screenshots/site_v4.gif" title="Barra lateral à esquerda" rel="thumbnail" class="liimagelink"><img
title="Clique para ampliar" src="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/screenshots/site_v4-medium.gif" alt="site_v4a_screenshot" /></a></td><td><a
href="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/screenshots/site_v4_alt.gif" title="Barra lateral à direita" rel="thumbnail" class="liimagelink"><img
title="Clique para ampliar" src="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/screenshots/site_v4_alt-medium.gif" alt="site_v4b_screenshot" /></a></td></tr><tr
align="center"><td>Tradicional como menu de navegação</td><td>Maior enfoque no conteúdo</td></tr><tr
align="center"><td>Menos comum em blogs, &#8220;diferenciado&#8221;</td><td>Mais comum em blogs</td></tr><tr
align="center"><td>—</td><td>Maior proximidade da barra de rolagem</td></tr></tbody></table> Note: There is a poll embedded within this post, please visit the site to participate in this post's poll.
]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/barras-laterais-devem-ficar-a-direita-ou-a-esquerda/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Atualizado para WordPress 2.8</title><link>http://www.jlcarneiro.com/atualizado-para-wordpress-2-8/</link> <comments>http://www.jlcarneiro.com/atualizado-para-wordpress-2-8/#comments</comments> <pubDate>Mon, 22 Jun 2009 00:55:38 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[código]]></category> <category><![CDATA[Google]]></category> <category><![CDATA[monetização]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[SQL]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=347</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-upgrade-thumbnail.jpg" class="attachment-thumbnail wp-post-image" alt="wordpress-upgrade.jpg" title="Atualizando o WordPress" /></p>Fiz algumas mudanças no site nos últimos dias. Como tenho andado muito atarefado, infelizmente elas foram levadas no meu tempo vago (que tem se tornado cada vez mais raro): começaram há alguns dias e acabaram (espero!) hoje à tarde. Não sem antes me deixarem com mais alguns cabelos brancos: quem acessou o site entre as [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-upgrade-thumbnail.jpg" class="attachment-thumbnail wp-post-image" alt="wordpress-upgrade.jpg" title="Atualizando o WordPress" /></p><p>Fiz algumas mudanças no site nos últimos dias. Como tenho andado muito atarefado, infelizmente elas foram levadas no meu tempo vago (que tem se tornado cada vez mais raro): começaram há alguns dias e acabaram (espero!) hoje à tarde. Não sem antes me deixarem com <em>mais</em> alguns cabelos brancos: quem acessou o site entre as 15 e as 18 horas encontrou-o sem nenhum post, fruto de problemas para importar a cópia de segurança dos registros.</p><p>Há quase um ano, desabilitei duas funcionalidades do WordPress 2.6: o controle de revisões e o auto-salvamento de posts. Apesar de serem ótimas idéias, resultam num aumento desnecessário do banco de dados, tornando-o lento. Essa semana descobri que essas funcionalidades foram reativadas (na instalação da versão 2.7 ou 2.8, não sei ao certo) e fui corrigir o problema.</p><p><span
id="more-347"></span>Depois de instalar um <a
href="http://exper.3drecursions.com/2008/07/25/disable-revisions-and-autosave-plugin/" class="liexternal">plugin</a> que desativa essas funções de maneira mais rápida do que a edição direta de arquivos, excluí as entradas indevidas. Só depois dei-me conta que o comando que usei (<code>DELETE FROM wp_posts WHERE post_type = "revision"</code>) apagava apenas as entradas na tabela de posts e páginas, mas não as referências a elas (marcadores, categorias e séries, por exemplo). O correto seria usar <a
href="http://blog.andreineculau.com/2008/07/delete-wordpress-26-revisions/" class="liexternal">um comando mais complexo</a>, mas que fizesse o trabalho simultaneamente em todas as tabelas:</p><div
class="wp_syntax"><div
class="code"><pre class="sql" style="font-family:monospace;font-family: 'DejaVu Sans Mono', 'Courier New', monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> a<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">,</span>c
<span style="color: #993333; font-weight: bold;">FROM</span> wp_posts a
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> wp_term_relationships b <span style="color: #993333; font-weight: bold;">ON</span> <span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">.</span>ID <span style="color: #66cc66;">=</span> b<span style="color: #66cc66;">.</span>object_id<span style="color: #66cc66;">&#41;</span>
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> wp_postmeta c <span style="color: #993333; font-weight: bold;">ON</span> <span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">.</span>ID <span style="color: #66cc66;">=</span> c<span style="color: #66cc66;">.</span>post_id<span style="color: #66cc66;">&#41;</span>
<span style="color: #993333; font-weight: bold;">WHERE</span> a<span style="color: #66cc66;">.</span>post_type <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'revision'</span></pre></div></div><p>Ao restaurar a cópia de segurança de ontem, recebi mensagens de erro por quase duas horas enquanto via meu trabalho dos últimos anos desaparecer. Acreditem, não é uma sensação agradável&#8230;</p><p>Resolvido problema (e anotado o comando correto, para não esquecê-lo mais), aproveito para comunicar que integrei a busca do Google ao meu tema, como <a
href="http://www.pblog.com.br/2009/06/08/como-integrar-a-busca-do-google-a-um-tema-wordpress/" class="liexternal">sugerido no pBlog</a>. Perdi alguns relatórios, inclusive um com as buscas mal-sucedidas para apontar os desejos dos leitores, mas o banco de dados diminuiu consideravelmente e o site ficou mais rápido.</p><p>Aumentei também a largura dos posts: antes dispunha de cerca de 550 pixels, atrapalhando a exibição de <a
href="http://www.jlcarneiro.com/tag/charges/" class="liinternal">charges</a>, por exemplo. Reduzi também o número de <a
href="http://www.jlcarneiro.com/#widgetize-anything-6" class="liinternal">imagens na barra lateral</a> e fiz algumas alterações nos gráficos das <a
href="http://www.jlcarneiro.com/about/statistics/" class="liinternal">estatísticas</a>.</p><p>Ainda tenho alguns comentários para responder, algumas alterações para fazer na seção de <a
href="http://www.jlcarneiro.com/faq/" class="liinternal">Perguntas e Respostas</a> e reorganizar a seção de <a
href="http://www.jlcarneiro.com/bookmarks/" class="liinternal">Sites recomendados</a>. Fora uma revisão nos códigos do site para torná-lo mais leve.</p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/atualizado-para-wordpress-2-8/feed/</wfw:commentRss> <slash:comments>2</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Blogroll por ordem de atualização (2)</title><link>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-2/</link> <comments>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-2/#comments</comments> <pubDate>Wed, 24 Dec 2008 04:56:31 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[bookmarks]]></category> <category><![CDATA[código]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=320</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Há cerca de uma semana, sugeri um script que atualizava o campo de data dos links do WordPress, tornando possível a exibição do blogroll por ordem de atualização. Porém, o Planeta Ubuntu Brasil ficava sempre em último lugar na lista, apesar de ser atualizado frequentemente. Observei então, que o feed traz as datas em português, [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Há cerca de uma semana, <a
href="http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/" class="liinternal">sugeri um script</a> que atualizava o campo de data dos links do WordPress, tornando possível a exibição do blogroll por ordem de atualização.</p><p>Porém, o <a
href="http://planeta.ubuntu-br.org/" class="liexternal">Planeta Ubuntu Brasil</a> ficava sempre em último lugar na lista, apesar de ser atualizado frequentemente. Observei então, que o <a
href="http://www.jlcarneiro.com/faq/#feeds" class="liinternal">feed</a> traz as datas em português, impedindo na conversão por meio da função <code>strtotime()</code> (que espera datas em inglês).</p><p>Assim, alterei o script que sugeri aqui <a
href="http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/" class="liinternal">há uma semana</a>: ele agora tenta identificar datas válidas no cabeçalho do feed e no primeiro item exibido. E, para atender casos como o do Planeta Ubuntu Brasil, procura datas tanto no formato <a
href="http://feedvalidator.org/docs/rss2.html" class="liexternal">RSS 2.0</a> quanto no formato <a
href="http://feedvalidator.org/docs/rss1.html" class="liexternal">RSS 1.0</a>.</p><p><span
id="more-320"></span><small><strong>Atualização:</strong> Veja o código atualizado em <a
href="http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-3/" class="liinternal">Blogroll por ordem de atualização (3)</a>.</small></p><p>Para tornar o script mais independente, decidi colar o código diretamente no WP-Crontrol, ao invés de incluí-lo como uma função no arquivo <code>functions.php</code> do meu tema.</p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-2/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Blogroll por ordem de atualização</title><link>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/</link> <comments>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/#comments</comments> <pubDate>Thu, 18 Dec 2008 05:10:36 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[bookmarks]]></category> <category><![CDATA[código]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[usabilidade]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://69.89.31.73/~jlcarnei/?p=200</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Atualizei o WordPress para a versão 2.7 (codinome Coltrane), que trouxe várias vantagens, como a possibilidade de reduzir o número de plugins ativos, já que comentários aninhados, personalização do painel administrativo e atualização de plugins (e do próprio WordPress) agora são nativos. Recomendo! A implementação de comentários aninhados exigiu alterações na aparência do site. Então, [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Atualizei o <span
id="high_1" class="searchterm1">WordPress</span> para a versão 2.7 (<a
href="http://br.wordpress.org/2008/12/11/traducao-do-post-de-lancamento-do-27/" class="liexternal">codinome Coltrane</a>), que trouxe <em>várias</em> vantagens, como a possibilidade de reduzir o número de plugins ativos, já que comentários aninhados, personalização do painel administrativo e atualização de plugins (e do próprio WordPress) agora são nativos. Recomendo!</p><p>A implementação de comentários aninhados exigiu alterações na aparência do site. Então, aproveitei para fazer algumas pequenas mudanças:</p><ol><li>implementei o envio de anexos no formulário de contatos (ainda em testes);</li><li>o campo atual nos formulários agora recebe cores diferentes para maior destaque (exceto no internet Explorer&#8230;); e</li><li>a <a
href="http://www.jlcarneiro.com/macas-ideias-e-conhecimento/#comment-1290" class="liinternal">pedidos</a>, alterei a seção <a
href="http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/#widgetize-anything-5" class="liinternal">Sites recomendados</a> (<em>blogroll</em>), classificando os sites por ordem decrescente de atualização.</li></ol><p><span
id="more-200"></span>A exibição de sites recomendados por ordem de atualização, usando o parâmetro <code>orderby=updated</code>, é um problema antigo no WordPress.</p><p>As atualizações deveriam ser controladas pelo <a
href="http://pingomatic.com/" class="liexternal">Ping-O-Matic</a>, dos <a
href="http://automattic.com/" class="liexternal">desenvolvedores do WordPress</a>, entretanto isso não ocorre.</p><p>Pesquisando sobre o assunto, encontrei um <a
href="http://ottodestruct.com/blog/2007/06/11/how-to-make-wordpress-blogrolls-smarter/" class="liexternal">tutorial</a> ensinando como basear controlar as atualizações pelos <a
href="http://www.jlcarneiro.com/faq/#feeds" class="liinternal">feeds RSS</a>. Fiz algumas alterações pequenas no código fonte e, usando o plugin <a
href="http://scompt.com/projects/wp-crontrol/" class="liexternal">WP-Crontrol</a>, configurei execuções periódicas.</p><p>É possível colar este código diretamente no WP-Control ou incluí-lo como uma função no arquivo <del
datetime="2008-12-24T05:05:16+00:00"><code>themes.php</code></del> <code>functions.php</code>, associando-a a um evento (<em>hook</em>) do WordPress.</p><p><small><strong>Atualização:</strong> Veja o código atualizado em <a
href="http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao-3/" class="liinternal">Blogroll por ordem de atualização (3)</a>.</small></p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/blogroll-por-ordem-de-atualizacao/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Atualizado para WordPress 2.6</title><link>http://www.jlcarneiro.com/atualizado-para-wordpress-26/</link> <comments>http://www.jlcarneiro.com/atualizado-para-wordpress-26/#comments</comments> <pubDate>Thu, 17 Jul 2008 17:15:42 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Diversos]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=307</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-upgrade-thumbnail.jpg" class="attachment-thumbnail wp-post-image" alt="wordpress-upgrade.jpg" title="Atualizando o WordPress" /></p>Post rápido, apenas para explicar a recente instabilidade no site: ao instalar o WordPress 2.6 (codinome Tyner), fiz algumas modificações no .htaccess que resultaram em repetidas páginas em branco. Espero que agora tudo esteja de volta ao normal.]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-upgrade-thumbnail.jpg" class="attachment-thumbnail wp-post-image" alt="wordpress-upgrade.jpg" title="Atualizando o WordPress" /></p><p>Post rápido, apenas para explicar a recente instabilidade no site: ao instalar o <a
href="http://wordpress.org/development/2008/07/wordpress-26-tyner/" class="liexternal">WordPress 2.6</a> (codinome Tyner), fiz algumas modificações no <a
href="http://httpd.apache.org/docs/2.2/pt-br/howto/htaccess.html" class="liexternal">.htaccess</a> que resultaram em repetidas páginas em branco. <img
src='http://www.jlcarneiro.com/wp-includes/images/smilies/Blushing.png' alt=':oops:' class='wp-smiley' /></p><p>Espero que agora tudo esteja de volta ao normal.</p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/atualizado-para-wordpress-26/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Novos emoticons</title><link>http://www.jlcarneiro.com/novos-emoticons/</link> <comments>http://www.jlcarneiro.com/novos-emoticons/#comments</comments> <pubDate>Sun, 22 Jun 2008 03:49:14 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Diversos]]></category> <category><![CDATA[Internet Explorer]]></category> <category><![CDATA[rapidinhas]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=301</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/jokes/speedy_gonzales-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="speedy_gonzales.png" title="Arriba! Arriba!" /></p>Post rapidinho só para comunicar que passei a usar um novo conjunto de emoticons: como são brancos, combinam mais com o tema do meu site. Obrigado a Leo Bolin pelo ótimo trabalho e a Taha Paksu por me informar o site do autor! Ah! Taha Paksu desenvolveu o pngfix, um plugin para corrigir o problema [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/jokes/speedy_gonzales-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="speedy_gonzales.png" title="Arriba! Arriba!" /></p><p>Post rapidinho só para comunicar que passei a usar um novo conjunto de <a
href="http://pt.wikipedia.org/wiki/Emoticon" rel="nofollow" class="liexternal">emoticons</a>: como são brancos, combinam mais com o tema do meu site.</p><p>Obrigado a <span
class="removed_link" title="http://leobolin.net/simplesmileys/">Leo Bolin</span> pelo ótimo trabalho e a <a
href="http://www.tahapaksu.com/wordpress" class="liexternal">Taha Paksu</a> por me informar o site do autor!</p><p>Ah! Taha Paksu desenvolveu o <a
href="http://www.tahapaksu.com/wordpress/pngfix-wordpress-plugin" class="liexternal">pngfix</a>,  um plugin para corrigir o problema do internet Explorer 6 com transparência em figuras PNG usando CSS.</p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/novos-emoticons/feed/</wfw:commentRss> <slash:comments>5</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> <item><title>Algumas notícias</title><link>http://www.jlcarneiro.com/algumas-noticias/</link> <comments>http://www.jlcarneiro.com/algumas-noticias/#comments</comments> <pubDate>Mon, 07 Apr 2008 21:02:26 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Diversos]]></category> <category><![CDATA[feeds]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/?p=282</guid> <description><![CDATA[Algumas notícias rápidas: instalei o WordPress 2.5 e não tive muitos problemas com plugins: apenas o TinyMCEComments e o ImageManager apresentaram alguma incompatibilidade e ambos já estão com novas versões prometidas&#8230; por outro lado, tive problemas com meus feeds no FeedBurner. Precisei recriá-los e perdi a relação de inscritos&#8230; revisei o formulário de comentários, facilitando [...]]]></description> <content:encoded><![CDATA[<p><img
style="margin-left: 10px; margin-bottom: 10px;" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-upgrade.jpg" alt="wordpress-upgrade.jpg" width="214" height="215" align="right" />Algumas notícias rápidas:</p><ol><li>instalei o <a
href="http://wordpress.org/development/2008/03/wordpress-25-brecker/" class="liexternal">WordPress 2.5</a> e não tive <span
style="text-decoration: line-through;">muitos</span> problemas com plugins: apenas o <a
href="http://wordpress.org/extend/plugins/tinymcecomments/" class="liexternal">TinyMCEComments</a> e o <a
href="http://www.soderlind.no/archives/2006/01/03/imagemanager-20/" class="liexternal">ImageManager</a> apresentaram alguma incompatibilidade e ambos já estão com novas versões prometidas&#8230;</li><li>por outro lado, tive problemas com <a
href="http://www.jlcarneiro.com/faq/#feeds" title="Não lembra o que é?" class="liinternal">meus feeds</a> no <a
href="http://feedburner.google.com/" class="liexternal">FeedBurner</a>. Precisei recriá-los e perdi a relação de inscritos&#8230;</li><li>revisei o formulário de comentários, facilitando o uso de smilies e <a
href="http://www.jlcarneiro.com/wp-content/uploads/Image/blog/screenshots/comment_form.png" title="Dê uma olhada para ver como ficou..." rel="thumbnail" class="liinternal">melhorando sua aparência</a>;</li><li>o <a
href="http://www.jlcarneiro.com/contact/" class="liinternal">formulário de contato</a> também passou por uma reforma: não ganhou atalhos para os smilies, mas permite a inclusão de campos diversos para identificar os remetentes.</li></ol><p>Assim, no <a
href="http://www.jlcarneiro.com/contact/" class="liinternal">formulário de contato</a>, peço que informem se são:</p><ul><li>meus alunos (Aluno);</li><li>professores (Professor); ou</li><li>alunos de outras instituições (Estudante).</li></ul> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/algumas-noticias/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Outra solução para o nofollow</title><link>http://www.jlcarneiro.com/outra-solucao-para-o-nofollow/</link> <comments>http://www.jlcarneiro.com/outra-solucao-para-o-nofollow/#comments</comments> <pubDate>Thu, 15 Nov 2007 18:43:29 +0000</pubDate> <dc:creator>José Luís</dc:creator> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[internet]]></category> <category><![CDATA[plugins]]></category> <category><![CDATA[webdesign]]></category> <category><![CDATA[WordPress]]></category> <guid
isPermaLink="false">http://www.jlcarneiro.com/2007/11/outra-solucao-para-o-nofollow/</guid> <description><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p>Ao escrever sobre assuntos polêmicos como pirataria, drogas ou discriminação, torna-se necessário indicar sites sobre o assunto, mas não é desejável a associação a eles. É aí que entra a tag rel="nofollow": ela instrui os mecanismos de busca (como o Google e o Yahoo!) a não indexarem a página apontada por um determinado link. Em [...]]]></description> <content:encoded><![CDATA[<p><img
width="100" height="100" src="http://www.jlcarneiro.com/wp-content/uploads/Image/galleries/wordpress-thumbnail.png" class="attachment-thumbnail wp-post-image" alt="wordpress.png" title="WordPress - plataforma de publicação pessoal semântica" /></p><p>Ao escrever sobre assuntos polêmicos como pirataria, drogas ou discriminação, torna-se necessário indicar sites sobre o assunto, mas não é desejável a associação a eles. É aí que entra a tag <code>rel="nofollow"</code>: ela instrui os mecanismos de busca (como o <a
href="http://www.google.com/" class="liexternal">Google</a> e o <a
href="http://www.yahoo.com/" class="liexternal">Yahoo!</a>) a não indexarem a página apontada por um determinado link.</p><p>Em teoria, é um grande recurso. Entretanto, a fim de se proteger de comentários de terceiros, o <a
href="http://wordpress.org/" class="liexternal">WordPress</a> a adota em <em>todos</em> os links existentes nos comentários. E isso prejudica o intercâmbio entre os diversos blogs.</p><p><span
id="more-264"></span>Há alguns meses, venho tentando encontrar uma solução para esse dilema: remover a tag dos comentários sem me expor a links desfavoráveis. Em fevereiro, alterei o código do <a
href="http://blog.taragana.com/index.php/archive/wordpress-15-plugin-strip-nofollow-tag-from-comment-urls/" class="liexternal">plugin encontrado no Simple Thoughts</a>, em minha <a
href="http://www.jlcarneiro.com/minha-solucao-para-o-nofollow/" class="liinternal">solução para o nofollow</a>. Depois de encontrar <a
href="http://www.jlcarneiro.com/follow-up-do-nofollow/" class="liinternal">um erro no meu código</a>, fiz as devidas correções e <a
href="http://www.jlcarneiro.com/minha-solucao-para-o-nofollow-parte-2/" class="liinternal">publiquei o código-fonte</a>.</p><p>Há poucos dias, descobri o plugin <a
href="http://wordpress.org/extend/plugins/nofollow-free/" class="liexternal">NoFollow Free</a>, de <a
href="http://www.michelem.org/wordpress-plugin-nofollow-free/" class="liexternal">Michele Marcucci</a>. Esse plugin:</p><ul><li>remove a tag do link autor do comentário;</li><li>remove a tag do texto dos comentários de autores registrados;</li><li>remove a tag do texto de autores com uma quantidade mínima de comentários autorizados;</li><li>recoloca a tag se palavras de uma &#8220;lista-negra&#8221; forem encontradas; e</li><li>exibe uma faixa no topo da página para divulgar a campanha.</li></ul><p>Como o código que eu usava era menos capaz, eu o aposentei e passei a usar o <a
href="http://wordpress.org/extend/plugins/nofollow-free/" class="liexternal">NoFollow Free</a>.</p><p><em>Recomendo!</em> <img
src='http://www.jlcarneiro.com/wp-includes/images/smilies/Sunglasses.png' alt=':cool:' class='wp-smiley' /></p> ]]></content:encoded> <wfw:commentRss>http://www.jlcarneiro.com/outra-solucao-para-o-nofollow/feed/</wfw:commentRss> <slash:comments>2</slash:comments> <series:name><![CDATA[Domando o Wordpress]]></series:name> </item> </channel> </rss>
