<?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>Bugz</title> <atom:link href="http://www.bugz.com.br/feed/" rel="self" type="application/rss+xml" /><link>http://www.bugz.com.br</link> <description>Consultoria Digital</description> <lastBuildDate>Sat, 18 Feb 2012 22:32:30 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /> <item><title>WordPress &#8211; economize alguns segundos</title><link>http://www.bugz.com.br/2012/02/wordpress-economize-alguns-segundos/</link> <comments>http://www.bugz.com.br/2012/02/wordpress-economize-alguns-segundos/#comments</comments> <pubDate>Sat, 18 Feb 2012 22:32:29 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Bobagens]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[Wordpress]]></category> <category><![CDATA[dicas]]></category> <category><![CDATA[segundos]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=509</guid> <description><![CDATA[<p>Se você passa grande parte do seu tempo administrando seu blog, ou se simplesmente você acompanha as estatísticas e comentários do seu blog com alguma frequência, uma dica. Se você acessar diretamente a url da página ou fizer o bookmark dela no seu browser, você acessa os diretamente, sem ter que carregar o dashboard, clicar [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p>Se você passa grande parte do seu tempo administrando seu blog, ou se simplesmente você acompanha as estatísticas e comentários do seu blog com alguma frequência, uma dica.</p><p><span
id="more-509"></span></p><p>Se você acessar diretamente a url da página ou fizer o bookmark dela no seu browser, você acessa os diretamente, sem ter que carregar o dashboard, clicar e esperar carregar.<br
/> Eu mantenho uma pasta de bookmarks para todos os blogs que preciso administrar com as principais coisas que faço, como criar novo post, comentários, plugins e estatísticas.<br
/> Bobagem, eu sei, mas economiza alguns segundos.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/" title="Permanent link to WordPress e ShortCode &#8211; Parte II">WordPress e ShortCode &#8211; Parte II</a></li><li> <a
href="http://www.bugz.com.br/2011/12/ajax-no-wordpress/" title="Permanent link to Ajax no WordPress">Ajax no WordPress</a></li><li> <a
href="http://www.bugz.com.br/2012/02/wordpress-respondendo-em-dois-enderecos/" title="Permanent link to WordPress respondendo em dois endereços">WordPress respondendo em dois endereços</a></li><li> <a
href="http://www.bugz.com.br/2011/07/sql-pequenos-detalhes-fazem-a-diferenca/" title="Permanent link to SQL pequenos detalhes fazem a diferença">SQL pequenos detalhes fazem a diferença</a></li><li> <a
href="http://www.bugz.com.br/2012/02/evernote-no-linux/" title="Permanent link to Evernote no Linux">Evernote no Linux</a></li><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/" title="Permanent link to WordPress e Shortcodes">WordPress e Shortcodes</a></li><li> <a
href="http://www.bugz.com.br/2011/10/custom-fields-do-jeito-facil/" title="Permanent link to Custom Fields do WordPress do jeito fácil">Custom Fields do WordPress do jeito fácil</a></li><li> <a
href="http://www.bugz.com.br/2011/08/ordenando-por-mais-vistos/" title="Permanent link to Ordenando por mais vistos">Ordenando por mais vistos</a></li><li> <a
href="http://www.bugz.com.br/2011/03/sprites/" title="Permanent link to Sprites">Sprites</a></li><li> <a
href="http://www.bugz.com.br/2011/02/android-market/" title="Permanent link to Android Market">Android Market</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2012/02/wordpress-economize-alguns-segundos/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Evernote no Linux</title><link>http://www.bugz.com.br/2012/02/evernote-no-linux/</link> <comments>http://www.bugz.com.br/2012/02/evernote-no-linux/#comments</comments> <pubDate>Fri, 10 Feb 2012 15:40:15 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Android]]></category> <category><![CDATA[Bobagens]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[android]]></category> <category><![CDATA[clone]]></category> <category><![CDATA[Evernote]]></category> <category><![CDATA[linux]]></category> <category><![CDATA[mac]]></category> <category><![CDATA[nixnote]]></category> <category><![CDATA[sincronismo]]></category> <category><![CDATA[software]]></category> <category><![CDATA[windows]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=505</guid> <description><![CDATA[<p>Evernote é um softwarezinho de celular que faz sincronismo de anotações&#8230; Não sei exatamente porque, mas eu acabei me acostumando com ele no Android e agora ele é o meu padrão. Depois de receber um Mac aqui no escritório para trabalhar (não tive muita escolha), eu acidentalmente descobri que existem softwares desktop para o Evernote [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p>Evernote é um softwarezinho de celular que faz sincronismo de anotações&#8230;<br
/> Não sei exatamente porque, mas eu acabei me acostumando com ele no Android e agora ele é o meu padrão.<br
/> <span
id="more-505"></span><br
/> Depois de receber um Mac aqui no escritório para trabalhar (não tive muita escolha), eu acidentalmente descobri que existem softwares desktop para o Evernote &#8211; Fiquei feliz a princípio, até descobrir que eles rodam somente no Mac ou Windows (minhas maquinas pessoais todas rodam Linux).<br
/> Frustrado, desencanei de procurar opções&#8230; até que hoje, acidentalmente, eu esbarrei em um post aleatório na web:<br
/> <a
href="http://www.droider.com.br/linux-2/evernote-ubuntu-sim-nevernote.html" target="_blank">http://www.droider.com.br/linux-2/evernote-ubuntu-sim-nevernote.html</a> que fala sobre um software que faze exatamente isso&#8230; NixNote é um clone do Evernote para linux!!</p><p>Estou usando ele no momento.. até agora ele tem funcionado bem. Vamos ver como ele se comporta.</p><p>Links:<br
/> Evernote<br
/> <a
href="http://www.evernote.com/">http://www.evernote.com/</a><br
/> Post Origem<br
/> <a
href="http://www.droider.com.br/linux-2/evernote-ubuntu-sim-nevernote.html">http://www.droider.com.br/linux-2/evernote-ubuntu-sim-nevernote.html</a><br
/> SourceForge NixNote<br
/> <a
href="http://sourceforge.net/projects/nevernote/files/Current/">http://sourceforge.net/projects/nevernote/files/Current/</a></p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/12/android-app-para-o-ubuntu-one/" title="Permanent link to Android App para o Ubuntu One">Android App para o Ubuntu One</a></li><li> <a
href="http://www.bugz.com.br/2011/02/android-market/" title="Permanent link to Android Market">Android Market</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores/" title="Permanent link to Aplicativos Android&ndash;Os melhores">Aplicativos Android&ndash;Os melhores</a></li><li> <a
href="http://www.bugz.com.br/2011/12/camera-360-melhores-apps-para-android/" title="Permanent link to Camera 360 &#8211; Melhores Apps para android">Camera 360 &#8211; Melhores Apps para android</a></li><li> <a
href="http://www.bugz.com.br/2011/03/root-e-overclock-no-seu-android/" title="Permanent link to &ldquo;Root&rdquo; e Overclock no seu android">&ldquo;Root&rdquo; e Overclock no seu android</a></li><li> <a
href="http://www.bugz.com.br/2011/03/amazon-android-appstore/" title="Permanent link to Amazon Android AppStore">Amazon Android AppStore</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores-2/" title="Permanent link to Aplicativos Android&ndash;Os Melhores &#8211; aCar">Aplicativos Android&ndash;Os Melhores &#8211; aCar</a></li><li> <a
href="http://www.bugz.com.br/2011/03/aplicativos-androidos-melhoresxiia-live/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;Xiia Live">Aplicativos Android&ndash;Os melhores&ndash;Xiia Live</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhoressms-backup/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;SMS Backup">Aplicativos Android&ndash;Os melhores&ndash;SMS Backup</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhorestunein-radio/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio">Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2012/02/evernote-no-linux/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>WordPress respondendo em dois endereços</title><link>http://www.bugz.com.br/2012/02/wordpress-respondendo-em-dois-enderecos/</link> <comments>http://www.bugz.com.br/2012/02/wordpress-respondendo-em-dois-enderecos/#comments</comments> <pubDate>Sun, 05 Feb 2012 03:20:08 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Desenvolvimento]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[Wordpress]]></category> <category><![CDATA[endereço]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=495</guid> <description><![CDATA[<p>Uma das coisas estranhas no WordPress que eu tive que pesquisar recentemente foi a criação de um site que respondesse por duas URLs de forma independente, porém, úncia. É, pois é&#8230; eu também não entendi nada. Eventualmente entendemos que ele queria que www.meublogfictício.com.br respondesse normalmente, e que se um usuário entrasse com o domínio www.meublogfictícioCopia.com.br [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p>Uma das coisas estranhas no WordPress que eu tive que pesquisar recentemente foi a criação de um site que respondesse por duas URLs de forma independente, porém, úncia.<br
/> <span
id="more-495"></span><br
/> É, pois é&#8230; eu também não entendi nada. Eventualmente entendemos que ele queria que<br
/> www.meublogfictício.com.br respondesse normalmente, e que se um usuário entrasse com o domínio www.meublogfictícioCopia.com.br que este funcionasse exatamente igual ao outro, sem redirects ou nada deste tipo.</p><p>O WordPress armazena suas URLs no banco&#8230; aí como procedemos?</p><p>A solução é mais simples do que parece:</p><p>Adicione isso logo no inicio do seu functions:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;">update_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'siteurl'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'http://'</span><span style="color: #339933;">.</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;HTTP_HOST&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
update_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'home'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'http://'</span><span style="color: #339933;">.</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;HTTP_HOST&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Pronto, se você programou seu WP direitinho&#8230; tudo deveria funcionar.</p><p>Acabei dando de encontro com uma segunda opção, talvez melhor ainda que a sugerida.</p><p>Ao invés de atualizar as opções do blog (que força uma escrita no banco) tem uma opção mais simples:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_HOME'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'http://'</span><span style="color: #339933;">.</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;HTTP_HOST&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_SITEURL'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'http://'</span><span style="color: #339933;">.</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;HTTP_HOST&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Espero ter ajudado algum mortal.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/" title="Permanent link to WordPress e ShortCode &#8211; Parte II">WordPress e ShortCode &#8211; Parte II</a></li><li> <a
href="http://www.bugz.com.br/2011/12/ajax-no-wordpress/" title="Permanent link to Ajax no WordPress">Ajax no WordPress</a></li><li> <a
href="http://www.bugz.com.br/2011/07/sql-pequenos-detalhes-fazem-a-diferenca/" title="Permanent link to SQL pequenos detalhes fazem a diferença">SQL pequenos detalhes fazem a diferença</a></li><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/" title="Permanent link to WordPress e Shortcodes">WordPress e Shortcodes</a></li><li> <a
href="http://www.bugz.com.br/2011/10/custom-fields-do-jeito-facil/" title="Permanent link to Custom Fields do WordPress do jeito fácil">Custom Fields do WordPress do jeito fácil</a></li><li> <a
href="http://www.bugz.com.br/2011/08/ordenando-por-mais-vistos/" title="Permanent link to Ordenando por mais vistos">Ordenando por mais vistos</a></li><li> <a
href="http://www.bugz.com.br/2011/09/file_get_contents/" title="Permanent link to PHP &#8211; Alternativa para file_get_contents">PHP &#8211; Alternativa para file_get_contents</a></li><li> <a
href="http://www.bugz.com.br/2011/03/cakephp-descomplicando-o-complicado/" title="Permanent link to CakePHP &#8211; Descomplicando o complicado">CakePHP &#8211; Descomplicando o complicado</a></li><li> <a
href="http://www.bugz.com.br/2011/03/console-do-cake/" title="Permanent link to Console do Cake">Console do Cake</a></li><li> <a
href="http://www.bugz.com.br/2011/03/cakephp-e-jscss-minify/" title="Permanent link to CakePHP e Js/CSS minify">CakePHP e Js/CSS minify</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2012/02/wordpress-respondendo-em-dois-enderecos/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Chrome 2 Phone &#8211; Android &amp; Web</title><link>http://www.bugz.com.br/2011/12/chrome-2-phone-android-web/</link> <comments>http://www.bugz.com.br/2011/12/chrome-2-phone-android-web/#comments</comments> <pubDate>Fri, 30 Dec 2011 13:43:33 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Android]]></category> <category><![CDATA[Hardware]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[android]]></category> <category><![CDATA[aplicativo]]></category> <category><![CDATA[celular]]></category> <category><![CDATA[Chrome]]></category> <category><![CDATA[phone]]></category> <category><![CDATA[web]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=472</guid> <description><![CDATA[<p>O Chrome 2 Phone tem um nome praticamente auto-explicativo. Quantas vezes você não estava sentado no seu computador, buscando alguma informação como endereços ou direções para ir algum lugar, quando se deparou com o fato de que você estava fazendo isso no computador e não no celular! Com o Chrome 2 Phone isso tudo se [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p><img
src="http://www.bugz.com.br/wp-content/uploads/2011/12/web2chrome1-100x100.jpg" alt="" title="web2chrome" width="100" height="100" class="alignleft size-thumbnail wp-image-475" style="padding:0 10px 0 0"/>O <a
href="https://chrome.google.com/webstore/detail/oadboiipflhobonjjffjbfekfjcgkhco" title="App Chrome 2 Phone">Chrome 2 Phone</a> tem um nome praticamente auto-explicativo. Quantas vezes você não estava sentado no seu computador, buscando alguma informação como endereços ou direções para ir algum lugar, quando se deparou com o fato de que você estava fazendo isso no computador e não no celular!<br/><br/><span
id="more-472"></span><br
/> Com o <a
href="https://chrome.google.com/webstore/detail/oadboiipflhobonjjffjbfekfjcgkhco" title="App Chrome 2 Phone">Chrome 2 Phone</a> isso tudo se resolve num clique de um botão, se você tiver o plugin instalado no seu chrome, no celular e de fato estiver usando o chrome. Bom o plugin é bem inteligente&#8230; clicar no botão quando estou num maps, ele abre o maps no meu celular. Clicar em um número de telefone, ele automaticamente já abre meu discador com o número selecionado. Tem muita coisa que você sempre desejou. Uma vez instalado é realmente tão simples quanto clicar um botão.</p><p>Veja aqui o vídeo explicativo:<br
/> <iframe
width="560" height="315" src="http://www.youtube.com/embed/pQb243niMlg?rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe></p><p>Vale a pena brincar.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/02/android-market/" title="Permanent link to Android Market">Android Market</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores/" title="Permanent link to Aplicativos Android&ndash;Os melhores">Aplicativos Android&ndash;Os melhores</a></li><li> <a
href="http://www.bugz.com.br/2011/03/aplicativos-androidos-melhoresxiia-live/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;Xiia Live">Aplicativos Android&ndash;Os melhores&ndash;Xiia Live</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhorestunein-radio/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio">Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores-2/" title="Permanent link to Aplicativos Android&ndash;Os Melhores &#8211; aCar">Aplicativos Android&ndash;Os Melhores &#8211; aCar</a></li><li> <a
href="http://www.bugz.com.br/2011/03/amazon-android-appstore/" title="Permanent link to Amazon Android AppStore">Amazon Android AppStore</a></li><li> <a
href="http://www.bugz.com.br/2011/12/android-app-para-o-ubuntu-one/" title="Permanent link to Android App para o Ubuntu One">Android App para o Ubuntu One</a></li><li> <a
href="http://www.bugz.com.br/2011/12/camera-360-melhores-apps-para-android/" title="Permanent link to Camera 360 &#8211; Melhores Apps para android">Camera 360 &#8211; Melhores Apps para android</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores-3/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;SkyFire">Aplicativos Android&ndash;Os melhores&ndash;SkyFire</a></li><li> <a
href="http://www.bugz.com.br/2011/03/root-e-overclock-no-seu-android/" title="Permanent link to &ldquo;Root&rdquo; e Overclock no seu android">&ldquo;Root&rdquo; e Overclock no seu android</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/chrome-2-phone-android-web/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Android App para o Ubuntu One</title><link>http://www.bugz.com.br/2011/12/android-app-para-o-ubuntu-one/</link> <comments>http://www.bugz.com.br/2011/12/android-app-para-o-ubuntu-one/#comments</comments> <pubDate>Thu, 29 Dec 2011 10:38:40 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Android]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[android]]></category> <category><![CDATA[aplicativo]]></category> <category><![CDATA[cloud]]></category> <category><![CDATA[fotos]]></category> <category><![CDATA[linux]]></category> <category><![CDATA[one]]></category> <category><![CDATA[sincronismo]]></category> <category><![CDATA[ubuntu]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=466</guid> <description><![CDATA[<p>O Android agora tem um aplicativo que faz o sync com o Ubuntu One! O Ubuntu One é um serviço Cloud da Ubuntu que permite usuários armazenarem de graça até 5GB na web. Apenas mais um daqueles serviços no estilo de i-Cloud e tantos outros por aí&#8230; Como usuário do Ubuntu, eu acabei adotando esse [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p><img
src="http://www.bugz.com.br/wp-content/uploads/2011/12/ubuntu_one_app.png" alt="Ubuntu One App Logo" title="ubuntu_one_app" width="100" height="100" class="alignleft size-full wp-image-467" style="padding:0 10px 0 0"/>O Android agora tem um aplicativo que faz o sync com o Ubuntu One!<br
/> O <a
href="http://one.ubuntu.com" title="Ubuntu One">Ubuntu One</a> é um serviço Cloud da <a
href="http://ubuntu.com" title="Ubuntu Linux Operating System">Ubuntu</a> que permite usuários armazenarem de graça até 5GB na web. Apenas mais um daqueles serviços no estilo de i-Cloud e tantos outros por aí&#8230; Como usuário do <a
href="http://ubuntu.com" title="Ubuntu Linux Operating System">Ubuntu</a>, eu acabei adotando esse serviço para manter algumas coisas minhas na nuvem.<span
id="more-466"></span><br
/> O aplicativo roda em background no seu celular&#8230; monitorando qualquer coisa que você queira sincronizar (no meu caso, são as fotos que tiro). Ao tirar uma foto, o aplicativo verifica se estou no Wifi (configurável no app), e se eu por acaso estiver, ele envia as fotos tiradas para minha conta no <a
href="http://one.ubuntu.com" title="Ubuntu One">Ubuntu One</a>.<br
/> O legal disso tudo é que eu tenho um serviço similar no computador, que faz o sincronismo com minha conta do <a
href="http://one.ubuntu.com" title="Ubuntu One">Ubuntu One</a>, puxando os arquivos que eu seleciono, assim, mantenho minhas fotos de ceulular sempre atualizadas em meu note, nuvem e celular.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2012/02/evernote-no-linux/" title="Permanent link to Evernote no Linux">Evernote no Linux</a></li><li> <a
href="http://www.bugz.com.br/2011/12/camera-360-melhores-apps-para-android/" title="Permanent link to Camera 360 &#8211; Melhores Apps para android">Camera 360 &#8211; Melhores Apps para android</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhorestunein-radio/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio">Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores/" title="Permanent link to Aplicativos Android&ndash;Os melhores">Aplicativos Android&ndash;Os melhores</a></li><li> <a
href="http://www.bugz.com.br/2011/03/amazon-android-appstore/" title="Permanent link to Amazon Android AppStore">Amazon Android AppStore</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores-2/" title="Permanent link to Aplicativos Android&ndash;Os Melhores &#8211; aCar">Aplicativos Android&ndash;Os Melhores &#8211; aCar</a></li><li> <a
href="http://www.bugz.com.br/2011/03/root-e-overclock-no-seu-android/" title="Permanent link to &ldquo;Root&rdquo; e Overclock no seu android">&ldquo;Root&rdquo; e Overclock no seu android</a></li><li> <a
href="http://www.bugz.com.br/2011/03/aplicativos-androidos-melhoresxiia-live/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;Xiia Live">Aplicativos Android&ndash;Os melhores&ndash;Xiia Live</a></li><li> <a
href="http://www.bugz.com.br/2011/02/android-market/" title="Permanent link to Android Market">Android Market</a></li><li> <a
href="http://www.bugz.com.br/2011/12/chrome-2-phone-android-web/" title="Permanent link to Chrome 2 Phone &#8211; Android &#038; Web">Chrome 2 Phone &#8211; Android &#038; Web</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/android-app-para-o-ubuntu-one/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Camera 360 &#8211; Melhores Apps para android</title><link>http://www.bugz.com.br/2011/12/camera-360-melhores-apps-para-android/</link> <comments>http://www.bugz.com.br/2011/12/camera-360-melhores-apps-para-android/#comments</comments> <pubDate>Wed, 28 Dec 2011 21:44:05 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Android]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[android]]></category> <category><![CDATA[aplicativo]]></category> <category><![CDATA[camera]]></category> <category><![CDATA[download]]></category> <category><![CDATA[fotos]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=459</guid> <description><![CDATA[<p>Fazia algum tempo que eu nãoo escrevia sobre aplicativos Android. Na verdade, eu tenho usado pouco o meu celular como brinquedo e não tive muito tempo de ficar testando novos aplicativos. Uma das principais coisas que eu tenho usado meu celular é para tirar fotos, mais pelo fato de ele estar sempre por perto do [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p><img
src="http://www.bugz.com.br/wp-content/uploads/2011/12/camera360.jpg" alt="camera360 image" title="camera360 image" width="100" height="100" class="alignleft size-full wp-image-460" style="padding:0 10px 0 0; "/>Fazia algum tempo que eu nãoo escrevia sobre aplicativos Android. Na verdade, eu tenho usado pouco o meu celular como brinquedo e não tive muito tempo de ficar testando novos aplicativos.<br
/> Uma das principais coisas que eu tenho usado meu celular é para tirar fotos, mais pelo fato de ele estar sempre por perto do que pela qualidade das imagens.<span
id="more-459"></span><br
/> Agora que falei de qualidade de imagens, vamos falar do <a
href="htpp://market.android.com/details?id=vStudio.Android.Camera360">Camera 360</a>. Um dos principais problemas desses programas que fazem manipulação de fotos em celular é que eles geralmente trabalham com efeitos toscos, que não valorizam a foto. Claro que todos nós achamos engraçado ver uma foto ou outra de pessoas distorcidas, verdes ou colocadas dentro de um poster gigante, mas&#8230; isso passa. As vezes você da a sorte de tirar uma foto incrível, só que ela fica pra sempre com aquele efeito tosco e já era.<br
/> Esse é um dos diferenciais do Camera 360, ele tira uma cópia de segurança da sua foto original&#8230; assim, além da foto &#8220;retocada&#8221; você mantém a original.<br
/> A outra vantagem dele é bem simples&#8230; ele tem uns efeitos ótimos, que realmente realçam as fotos de forma bonita e profissional.<br
/> Vale o download.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/12/android-app-para-o-ubuntu-one/" title="Permanent link to Android App para o Ubuntu One">Android App para o Ubuntu One</a></li><li> <a
href="http://www.bugz.com.br/2011/02/android-market/" title="Permanent link to Android Market">Android Market</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores/" title="Permanent link to Aplicativos Android&ndash;Os melhores">Aplicativos Android&ndash;Os melhores</a></li><li> <a
href="http://www.bugz.com.br/2011/03/amazon-android-appstore/" title="Permanent link to Amazon Android AppStore">Amazon Android AppStore</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhorestunein-radio/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio">Aplicativos Android&ndash;Os melhores&ndash;TuneIn Radio</a></li><li> <a
href="http://www.bugz.com.br/2011/03/aplicativos-androidos-melhoresxiia-live/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;Xiia Live">Aplicativos Android&ndash;Os melhores&ndash;Xiia Live</a></li><li> <a
href="http://www.bugz.com.br/2011/03/root-e-overclock-no-seu-android/" title="Permanent link to &ldquo;Root&rdquo; e Overclock no seu android">&ldquo;Root&rdquo; e Overclock no seu android</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores-2/" title="Permanent link to Aplicativos Android&ndash;Os Melhores &#8211; aCar">Aplicativos Android&ndash;Os Melhores &#8211; aCar</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhores-3/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;SkyFire">Aplicativos Android&ndash;Os melhores&ndash;SkyFire</a></li><li> <a
href="http://www.bugz.com.br/2011/02/aplicativos-androidos-melhoressms-backup/" title="Permanent link to Aplicativos Android&ndash;Os melhores&ndash;SMS Backup">Aplicativos Android&ndash;Os melhores&ndash;SMS Backup</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/camera-360-melhores-apps-para-android/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>WordPress e ShortCode &#8211; Parte II</title><link>http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/</link> <comments>http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/#comments</comments> <pubDate>Tue, 20 Dec 2011 16:26:58 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Desenvolvimento]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[Wordpress]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[shortcodes]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=454</guid> <description><![CDATA[<p>Dando continuidade ao post de ontem onde eu rapidamente expliquei algumas utilidades dos shortcodes no WordPress, eu queria entrar em maiores detalhes de como utilizar de forma correta essa ferramenta no WordPress. Vamos imaginar o seguinte: Você tem que disponibilizar um jeito simples de um usuário colocar um texto dentro de um padrão X no [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p>Dando continuidade ao <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/" title="Ver post">post</a> de ontem onde eu rapidamente expliquei algumas utilidades dos shortcodes no <a
href="http://wordpress.org" title="Wordpress site">WordPress</a>, eu queria entrar em maiores detalhes de como utilizar de forma correta essa ferramenta no <a
href="http://wordpress.org" title="Wordpress site">WordPress</a>.<span
id="more-454"></span><br
/> Vamos imaginar o seguinte:<br
/> Você tem que disponibilizar um jeito simples de um usuário colocar um texto dentro de um padrão X no meio do post, e você precisa também criar um botão personalizado para que o usuário possa adiciona-lo ao post em qualquer lugar.</p><p>Você precisaria gerar os seguintes códigos no post final:</p><pre lang="html" line="1" escaped="1">
&lt;!-- Texto em destaque -->
&lt;p class="textoEmDestaque">
&lt;span>Título do destaque&lt;/span>
Texto do post que está em destaque.
&lt;/p>
&lt;!-- Botão personalizado -->
&lt;a class="botaoMaisInfo" title="Clique para obter maiores informações">+ Informações&lt;/a>
</pre><p>Bom, com o tutorial de ontem, isso deve ser bem fácil para você fazer&#8230; criar as duas funções, os dois add_shortcode e boas&#8230;.</p><p>O conteúdo do post ficaria algo assim:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
</pre></td><td
class="code"><pre class="html" style="font-family:monospace;">bla bla bla
[destaque titulo=&quot;Meu texto em destaque&quot;]O texto do que aparece em destaque está aqui dentro[/destaque]
mais bla bla bla
[botaoInfo /]</pre></td></tr></table></div><p>Só pra refrescar a memória (ou para facilitar a vida dos que são preguiçosos demais para ver meu outro <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/" title="Ver post">post</a>), nosso PHP ficaria assim:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> scTextoDestaque<span style="color: #009900;">&#40;</span><span style="color: #000088;">$params</span><span style="color: #339933;">,</span> <span style="color: #000088;">$content</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #990000;">extract</span><span style="color: #009900;">&#40;</span>shortcode_atts<span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
        <span style="color: #0000ff;">'titulo'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">''</span>
    <span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$params</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #0000ff;">'&lt;p class=&quot;textoEmDestaque&quot;&gt;&lt;span&gt;'</span><span style="color: #339933;">.</span><span style="color: #000088;">$titulo</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&lt;/span&gt;'</span><span style="color: #339933;">.</span><span style="color: #000088;">$content</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&lt;/p&gt;'</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">function</span> scBotaoInfo<span style="color: #009900;">&#40;</span><span style="color: #000088;">$params</span><span style="color: #339933;">,</span> <span style="color: #000088;">$content</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #0000ff;">'&lt;a class=&quot;botaoMaisInfo&quot; title=&quot;Clique para obter maiores informações&quot;&gt;+ Informações&lt;/a&gt;'</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
add_shortcode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'destaque'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'scTextoDestaque'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
add_shortcode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'botaoInfo'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'scBotaoInfo'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Isso tudo funciona lindo e maravilhoso e você pode achar que seus problemas foram finalmente sanados&#8230; bom, é aí que entra a entidade chamada <strong>usuário</strong>.<br
/> Inevitavelmente eles vão tentar colocar um botão de +Info dentro do texto em destaque (embora você pode ter especificado que isso não deveria acontecer)&#8230; e aí? o que fazemos?</p><p>Estamos com um post assim:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td
class="code"><pre class="html" style="font-family:monospace;">bla bla bla
[destaque titulo=&quot;Meu texto em destaque&quot;]O texto do que aparece em
destaque está aqui dentro
[botaoInfo /]
[/destaque]
mais bla bla bla</pre></td></tr></table></div><p>Com isso, todo seu esforço de tentar fazer algo simples e intuitivo foi pro vinagre?<br
/> Bom, quase isso&#8230;</p><p>O WordPress tem uma funcionalidade que resolve esta questão:<br
/> Vamos usar a função <a
href="http://codex.wordpress.org/Function_Reference/do_shortcode" title="Function reference">do_shortcode()</a> do <a
href="http://wordpress.org" title="Wordpress site">WordPress</a>&#8230; vamos alterar nossas funções para resolver esta questão.<br
/> Nosso PHP ficaria no final assim:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> scTextoDestaque<span style="color: #009900;">&#40;</span><span style="color: #000088;">$params</span><span style="color: #339933;">,</span> <span style="color: #000088;">$content</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #990000;">extract</span><span style="color: #009900;">&#40;</span>shortcode_atts<span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
        <span style="color: #0000ff;">'titulo'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">''</span>
    <span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$params</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #0000ff;">'&lt;p class=&quot;textoEmDestaque&quot;&gt;&lt;span&gt;'</span><span style="color: #339933;">.</span>do_shortcode<span style="color: #009900;">&#40;</span><span style="color: #000088;">$titulo</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&lt;/span&gt;'</span><span style="color: #339933;">.</span>do_shortcode<span style="color: #009900;">&#40;</span><span style="color: #000088;">$content</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&lt;/p&gt;'</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">function</span> scBotaoInfo<span style="color: #009900;">&#40;</span><span style="color: #000088;">$params</span><span style="color: #339933;">,</span> <span style="color: #000088;">$content</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #0000ff;">'&lt;a class=&quot;botaoMaisInfo&quot; title=&quot;Clique para obter maiores informações&quot;&gt;+ Informações&lt;/a&gt;'</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
add_shortcode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'destaque'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'scTextoDestaque'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
add_shortcode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'botaoInfo'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'scBotaoInfo'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Vamos analizar o que eu fiz?<br
/> Eu coloquei um <a
href="http://codex.wordpress.org/Function_Reference/do_shortcode" title="Function reference">do_shortcode()</a> em volta do $content e um em volta do $titulo (embora nunca deveríamos ter um shortcode dentro do título&#8230; eu já trabalho com usuários tempo o suficiente para imaginar que eles possam querer fazer isso).<br
/> Na função botaoInfo, vocês podem perceber que eu não fiz tratamento nenhum, tendo em vista que sempre retornamos um objeto estático.</p><p>Isso garante que o <a
href="http://wordpress.org" title="Wordpress site">WordPress</a> processe o shortcode dentro de um conteúdo originário de um outro shortcode.</p><p>Acho que isso finaliza minha explicação de shortcodes&#8230;.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/" title="Permanent link to WordPress e Shortcodes">WordPress e Shortcodes</a></li><li> <a
href="http://www.bugz.com.br/2011/12/ajax-no-wordpress/" title="Permanent link to Ajax no WordPress">Ajax no WordPress</a></li><li> <a
href="http://www.bugz.com.br/2012/02/wordpress-respondendo-em-dois-enderecos/" title="Permanent link to WordPress respondendo em dois endereços">WordPress respondendo em dois endereços</a></li><li> <a
href="http://www.bugz.com.br/2011/10/custom-fields-do-jeito-facil/" title="Permanent link to Custom Fields do WordPress do jeito fácil">Custom Fields do WordPress do jeito fácil</a></li><li> <a
href="http://www.bugz.com.br/2011/07/sql-pequenos-detalhes-fazem-a-diferenca/" title="Permanent link to SQL pequenos detalhes fazem a diferença">SQL pequenos detalhes fazem a diferença</a></li><li> <a
href="http://www.bugz.com.br/2011/08/ordenando-por-mais-vistos/" title="Permanent link to Ordenando por mais vistos">Ordenando por mais vistos</a></li><li> <a
href="http://www.bugz.com.br/2011/03/cakephp-descomplicando-o-complicado/" title="Permanent link to CakePHP &#8211; Descomplicando o complicado">CakePHP &#8211; Descomplicando o complicado</a></li><li> <a
href="http://www.bugz.com.br/2011/03/console-do-cake/" title="Permanent link to Console do Cake">Console do Cake</a></li><li> <a
href="http://www.bugz.com.br/2011/09/file_get_contents/" title="Permanent link to PHP &#8211; Alternativa para file_get_contents">PHP &#8211; Alternativa para file_get_contents</a></li><li> <a
href="http://www.bugz.com.br/2011/03/cakephp-e-jscss-minify/" title="Permanent link to CakePHP e Js/CSS minify">CakePHP e Js/CSS minify</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>WordPress e Shortcodes</title><link>http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/</link> <comments>http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/#comments</comments> <pubDate>Mon, 19 Dec 2011 17:14:09 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Artigos]]></category> <category><![CDATA[Code Snippets]]></category> <category><![CDATA[Desenvolvimento]]></category> <category><![CDATA[Wordpress]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=447</guid> <description><![CDATA[<p>Que o WordPress facilitou a vida de, ambos desenvolvedores e usuários, para publicar conteúdos na web isso ninguém discute. Porém, é muito comum os desenvovledores esquecerem de que usuários irão controlar o conteúdo dos blogs. O WordPress tem jeitos de facilitar a vida do usuário usando os &#8220;Short Codes&#8221;. Eles permitem usuários inserirem conteúdos complicados [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p>Que o <a
href="http://wordpress.org" title="Wordpress Site">WordPress</a> facilitou a vida de, ambos desenvolvedores e usuários, para publicar conteúdos na web isso ninguém discute. Porém, é muito comum os desenvovledores esquecerem de que usuários irão controlar o conteúdo dos blogs.<br
/> O <a
href="http://wordpress.org" title="Wordpress Site">WordPress</a> tem jeitos de facilitar a vida do usuário usando os &#8220;Short Codes&#8221;. Eles permitem usuários inserirem conteúdos complicados sem necessariamente saber uma vírgula de HTML.<br
/> <span
id="more-447"></span><br
/> Os Shortcodes são usados para facilitar a vida do usuário. Os exemplos de sua utilização são muito banais geralmente, como para colocação de Bold ou Italico.</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
</pre></td><td
class="code"><pre class="html" style="font-family:monospace;">Exemplo de texto em [b]bold[/b]
e um exemplo de texto em [i]italico[/i]</pre></td></tr></table></div><p>Como você pode ver (se você for um desenvolvedor principalmente), não existe grande finalidade para incluir os ShortCodes seguindo esses princípios. Bom, é nesse caso que você não está de fato vendo a aplicação real dessa ferramenta&#8230;.<br
/> Vamos supor o seguinte, você tem um blog onde você quer incluir uma imagem default de assinatura no final de um post?<br
/> O normal seria você incluir uma tag de imagem no final do post&#8230; mas aí você também precisa incluir o link para a página do perfil do autor que é uma página personalizada. Você desenvolvedor não acha que isso é tão complexo né? E o seu usuário final? Será que ele sabe fazer isso? Ele não vai te ligar num sábado, quando você está tomando pinga com uva na práia para saber como fazer aquele negócio de link na imagem do post?<br
/> É aí que entra o Shortcode&#8230;.<br
/> O que é mais fácil você ensinar seu cliente?<br
/> 1)</p><pre lanh="html" line="1" escaped="1">
&lt;a href="/usuario-personalizado/">&lt;img src="/wp-content/uploads/assinaturas/usuario-personalizado.gif" title="Assinatura do usuario personalizado" alt="Assinatura do usuario personalizado">&lt;/a>
</pre><p>2)</p><pre lanh="html" line="1">
[assinatura nome="usuario-personalizado" /]
</pre><p>Se você respondeu opção 1, então seus usuários são sem sombra de dúvida um ponto fora da curva&#8230;.</p><p>Agora você deve estar se perguntando&#8230; legal&#8230; e daí? Como eu faço isso?</p><p>Bom é bem mais simples do que você imagina&#8230; na sua functions.php, adicione o seguinte código:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> sc_assinatura<span style="color: #009900;">&#40;</span><span style="color: #000088;">$params</span><span style="color: #339933;">,</span> <span style="color: #000088;">$content</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #990000;">extract</span><span style="color: #009900;">&#40;</span>shortcode_atts<span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
        <span style="color: #0000ff;">'imgDir'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'/wp-content/uploads/assinaturas/'</span><span style="color: #339933;">,</span>
        <span style="color: #0000ff;">'nome'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Usuario Default'</span><span style="color: #339933;">,</span>
        <span style="color: #0000ff;">'imagem'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'usuario-default'</span><span style="color: #339933;">,</span>
        <span style="color: #0000ff;">'ext'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'.gif'</span>
    <span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$params</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span>
        <span style="color: #0000ff;">'&lt;a href=&quot;/'</span><span style="color: #339933;">.</span><span style="color: #000088;">$nome</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'/&quot;&gt;&lt;img src=&quot;'</span><span style="color: #339933;">.</span><span style="color: #000088;">$imgDir</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'.$imagem.$ext.'</span><span style="color: #0000ff;">&quot; title=&quot;</span>Assinatura <span style="color: #b1b100;">do</span> <span style="color: #0000ff;">'.$nome.'</span><span style="color: #0000ff;">&quot; alt=&quot;</span>Assinatura <span style="color: #b1b100;">do</span> <span style="color: #0000ff;">'.$nome.'</span><span style="color: #0000ff;">&quot;&gt;&lt;/a&gt;';
}
add_shortcode('assinatura','sc_assinatura');</span></pre></td></tr></table></div><p>Agora seu usuário só precisa aprender um commando para incluir a assinatura:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
</pre></td><td
class="code"><pre class="html" style="font-family:monospace;">[assinatura imagem=&quot;usuario-personalizado&quot; nome=&quot;Usuario Personalizado&quot; /]</pre></td></tr></table></div><p>No próximo post eu mostro outras possibilidades interessantes para vocês&#8230;. inclusive uma prática melhor para incluir shortcodes no <a
href="http://wordpress.org" title="Wordpress Site">WordPress</a>&#8230; mas até lá&#8230; acho que isso já deixa o seu cérebro funcionando.</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/10/custom-fields-do-jeito-facil/" title="Permanent link to Custom Fields do WordPress do jeito fácil">Custom Fields do WordPress do jeito fácil</a></li><li> <a
href="http://www.bugz.com.br/2011/12/ajax-no-wordpress/" title="Permanent link to Ajax no WordPress">Ajax no WordPress</a></li><li> <a
href="http://www.bugz.com.br/2011/08/ordenando-por-mais-vistos/" title="Permanent link to Ordenando por mais vistos">Ordenando por mais vistos</a></li><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/" title="Permanent link to WordPress e ShortCode &#8211; Parte II">WordPress e ShortCode &#8211; Parte II</a></li><li> <a
href="http://www.bugz.com.br/2011/08/sql-buscas-e-mais-buscas/" title="Permanent link to SQL &#8211; Buscas e mais buscas">SQL &#8211; Buscas e mais buscas</a></li><li> <a
href="http://www.bugz.com.br/2011/01/smarty-e-cache-parte-1/" title="Permanent link to Smarty e Cache">Smarty e Cache</a></li><li> <a
href="http://www.bugz.com.br/2010/02/twitter-sem-curl/" title="Permanent link to Twitter sem Curl">Twitter sem Curl</a></li><li> <a
href="http://www.bugz.com.br/2010/02/sql-injection-saiba-se-prevenir/" title="Permanent link to Sql Injection &#8211; Saiba se prevenir">Sql Injection &#8211; Saiba se prevenir</a></li><li> <a
href="http://www.bugz.com.br/2011/09/file_get_contents/" title="Permanent link to PHP &#8211; Alternativa para file_get_contents">PHP &#8211; Alternativa para file_get_contents</a></li><li> <a
href="http://www.bugz.com.br/2011/07/sql-pequenos-detalhes-fazem-a-diferenca/" title="Permanent link to SQL pequenos detalhes fazem a diferença">SQL pequenos detalhes fazem a diferença</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Ajax no WordPress</title><link>http://www.bugz.com.br/2011/12/ajax-no-wordpress/</link> <comments>http://www.bugz.com.br/2011/12/ajax-no-wordpress/#comments</comments> <pubDate>Thu, 15 Dec 2011 16:58:51 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Artigos]]></category> <category><![CDATA[Desenvolvimento]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[Tecnologia]]></category> <category><![CDATA[Wordpress]]></category> <category><![CDATA[ajax]]></category> <category><![CDATA[jquery]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=431</guid> <description><![CDATA[<p>SeuJota (vulgo JP) fez um post bem ilustrativo sobre como fazer chamadas ajax no WordPress&#8230; O modo que fazíamos aqui era criar uma página nova no admin do WordPress, utilizando um custom page, que continha todos os códigos de ajax e etc&#8230; Isso sem dúvida funciona, e, em alguns pontos de vista, pode até ser [...]</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p><a
href="http://seujota.com.br" title="Site do SeuJota">SeuJota</a> (vulgo JP) fez um post bem ilustrativo sobre como fazer chamadas ajax no <a
href="http://wordpress.org" title="Site do WordPress">WordPress</a>&#8230;<br
/> O modo que fazíamos aqui era criar uma página nova no admin do <a
href="http://wordpress.org" title="Site do WordPress">WordPress</a>, utilizando um custom page, que continha todos os códigos de ajax e etc&#8230;<br
/> Isso sem dúvida funciona, e, em alguns pontos de vista, pode até ser mais explicativo para desenvolvedores que procuram alterar determinada funcionalidade.<span
id="more-431"></span><br
/> A vantagem de usar paginas é que se você por um acaso <a
href="http://www.bugz.com.br/misc/#jargoes" title="Misc - Jargões">&#8220;cagar-no-balão&#8221;</a>, você só vai afetar uma funcionalidade do seu site.<br
/> A outra opção seria usar as chamadas dentro de um functions.php da vida.<br
/> O modo de implementar as funcionalidades ajax, ao meu ver deveria seguir algo próximo deste modelo:</p><p>Primeiro, ao invés de sair fazendo tudo dentro do functions.php, separe o arquivo de chamadas ajax, isso deixa seu código mais limpo e simples de entender. No seu functions, adicione isso:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// incluir funcoes ajax dentro do functions</span>
<span style="color: #b1b100;">require_once</span> <span style="color: #990000;">dirname</span><span style="color: #009900;">&#40;</span> <span style="color: #009900; font-weight: bold;">__FILE__</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/ajax-functions.php'</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Bom agora que você já tem um arquivo todo bonitinho de só para ajax, vamos fazer uma função específica para retornar alguma coisa:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
</pre></td><td
class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// funcao que recebe valor_a e valor_b via post e retorna o produto</span>
<span style="color: #000000; font-weight: bold;">function</span> multiplicarAjax<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	<span style="color: #666666; font-style: italic;">// valor_a recebido por post, se não vier, setamos como 0</span>
	<span style="color: #000088;">$valor_a</span> <span style="color: #339933;">=</span> <span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_POST</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'valor_a'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>?<span style="color: #000088;">$_POST</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'valor_a'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
	<span style="color: #666666; font-style: italic;">// valor_b recebido por post, se não vier, setamos como 0</span>
	<span style="color: #000088;">$valor_b</span> <span style="color: #339933;">=</span> <span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_POST</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'valor_b'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span>?<span style="color: #000088;">$_POST</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'valor_b'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// Imprimindo um json para o Ajax</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #990000;">json_encode</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
		<span style="color: #0000ff;">'produto'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$valor_a</span> <span style="color: #339933;">*</span> <span style="color: #000088;">$valor_b</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: #009900;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//Aqui adiciono as funções para os hooks do wordpress</span>
add_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'wp_ajax_multiplicarAjax'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'multiplicarAjax'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
add_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'wp_ajax_nopriv_multiplicarAjax'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'multiplicarAjax'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Bom é isso&#8230; esse método agora é acessivel na seguinte URL:<br
/> http://[URL DO SEU BLOG]/wp-admin/admin-ajax.php?action=multiplicarAjax</p><p>Note que o método é passado via o parâmetro action (este pode ser enviado via GET ou POST).</p><p>Como nossa função espera receber os parâmetros via POST, vamos montar um Javascript que faça a mágica&#8230;<br
/> Já que eu, como o JP e quase todos os outros programadores que conheço, sou preguiçoso, vou fazer o Ajax usando o <a
href="http://jquery.com" title="Jquery Site">jQuery</a> que é uma mão na roda:</p><div
class="wp_syntax"><table><tr><td
class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td
class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	$.<span style="color: #660066;">ajax</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
		type<span style="color: #339933;">:</span> <span style="color: #3366CC;">'POST'</span><span style="color: #339933;">,</span>
		url<span style="color: #339933;">:</span> <span style="color: #3366CC;">'/wp-admin/admin-ajax.php'</span><span style="color: #339933;">,</span>
		dataType<span style="color: #339933;">:</span> <span style="color: #3366CC;">'JSON'</span><span style="color: #339933;">,</span>
		data<span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;action=multiplicarAjax&amp;valor_a=5&amp;valor_b=3&quot;</span><span style="color: #339933;">,</span>
		success<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>dataRetorno<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
			<span style="color: #006600; font-style: italic;">//Aqui o código para tratar o json</span>
			<span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>dataRetorno.<span style="color: #660066;">produto</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
		error<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>jqXHR<span style="color: #339933;">,</span> textStatus<span style="color: #339933;">,</span> errorThrown<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
			<span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>textStatus<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;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div><p>Bom, mais detalhes, você pode ver lá no <a
href="http://seujota.com.br" title="Site do SeuJota">SeuJota</a>&#8230;</p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/07/sql-pequenos-detalhes-fazem-a-diferenca/" title="Permanent link to SQL pequenos detalhes fazem a diferença">SQL pequenos detalhes fazem a diferença</a></li><li> <a
href="http://www.bugz.com.br/2008/07/o-futuro-do-flash-e-c/" title="Permanent link to O Futuro do flash é C?">O Futuro do flash é C?</a></li><li> <a
href="http://www.bugz.com.br/2011/04/grficos-e-afins-2/" title="Permanent link to Gr&aacute;ficos e afins">Gr&aacute;ficos e afins</a></li><li> <a
href="http://www.bugz.com.br/2011/03/sprites/" title="Permanent link to Sprites">Sprites</a></li><li> <a
href="http://www.bugz.com.br/2011/10/custom-fields-do-jeito-facil/" title="Permanent link to Custom Fields do WordPress do jeito fácil">Custom Fields do WordPress do jeito fácil</a></li><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcode-parte-ii/" title="Permanent link to WordPress e ShortCode &#8211; Parte II">WordPress e ShortCode &#8211; Parte II</a></li><li> <a
href="http://www.bugz.com.br/2011/12/wordpress-e-shortcodes/" title="Permanent link to WordPress e Shortcodes">WordPress e Shortcodes</a></li><li> <a
href="http://www.bugz.com.br/2012/02/wordpress-respondendo-em-dois-enderecos/" title="Permanent link to WordPress respondendo em dois endereços">WordPress respondendo em dois endereços</a></li><li> <a
href="http://www.bugz.com.br/2011/08/ordenando-por-mais-vistos/" title="Permanent link to Ordenando por mais vistos">Ordenando por mais vistos</a></li><li> <a
href="http://www.bugz.com.br/2011/03/cakephp-e-jscss-minify/" title="Permanent link to CakePHP e Js/CSS minify">CakePHP e Js/CSS minify</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/ajax-no-wordpress/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Victor Hugo Odo</title><link>http://www.bugz.com.br/2011/12/victor-hugo-odo/</link> <comments>http://www.bugz.com.br/2011/12/victor-hugo-odo/#comments</comments> <pubDate>Wed, 14 Dec 2011 11:46:04 +0000</pubDate> <dc:creator>Oswaldo</dc:creator> <category><![CDATA[Links]]></category> <guid
isPermaLink="false">http://www.bugz.com.br/?p=425</guid> <description><![CDATA[<p>Hypster, nerd, gente boa, e programador de primeira&#8230;. http://www.vhugo.com.br Conteudo relacionado: Seu Jota &#8211; Programar e programar http://mediaqueri.es CodeIgniter CakePHP</p><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></description> <content:encoded><![CDATA[<p>Hypster, nerd, gente boa, e programador de primeira&#8230;.</p><p><a
href="http://www.vhugo.com.br" title="VictorHudoOdo">http://www.vhugo.com.br</a></p><div
class="betterrelated"><p><strong>Conteudo relacionado:</strong></p><ol><li> <a
href="http://www.bugz.com.br/2011/12/seu-jota-programar-e-programar/" title="Permanent link to Seu Jota &#8211; Programar e programar">Seu Jota &#8211; Programar e programar</a></li><li> <a
href="http://www.bugz.com.br/2011/03/httpmediaqueri-es/" title="Permanent link to http://mediaqueri.es">http://mediaqueri.es</a></li><li> <a
href="http://www.bugz.com.br/2011/03/codeigniter/" title="Permanent link to CodeIgniter">CodeIgniter</a></li><li> <a
href="http://www.bugz.com.br/2011/03/cakephp/" title="Permanent link to CakePHP">CakePHP</a></li></ol></div><p><a
href="http://www.bugz.com.br">Bugz</a></p>]]></content:encoded> <wfw:commentRss>http://www.bugz.com.br/2011/12/victor-hugo-odo/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- This Quick Cache file was built for (  www.bugz.com.br/feed/ ) in 3.98445 seconds, on Feb 22nd, 2012 at 11:29 pm UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 23rd, 2012 at 12:29 am UTC -->
