<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2portuguesefull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>El Micox</title><link>http://elmicox.blogspot.com/</link><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/elmicox" /><description>JavaScript, Ajax, DOM, Webstandards, dicas e outras coisas.</description><language>en</language><managingEditor>noreply@blogger.com (Micox - Náiron J. C. G.)</managingEditor><lastBuildDate>Sun, 27 May 2012 07:26:46 PDT</lastBuildDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">148</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><feedburner:info uri="elmicox" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.0/</creativeCommons:license><image><link>http://elmicox.blogspot.com</link><url>http://naironjcg.googlepages.com/logo-princ.gif</url><title>El Micox</title></image><feedburner:emailServiceId>elmicox</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Felmicox" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Felmicox" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/elmicox" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Felmicox" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Felmicox" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Felmicox" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:browserFriendly>Assina o El Micox aí caramba. Você não vai se arrepender. Se está no século passado e não sabe o que são Feeds, assina por email mesmo (aí ao lado tem a opção).</feedburner:browserFriendly><item><title>A importância do suporte bom na hospedagem de sites</title><link>http://feedproxy.google.com/~r/elmicox/~3/rwWXbwsFH7c/importancia-do-suporte-bom-na.html</link><category>hospedagem</category><category>dicas</category><category>artigos</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 22 Mar 2012 10:18:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-3187045985959661805</guid><description>&lt;h3&gt;


Capítulo 1 - A bênção&lt;/h3&gt;
Bom dia Nobres senhores e senhoritas.&lt;br /&gt;
&lt;br /&gt;
Provavelmente, você que lê o El Micox possui um site.&lt;br /&gt;
Provavelmente este site está em uma hospedagem paga.&lt;br /&gt;
Provavelmente você executa as mesmas tarefas periodicamente, buscando ser abençoado pelo Google:&lt;br /&gt;
&lt;br /&gt;
Lá está você, colocando artigos todos os dias...&lt;br /&gt;
Lá está você, otimizando meta tags e titles todos os dias...&lt;br /&gt;
Lá está você divulgando em redes sociais...&lt;br /&gt;
Lá está você divulgando links pelo mundo...&lt;br /&gt;
&lt;br /&gt;
Quando, de repente, acontece o que você pediu tanto para o pai Google: as visitas dobram, triplicam.&lt;br /&gt;
&lt;br /&gt;
Se você usa Adsense - ou outro tipo de monetização - a grana começa a entrar.&lt;br /&gt;
Já vai dar pra pagar a parcela do Fusquinha. :)&lt;br /&gt;
&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-hLcKEi6STo8/T2tehCNC-gI/AAAAAAAAAS0/hO8G6DiP6SA/s1600/fusca_rosa.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="239" src="http://3.bp.blogspot.com/-hLcKEi6STo8/T2tehCNC-gI/AAAAAAAAAS0/hO8G6DiP6SA/s320/fusca_rosa.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Créditos: David do &lt;a href="http://www.ondetemfesta.com.br/" target="_blank"&gt;OndeTemFesta.com.br&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;


Capítulo 2 - A maldição&lt;/h3&gt;
Mas aí, devido à súbita explosão de acessos, seu site cai. Parabéns, você acabou de ser batizado!&lt;br /&gt;
&lt;br /&gt;
Agora vai começar o trabalho chato: entrar em contato com o suporte da sua hospedagem para descobrir a origem do problema.&lt;br /&gt;
Este é o momento que separa os bons dos maus, os fortes dos fracos, os true dos poser (hahá).&lt;br /&gt;
&lt;br /&gt;
Nobres colegas, não tem nada mais chato do que ficar abrindo tickets ou fazendo ligações pra suporte - e aguardando horas pra ser atendido, enquanto preciosos visitantes chegam a uma tela de erro.&lt;br /&gt;
&lt;br /&gt;
Principalmente, principalmente - repito - principalmente, quando há uma corja de incompetentes do outro lado.&lt;br /&gt;
&lt;br /&gt;
Nobres fidalgos, não tem nada pior do que você querer saber a origem do problema e os incompetentes ficarem apenas repetindo "seu site está com muitos acessos, tem que aumentar o plano".&lt;br /&gt;
&lt;br /&gt;
Acho que os donos das hospedagens simplesmente contratam estagiários de "sei lá o quê" pra ficarem respondendo um FAQ padrão.&lt;br /&gt;
&lt;br /&gt;
Como o pai Google não perdoa, sites fora do ar voltam a cair nos rankings.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;


Capítulo 3 - A solução&lt;/h3&gt;
Nobres cavalheiros, o intuito deste texto não é ser publieditorial, propaganda, post patrocinado, essas nóia.&lt;br /&gt;
O intuito aqui é contar-lhes um boró que passei com meu &lt;a href="http://www.resultadoconcursos.net/" target="_blank"&gt;site de concursos&lt;/a&gt;&amp;nbsp;e como resolvi.&lt;br /&gt;
&lt;br /&gt;
Não lembro a boa alma que me indicou a hospedagem do Jânio (sem links por enquanto pro pessoal não pensar que é só propaganda chata), só sei de uma parada: o cara é blogueiro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
O cara usa e entende de Wordpress, o cara entende de plugins bons e ruins, o cara entende de sistemas de cache, o cara entende de otimização de velocidade e otimização de recursos...&lt;br /&gt;
&lt;br /&gt;
Enfim, quando vossa senhoria estiver passando por um boró temporário no seu site, o cara não vai simplesmente dizer "aumenta o plano".&lt;br /&gt;
&lt;br /&gt;
O cara primeiro te ajuda a encontrar a fonte do problema (que pode ser um plugin pesado ou uma programação PHP mal feita ou um banco de dados mal planejado, etc), depois te ajuda a resolver, se não der certo, te dará alternativas (tipo cache, nginx, cloudflare, etc) e só depois disso, caso o problema seja realmente de poucos recursos no plano atual, ele irá te indicar um novo plano.&lt;br /&gt;
&lt;br /&gt;
No meu caso mais recente, acreditem, ele me indicou um plano mais barato. [pausa para explicações] "Como um plano mais barato pode ser melhor?" É que, neste caso, este plano não tem frescuras de Cpanel (tem que pagar licença e consome recursos do servidor) além de ter um sistema de cache foda. [fim da pausa]&lt;br /&gt;
&lt;br /&gt;
Nobres nobres, como dica final digo: &lt;b&gt;Antes de contratar sua hospedagem, teste o sistema de suporte deles. Veja se você está falando com quem entende do assunto ou se está falando apenas com funcionários leigos ou pseudo-entendidos&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Aqui o link da PortoFácil, hospedagem do Jânio:&amp;nbsp;&lt;a href="http://portofacil.net/"&gt;http://portofacil.net/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Aqui um link de um parceiro do Jânio pra quem não precisa de hospedagem muito parruda:&amp;nbsp;&lt;a href="http://www.viahospedagem.net/"&gt;http://www.viahospedagem.net/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Aqui um artigo que explica um pouco a filosofia do Jânio:&amp;nbsp;&lt;a href="http://portaldohost.com.br/geral/como-enfrentar-os-concorrentes-gigantes#.T2sfcBFmL_M"&gt;http://portaldohost.com.br/geral/como-enfrentar-os-concorrentes-gigantes&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Nos comentários de vocês, gostaria também de ler experiências, dicas e indicações legítimas sobre hospedagens. Mas não venha com um simples jabá pois vai é sair queimado.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-3187045985959661805?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=rwWXbwsFH7c:wl1Wc6Yqwek:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=rwWXbwsFH7c:wl1Wc6Yqwek:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=rwWXbwsFH7c:wl1Wc6Yqwek:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=rwWXbwsFH7c:wl1Wc6Yqwek:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=rwWXbwsFH7c:wl1Wc6Yqwek:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/rwWXbwsFH7c" height="1" width="1"/&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-hLcKEi6STo8/T2tehCNC-gI/AAAAAAAAAS0/hO8G6DiP6SA/s72-c/fusca_rosa.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2012/03/importancia-do-suporte-bom-na.html</feedburner:origLink></item><item><title>Comentários do Facebook no Blogger - Sem duplicar e sem complicação</title><link>http://feedproxy.google.com/~r/elmicox/~3/LPlR_HVm2hQ/comentarios-do-facebook-no-blogger-sem.html</link><category>blogger</category><category>tutoriais</category><category>facebook</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 16 Feb 2012 08:46:58 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-907769992999322901</guid><description>Bom dia nobres senhores que leem - reforma ortográfica moment: "As palavras paroxítonas terminadas em dois "-oo" e em "-eem" agora perdem o acento circunflexo" - este nobre blog.&lt;br /&gt;
&lt;br /&gt;
Explico-vos agora como inserir aquela caixa de comentários do facebook no blogger, sem duplicar, sem complicar, na maior facilidade do universo conhecido pelo homem.&lt;br /&gt;
&lt;br /&gt;
1)  Modelo &amp;gt; Editar HTML &amp;gt; Prosseguir &amp;gt; Expandir modelos de Widget&lt;br /&gt;
&lt;br /&gt;
2)  Procura o &amp;lt;/head&amp;gt; , abaixo dele vai tá abrindo o body&lt;br /&gt;
&lt;br /&gt;
3) Cola logo abaixo do &amp;lt;body&amp;gt; antes das outras coisas:&lt;br /&gt;
&lt;pre class="code"&gt;&amp;lt;div id="fb-root"&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;script&amp;gt;(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/pt_BR/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));&amp;lt;/script&amp;gt;
&lt;/pre&gt;&lt;br /&gt;
4) Em qualquer lugar que quiser os comentários cola&lt;br /&gt;
&lt;pre class="code"&gt;&amp;lt;div class="fb-comments" data-href="data:post.url" data-num-posts="10" data-width="470"&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt;5) se desse jeito não deu certo, cola&lt;br /&gt;
&lt;pre class="code"&gt;&amp;lt;div class="fb-comments" expr:data-href="data:post.url" data-num-posts="10" data-width="470"&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt;6) Se ainda assim não deu certo, desiste porque essa porcaria não funciona não.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Me deparei com o problema ao ajudar o maluco do &lt;a href="http://fantasymedieval.blogspot.com/"&gt;fantasymedieval.blogspot.com/&lt;/a&gt; que é meu brodi de infância.&lt;br /&gt;
&lt;br /&gt;
Ele me disse que rodou a web inteira, brasileira e gringa, e não achou como inserir a caixa de comentários no facebook no blogger corretamente. Quando ele conseguia, sempre duplicava os mesmos comentários em todas as páginas.&lt;br /&gt;
&lt;br /&gt;
Dei uma navegada no google e vi que realmente todos os tutoriais que tinham por aí eram muito complexos.&lt;br /&gt;
&lt;br /&gt;
Como eu já tinha inserido comentários do Facebook no WordPress na maior simplicidade do mundo, imaginei que no blogger não deveria ser tão complexo quanto os tutoriais estavam ensinando, daí mandei o código acima por email para o cara sem testar nem nada (preguiça) e incrivelmente funcionou.&lt;br /&gt;
&lt;br /&gt;
Se deu certo pra você, ao contrário dos complicadíssimos tutoriais da net, comente abaixo e ajude a divulgar em redes sociais e talz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-907769992999322901?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=LPlR_HVm2hQ:NV_WaaWx0sA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=LPlR_HVm2hQ:NV_WaaWx0sA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=LPlR_HVm2hQ:NV_WaaWx0sA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=LPlR_HVm2hQ:NV_WaaWx0sA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=LPlR_HVm2hQ:NV_WaaWx0sA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/LPlR_HVm2hQ" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">16</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2012/02/comentarios-do-facebook-no-blogger-sem.html</feedburner:origLink></item><item><title>Dica do Dia: CSS Gradient Generator</title><link>http://feedproxy.google.com/~r/elmicox/~3/EiiRrW_U4sE/dica-do-dia-css-gradient-generator.html</link><category>gradiente</category><category>dicas</category><category>css</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 05 Jan 2012 02:20:36 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-4412862741408837879</guid><description>Bom dia nobres senhores e senhoras.&lt;br /&gt;
&lt;br /&gt;
Hoje, venho ao presente blog, repassar um site muito interessante e prático que estava em meus Bookmarks e eu não lembrava até precisar.&lt;br /&gt;
&lt;br /&gt;
Se bem que minha memória nunca lembra de nada mesmo. Aliás, meus recentes problemas de memória (não tão recentes) estavam me deixando preocupado. Eu já havia ido até em neurologista, o qual me pediu um exame de ressonância magnética, do qual eu pulei fora (espero que este meu português cheio de "o qual" e "do qual" esteja correto, afinal estudei orações subordinadas ontem haha).&lt;br /&gt;
&lt;br /&gt;
(Voltando ao assunto secundário do post: ) Porém minhas preocupações passaram quando vi que todos meus amigos que "mexem" com computador o dia inteiro também estavam assim e também após ler uma reportagem na &lt;a href="http://revistaepoca.globo.com/ideias/noticia/2011/10/internet-faz-mal-ao-cerebro.html" target="_blank"&gt;Revista Época dizendo que a internet está sacaneando nossos cérebros&lt;/a&gt;. Concordei e fiquei aliviado por, de certa forma, eu ainda ser "normal". Aliás, maldita Ed. Globo que fica renovando as assinaturas sem solicitação.&lt;br /&gt;
&lt;br /&gt;
Qual era o assunto inicial do post mesmo? Ah, CSS Gradient Generator. Desculpem a divagação anterior mas pelo menos serviu pra deixar o post com mais de 1 parágrafo haha.&lt;br /&gt;
&lt;br /&gt;
Agora, pra não tomar muito do seu tempo, serei rápido e deixarei que tire suas próprias conclusões: O Gradiente dos botões &lt;a href="http://mwords.valeus.net/" target="_blank"&gt;deste site&lt;/a&gt; foi feito em 30 segundos (e sem imagens de certa forma) graças a &lt;a href="http://www.colorzilla.com/gradient-editor/" target="_blank"&gt;este site&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Pra você não precisar abrir link externo, deixo aqui o exemplo:&lt;br /&gt;
&lt;br /&gt;
&lt;style&gt;
#xparceria {
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2FkNTAwMCIgc3RvcC1vcGFjaXR5PSIwLjMiLz4KICAgIDxzdG9wIG9mZnNldD0iNDIlIiBzdG9wLWNvbG9yPSIjYWQ1MDAwIiBzdG9wLW9wYWNpdHk9IjAuNyIvPgogICAgPHN0b3Agb2Zmc2V0PSI0NSUiIHN0b3AtY29sb3I9IiNhZDUwMDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjYWQ1MDAwIiBzdG9wLW9wYWNpdHk9IjAuOCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top,  rgba(173,80,0,0.3) 0%, rgba(173,80,0,0.7) 42%, rgba(173,80,0,1) 45%, rgba(173,80,0,0.8) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(173,80,0,0.3)), color-stop(42%,rgba(173,80,0,0.7)), color-stop(45%,rgba(173,80,0,1)), color-stop(100%,rgba(173,80,0,0.8))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  rgba(173,80,0,0.3) 0%,rgba(173,80,0,0.7) 42%,rgba(173,80,0,1) 45%,rgba(173,80,0,0.8) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  rgba(173,80,0,0.3) 0%,rgba(173,80,0,0.7) 42%,rgba(173,80,0,1) 45%,rgba(173,80,0,0.8) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  rgba(173,80,0,0.3) 0%,rgba(173,80,0,0.7) 42%,rgba(173,80,0,1) 45%,rgba(173,80,0,0.8) 100%); /* IE10+ */
background: linear-gradient(top,  rgba(173,80,0,0.3) 0%,rgba(173,80,0,0.7) 42%,rgba(173,80,0,1) 45%,rgba(173,80,0,0.8) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4dad5000', endColorstr='#ccad5000',GradientType=0 ); /* IE6-8 */
}
&lt;/style&gt;&lt;br /&gt;
&lt;div id="xparceria"&gt;
Sou uma div com&lt;br /&gt;
gradiente CSS&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Pode me agradecer ou xingar nos comentários.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-4412862741408837879?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=EiiRrW_U4sE:Z8TmnVIpK4o:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=EiiRrW_U4sE:Z8TmnVIpK4o:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=EiiRrW_U4sE:Z8TmnVIpK4o:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=EiiRrW_U4sE:Z8TmnVIpK4o:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=EiiRrW_U4sE:Z8TmnVIpK4o:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/EiiRrW_U4sE" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2012/01/dica-do-dia-css-gradient-generator.html</feedburner:origLink></item><item><title>Selects Multiple NÃO! Checkboxes SIM! Uma campanha pela abolição de selects multiples</title><link>http://feedproxy.google.com/~r/elmicox/~3/lg5Z8dDc8lc/selects-multiple-nao-checkboxes-sim-uma.html</link><category>acessibilidade</category><category>dicas</category><category>html</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Mon, 05 Mar 2012 11:43:07 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-1392864492544425046</guid><description>Sabe, eu nunca tinha parado pra pensar sobre isso.&lt;br /&gt;
&lt;br /&gt;
Selects multiples são muito chatos. &lt;br /&gt;
Chatos pro visitante - que tem que usar o shift pra escolher mais de um (que visitante sabe fazer isso?)&lt;br /&gt;
Chatos pro desenvolvedor - na hora do html e na hora de tratar os dados no server-side (php, asp, etc).&lt;br /&gt;
Chatos pra estilizar o visual - Alterar visual CSS de selects é quase impossível.&lt;br /&gt;
&lt;br /&gt;
Quantas vezes já vimos formulários assim:&lt;br /&gt;
&lt;br /&gt;
&lt;div style="background: white; padding: 10px;"&gt;&lt;label for="cidades"&gt;Escolha as cidades de destino (pressione shift ou control para escolher mais de uma):&lt;/label&gt;&lt;br /&gt;
&lt;select multiple="multiple" name="cidades" size="3" style="height: 60px; width: 300px;"&gt; &lt;option value="1"&gt;Goiânia&lt;/option&gt; &lt;option value="2"&gt;Palmas&lt;/option&gt; &lt;option value="3"&gt;Fortaleza&lt;/option&gt; &lt;option value="4"&gt;São Paulo&lt;/option&gt; &lt;option value="5"&gt;Salvador&lt;/option&gt;&lt;/select&gt;&lt;/div&gt;&lt;br /&gt;
O povão gosta de mouse. O povão não gosta de teclado. O povão lá sabe o que é shift ou control?&lt;br /&gt;
&lt;br /&gt;
Se quer uma página acessível não é melhor fazer assim?&lt;br /&gt;
&lt;br /&gt;
&lt;div style="background: white; padding: 10px;"&gt;Escolha as cidades de destino:&lt;br /&gt;
&lt;style&gt;
.check-select-multiple {border: 2px inset #DDD; background: white; height: 60px; overflow-y: scroll; width: 300px;}
&lt;/style&gt;&lt;br /&gt;
&lt;div class="check-select-multiple"&gt;&lt;label&gt;&lt;input name="cidades" type="checkbox" value="1" /&gt;Goiânia&lt;/label&gt;&lt;br /&gt;
&lt;label&gt;&lt;input name="cidades" type="checkbox" value="2" /&gt;Palmas&lt;/label&gt;&lt;br /&gt;
&lt;label&gt;&lt;input name="cidades" type="checkbox" value="3" /&gt;Fortaleza&lt;/label&gt;&lt;br /&gt;
&lt;label&gt;&lt;input name="cidades" type="checkbox" value="4" /&gt;São Paulo&lt;/label&gt;&lt;br /&gt;
&lt;label&gt;&lt;input name="cidades" type="checkbox" value="5" /&gt;Salvador&lt;/label&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
É mais bonito ou não é? É mais fácil pro visitante ou não é?&lt;br /&gt;
&lt;br /&gt;
Olha só como o código é simples:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="code"&gt;&amp;lt;style&amp;gt;
/* coloque este estilo em seu arquivo css */
.check-select-multiple { display: inline-block; height: 60px; padding: 0 5px; overflow-y: scroll; width: 300px; border: 2px inset #DDD; background: white;}
.check-select-multiple label { display: inline-block; width: 95%;}&amp;lt;/style&amp;gt;
&amp;lt;div class="check-select-multiple"&amp;gt;
&amp;lt;label&amp;gt;&amp;lt;input name="cidades" type="checkbox" value="1" /&amp;gt;Goiânia&amp;lt;/label&amp;gt;
&amp;lt;label&amp;gt;&amp;lt;input name="cidades" type="checkbox" value="2" /&amp;gt;Palmas&amp;lt;/label&amp;gt;
&amp;lt;label&amp;gt;&amp;lt;input name="cidades" type="checkbox" value="3" /&amp;gt;Fortaleza&amp;lt;/label&amp;gt;
&amp;lt;label&amp;gt;&amp;lt;input name="cidades" type="checkbox" value="4" /&amp;gt;São Paulo&amp;lt;/label&amp;gt;
&amp;lt;label&amp;gt;&amp;lt;input name="cidades" type="checkbox" value="5" /&amp;gt;Salvador&amp;lt;/label&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/pre&gt;&lt;br /&gt;
Veja que não precisamos fazer malabarismos com javascripts nem plugins pra Jquery. É só usar a simplicidade do belo HTML+CSS.&lt;br /&gt;
&lt;br /&gt;
Além da facilidade pro visitante, ainda é infinitamente mais fácil estilizar uma DIV do que estilizar um Select (principalmente nos IEs da vida).&lt;br /&gt;
&lt;br /&gt;
Se você gostou da minha explanação, abrace esta campanha também. Diga adeus ao select-multiple.&lt;br /&gt;
Faça um link para esta campanha, compartilhe no twitter, facebook, google-plus, faça bandeiras, passeatas, greve de fome...&lt;br /&gt;
&lt;br /&gt;
Amém.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-1392864492544425046?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=lg5Z8dDc8lc:x9-k0TALEAc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=lg5Z8dDc8lc:x9-k0TALEAc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=lg5Z8dDc8lc:x9-k0TALEAc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=lg5Z8dDc8lc:x9-k0TALEAc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=lg5Z8dDc8lc:x9-k0TALEAc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/lg5Z8dDc8lc" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/12/selects-multiple-nao-checkboxes-sim-uma.html</feedburner:origLink></item><item><title>QuerySelector ou CSSQuery para IE 6 e 7 (e outros navegadores antigos)</title><link>http://feedproxy.google.com/~r/elmicox/~3/c884wW3yn08/queryselector-ou-cssquery-para-ie-6-e-7.html</link><category>javascript</category><category>funções</category><category>css</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 22 Dec 2011 08:52:36 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2735943638867499850</guid><description>Nobres colegas scripteiros, no maravilhoso mundo da programação, a cada dia a gente se surpreende.&lt;br /&gt;
&lt;br /&gt;
Ontem, durante a programação do &lt;a href="http://mwords.valeus.net/" target="_blank"&gt;Mwords&lt;/a&gt;, eu procurava um script de CSSQuery para poder permitir que os usuários do Mwords, escolhessem o elemento alvo com base em seletores CSS. Exemplo: alvo = '#content .post p'.&lt;br /&gt;
&lt;br /&gt;
Lindo né? Assim como no jQuery e outras libs por aí.&lt;br /&gt;
&lt;br /&gt;
As versões que eu achei eram gigantescas (mais de 10k) e a mais recomendada era a do &lt;a href="http://dean.edwards.name/weblog/2005/08/cssquery2/" target="_blank"&gt;Dean Edwards&lt;/a&gt;.&lt;br /&gt;
Nunca que eu iria pesar o script do Mwords com 10k só pra ter uma funcionalidadezinha dessas a mais.&lt;br /&gt;
&lt;br /&gt;
Além disso, a maioria dos navegadores modernos já suporta a &lt;a href="https://developer.mozilla.org/En/DOM/Document.querySelectorAll" target="_blank"&gt;document.querySelectorAll&lt;/a&gt; que permite fazer isso.&lt;br /&gt;
O único problemático (pra variar) é o IE (acho que do 8 pra baixo).&lt;br /&gt;
&lt;br /&gt;
Não desisti da minha busca, e acabei encontrando esta &lt;a href="http://ajaxian.com/archives/creating-a-queryselector-for-ie-that-runs-at-native-speed" target="_blank"&gt;pérola da gambiarra feita pelo pessoal do Ajaxian&lt;/a&gt;. Funciona maravilhosamente bem e é maravilhosamente pequeno. Um achado digno de glórias ao pessoal do Ajaxian.&lt;br /&gt;
&lt;br /&gt;
Rapidamente adaptei na minha lib, pra usar isto, caso o navegador não suporte a document.querySelectorAll.&lt;br /&gt;
&lt;br /&gt;
Vejam como ficou:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;cssQuery = function(sel){ //document.querySelector. sel é o seletor CSS
  //by Micox - http://elmicox.blogspot.com
  var i, res, dqs, d=document;
  if (d.querySelectorAll){
    return d.querySelectorAll(sel);
  }else{ //o IE8 pra baixo e FF 3.5 pra baixo não tem querySelector
    //baseado no fudido script de querySelector do ajaxian http://ajaxian.com/archives/creating-a-queryselector-for-ie-that-runs-at-native-speed
    var head = d.documentElement.firstChild;
    var styleTag = d.createElement("STYLE");
    head.appendChild(styleTag);
    dqs = d.__qsResult = [];

    styleTag.styleSheet.cssText = sel + "{x:expression(document.__qsResult.push(this))}";
    window.scrollBy(0, 0);
    head.removeChild(styleTag);

    res = [];
    for (i in dqs){if (dqs.hasOwnProperty(i)) {
      res.push(dqs[i]);
    }}
    return res;
    }
}
//como usar
var todos_p_destaque_filhos_de_content = cssQuery('#content p.destaque');&lt;/pre&gt;
&lt;br /&gt;
Obs.1: Não quis mexer com o prototype do "document" porque uso isso dentro de uma lib minha e iria ficar melhor pra mim assim. Você pode adaptá-la e postar nos comentários se quiser.&lt;br /&gt;
&lt;br /&gt;
Obs.2: Só irá funcionar com seletores NATIVOS do navegador em que estiver. Portanto se for usar um "div&amp;gt;p.classetal" no IE, provavelmente não irá funcionar.&lt;br /&gt;
&lt;br /&gt;
Pequena explicação sobre o truque deste CSSQuery:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Primeiro testo se o querySelectorAll existe no navegador atual (aquele primeiro if). Se existe, então uso ele.&lt;/li&gt;
&lt;li&gt;Se não existe, irei adicionar um "style" ao documento.&lt;/li&gt;
&lt;li&gt;O conteúdo deste style usa expressions - uma funcionalidade de CSS exclusiva do Internet Explorer que permite embutir scripts dentro das folhas de estilo. Você já deve conhecê-la caso já tenha usado meu velho &lt;a href="http://elmicox.blogspot.com/2008/03/ultimate-micox-menu-drop-down-css-at-4.html" target="_blank"&gt;Ultimate menu drop-down&lt;/a&gt;, onde uso &lt;a href="http://elmicox.blogspot.com/2008/03/ativando-hover-e-first-child-no-ie-6-um.html" target="_blank"&gt;expressions pra simular o :hover&lt;/a&gt; no IE.&lt;/li&gt;
&lt;li&gt;O que foi escrito dentro do style embutido (cssText) é a criação de uma regra onde o seletor é o parametro "sel" passado (o caminho do elemento).&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Dentro da regra, eu pego o próprio elemento encontrato (this) e adiciono em uma variável __qsResult.&lt;/li&gt;
&lt;li&gt;Simples não? Genial.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
(Pra quem quiser ver um exemplo do novo Mwords em funcionamento, olhem &lt;a href="http://dietas-regimes.blogspot.com/"&gt;este site&lt;/a&gt;).&lt;br /&gt;
&lt;br /&gt;
Até mais.&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2735943638867499850?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=c884wW3yn08:6i5VGU1yHfs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=c884wW3yn08:6i5VGU1yHfs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=c884wW3yn08:6i5VGU1yHfs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=c884wW3yn08:6i5VGU1yHfs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=c884wW3yn08:6i5VGU1yHfs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/c884wW3yn08" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/12/queryselector-ou-cssquery-para-ie-6-e-7.html</feedburner:origLink></item><item><title>Alternativa melhor ao typeOf em Javascript</title><link>http://feedproxy.google.com/~r/elmicox/~3/R24GAu86wAk/alternativa-melhor-ao-typeof-em.html</link><category>javascript</category><category>funções</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Wed, 21 Dec 2011 10:21:02 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-1667677148059592438</guid><description>Opa,&lt;br /&gt;
&lt;br /&gt;
Um textinho rápido que li &lt;a href="http://javascriptweblog.wordpress.com/2011/08/08/fixing-the-javascript-typeof-operator/" rel="nofollow" target="_blank"&gt;neste link do Angus Croll&lt;/a&gt; e que merece ser replicado: &lt;b&gt;Uma alternativa bem melhor ao velho typeOf em javascript.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
O typeOf, é um método nativo de Javascript pra retornar o tipo da variável. Assim temos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="code"&gt;typeof "belladonna" //"string"

typeof (2) //"number"
typeof ("a", 3) //"number"
typeof (1 + 1) //"number"

var a;
typeof a; //"undefined"
typeof b; //"undefined"
alert(a); //undefined
alert(b); //ReferenceError

typeof NaN //"number"

typeof {a: 4}; //"object"
typeof [1, 2, 3]; //"object"
typeof null //"object"
typeof new ReferenceError; //"object"
typeof new Date; //"object"
typeof /a-z/; //"object"
typeof Math; //"object"
typeof JSON; //"object"
typeof new Number(4); //"object"
typeof new String("abc"); //"object"
typeof new Boolean(true); //"object"
(function() {console.log(typeof arguments)})(); //object
&lt;/pre&gt;
&lt;br /&gt;
Bom, olhando os exemplos acima a gente vê que, apesar de útil e muito usado, ele não retorna detalhadamente o que a gente precisa.&lt;br /&gt;
&lt;br /&gt;
A solução? Eu, pessoalmente, sempre usei uma verificação envolvendo a propriedade "prototype" que toda variável tem.&lt;br /&gt;
&lt;br /&gt;
O Angus fez melhor e empacotou em uma função:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="code"&gt;var toType = function(obj) {
&amp;nbsp; return ({}).toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase()
}
&lt;/pre&gt;
&lt;br /&gt;
Comparando com os "object" do typeof padrão teremos as seguintes diferenças:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="code"&gt;toType ("a", 3); //"string"
toType({a: 4}); //"object"
toType(null); //"null"
toType([1, 2, 3]); //"array"
(function() {console.log(toType(arguments))})(); //arguments
toType(new ReferenceError); //"error"
toType(new Date); //"date"
toType(/a-z/); //"regexp"
toType(Math); //"math"
toType(JSON); //"json"
toType(new Number(4)); //"number"
toType(new String("abc")); //"string"
toType(new Boolean(true)); //"boolean"
&lt;/pre&gt;
&lt;br /&gt;
O resto (string, number, undefined) é igual. Só não pode ser usado em variáveis vazias não declaradas, senão dará um "ReferenceError" assim como um alert em algo não declarado.&lt;br /&gt;
&lt;br /&gt;
Gostou?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-1667677148059592438?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=R24GAu86wAk:4KpUjDKt3vg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=R24GAu86wAk:4KpUjDKt3vg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=R24GAu86wAk:4KpUjDKt3vg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=R24GAu86wAk:4KpUjDKt3vg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=R24GAu86wAk:4KpUjDKt3vg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/R24GAu86wAk" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/10/alternativa-melhor-ao-typeof-em.html</feedburner:origLink></item><item><title>Funções javascript pra trabalhar com Scroll</title><link>http://feedproxy.google.com/~r/elmicox/~3/3GqlphBZ4XI/funcoes-javascript-pra-trabalhar-com.html</link><category>scroll</category><category>javascript</category><category>funções</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Fri, 07 Oct 2011 10:18:26 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2976709585232080981</guid><description>Ae pessoal, esses dias precisei brincar com a posição da barra de rolagem (scroll) na tela e posicionamento de elementos de acordo com o scroll.&lt;br /&gt;
&lt;br /&gt;
Como quase tudo em javascript, nossos amigos navegadores não ajudam. Ou seja, não é só pegar a documentação, tem toda aquela velha gambiarra pra funcionar em diversos browsers (crossbrowser).&lt;br /&gt;
&lt;br /&gt;
Pra minha alegria, lembrei que eu já tinha brincado com isso na época do velho Mwords, daí fui lá atrás das funções e re-adaptei. Mostrar-lhes-ei agora:&lt;br /&gt;
&lt;br /&gt;
Pegando a posição atual do scroll e retornando em um objeto com as propriedades X e Y:&lt;br /&gt;
&lt;pre class="code"&gt;var w=window, d=document;
//pega a posição atual do scroll
mov.getScroll= function(){
	return {
		x: (w.pageXOffset ? w.pageXOffset : de.scrollLeft ? de.scrollLeft : d.body.scrollLeft) || 0,		
		y: (w.pageYOffset ? w.pageYOffset : de.scrollTop ? de.scrollTop : d.body.scrollTop) || 0	
	};
};
//exemplo de uso
alert('Posição Y do scroll: ' + mov.getScroll().y);
&lt;/pre&gt;
&lt;br /&gt;
Pegando a posição de determinado elemento na tela:&lt;br /&gt;
&lt;pre class="code"&gt;var w=window, d=document;
//pega a posição correta do elemento na tela
mov.objPos = function(obj) {
	var curl =0, curt = 0;
	if (obj.offsetParent) {
		do {
			curl += obj.offsetLeft;
			curt += obj.offsetTop;
		} while ((obj = obj.offsetParent));
		return {x: curl, y: curt};
	}else{
		return {x: obj.offsetLeft, y:obj.offsetTop};
	}
};
//exemplo de uso
alert('Posição real do elemento "viva" na tela: ' + mov.objPos(d.getElementById('viva') ) );
&lt;/pre&gt;
&lt;br /&gt;
Fazendo a barra de rolagem se movimentar gradativamente&lt;br /&gt;
&lt;pre class="code"&gt;//variaveis
var micox_mov_height= 50; //de quanto em quanto o scroll se moverá
var micox_mov_fps    = 20; //velocidade que o scroll se moverá
//faz o slide
mov.slide = function(ini,end){
	if(!mov.sliding){	
		mov.sliding = true;
		//setando posição inicial
		var atual = mov.getScroll();
		w.scrollTo(atual.x , ini);
		mov.inter = setInterval(function(){
			var novoY, atual = mov.getScroll();
			if(atual.y &amp;lt; end){
				w.scrollTo(atual.x , atual.y + micox_mov_heigth);
			}else{
				mov.sliding = false;
				clearInterval(mov.inter);
			}
		},1000/micox_mov_fps);
	}
}
&lt;/pre&gt;
&lt;br /&gt;
Em breve vocês irão ver estas funções fazendo um efeitinho muito legal em um texto de um brodi meu. Linkarei aqui quando acontecer. Aguardem, irá valer a pena.&lt;br /&gt;
&lt;br /&gt;
Bom, tá documentado ae se alguém precisar. Qualquer dúvida é só comentar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2976709585232080981?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=3GqlphBZ4XI:Z8Xk5l6jGQM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=3GqlphBZ4XI:Z8Xk5l6jGQM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=3GqlphBZ4XI:Z8Xk5l6jGQM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=3GqlphBZ4XI:Z8Xk5l6jGQM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=3GqlphBZ4XI:Z8Xk5l6jGQM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/3GqlphBZ4XI" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/10/funcoes-javascript-pra-trabalhar-com.html</feedburner:origLink></item><item><title>ERR_CONTENT_DECODING_FAILED no Google Chrome</title><link>http://feedproxy.google.com/~r/elmicox/~3/5BpvMFpHIqQ/errcontentdecodingfailed-no-google.html</link><category>bugs</category><category>headers</category><category>gzip</category><category>browsers</category><category>php</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Tue, 10 May 2011 05:32:57 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-3365693226366153634</guid><description>Eu tive um problema no navegador Google Chrome com o &lt;a href="http://www.tadarank.com/"&gt;Tadarank.com&lt;/a&gt; esses dias.&lt;br /&gt;
&lt;br /&gt;
A página não aparecia no Chrome de jeito nenhum.
Exibia um erro:&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;&lt;b&gt;Error 330 (net::ERR_CONTENT_DECODING_FAILED)&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;Dando uma pesquisada na net, vi que meu caso poderia ter a ver com encoding Gzip, essas paradas...&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;Daí resolvi trocando:&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;&lt;b&gt;header('Content-Encoding: gzip, deflate');&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif; font-size: 14px; line-height: 21px;"&gt;Por&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 14px; line-height: 21px;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;header('Content-Encoding: zlib, deflate, gzip');&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 14px; line-height: 21px;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 14px; line-height: 21px;"&gt;Pronto. O problema sumiu.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, Utopia, 'Palatino Linotype', Palatino, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 14px; line-height: 21px;"&gt;Talvez esta postagem seja útil pra você.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-3365693226366153634?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=5BpvMFpHIqQ:I1YRpLC2oiQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=5BpvMFpHIqQ:I1YRpLC2oiQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=5BpvMFpHIqQ:I1YRpLC2oiQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=5BpvMFpHIqQ:I1YRpLC2oiQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=5BpvMFpHIqQ:I1YRpLC2oiQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/5BpvMFpHIqQ" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/05/errcontentdecodingfailed-no-google.html</feedburner:origLink></item><item><title>Como não ser marcado como SPAM ao enviar email pelo PHP - Ativar DomainKeys e SPF no Cpanel</title><link>http://feedproxy.google.com/~r/elmicox/~3/douVg_s7ANM/como-nao-ser-marcado-como-spam-ao.html</link><category>email</category><category>spam</category><category>dicas</category><category>php</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Mon, 09 Jan 2012 07:56:50 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2366256745354518657</guid><description>Oaa&lt;br /&gt;
&lt;br /&gt;
Ae malucada.&lt;br /&gt;
Esses dias passei um perrengue com emails do &lt;a href="http://tadarank.com/"&gt;tadarank &lt;/a&gt;e com um produto que eu vendia e enviava email automaticamente pros meus compradores.&lt;br /&gt;
&lt;br /&gt;
Nas últimas semanas, um monte de clientes me ligou dizendo que não recebeu o email. Pesquisei e receberam sim, só que tinha ido parar na caixa de SPAM. Todos os emails enviados pelos meus domínios estavam indo pra caixa de SPAM. Tristeza.&lt;br /&gt;
&lt;br /&gt;
Pesquisei e pedi ajuda pra resolver este problema.&lt;br /&gt;
Eu mesmo já tinha ajudado muita gente no passado, sugerindo palavras "negras" a serem eliminadas, sugerindo enviar somente se o email for do domínio (ex, se seu site é do domínio www.arroz.com você só pode enviar emails terminados em @arroz.com ), baixar bibliotecas php para email, e outras técnicas que dão uma força boa na resolução do problema, &lt;b&gt;mas não resolvem de vez&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Até que o brodi &lt;a href="http://www.boaspromocoes.com.br/"&gt;kyonac&lt;/a&gt; da lista de monetização me sugeriu ativar uns lanche chamado &lt;b&gt;SPF e DomainKeys&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
É claro que vc irá pesquisar na web o que diabos é isso (afinal você está lendo este tutorial). Numa rápida explicação (chupinhada do Cpanel):&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;DomainKeys &lt;/b&gt;é um sistema de autenticação de e-mail que permite que o correio recebido seja comparado com o servidor de que foi enviado para confirmar que o correio não foi modificado. Isto garante que as mensagens estão chegando realmente do remetente listado e permite que as mensagens abusivas sejam rastreadas com mais facilidade (segundo o Cpanel).&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SPF &lt;/b&gt;irá especificar que máquinas estão autorizadas a enviar e-mails do(s) seu(s) domínio(s). Isto significa que apenas o correio enviado através deste servidor irá aparecer como correio válido do(s) seu(s) domínio(s) quando os registros SPF são verificados (segundo o Cpanel). &lt;br /&gt;
&lt;br /&gt;
Bom, se quiser detalhar melhor pesquisa no google :P&lt;br /&gt;
&lt;br /&gt;
Em resumo: &lt;b&gt;Ativei estas duas paradas no Cpanel e deixei de ser taxado como Spammer. Simples assim.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Antes de descobrir como ativar isso aí, eu e o &lt;a href="http://portofacil.net/"&gt;Jânio&lt;/a&gt;, quebramos a cabeça, pois achávamos que era algo complexo de ser ativado. Abrimos chamado no datacenter e talz...&lt;br /&gt;
&lt;br /&gt;
Felizmente, passeando pelas opções de email do Cpanel achei o menu chamado &lt;b&gt;Autenticação de Email dentro da aba Correio&lt;/b&gt;. É só clicar, ativar e ser feliz. Sem complicação nenhuma.&lt;br /&gt;
&lt;br /&gt;
Atualização: O Vinicius indicou um wizard pra gerar o SPF &lt;a rel='nofollow' target='_blank' href="http://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard"&gt;http://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard&lt;/a&gt; (em inglês)&lt;br /&gt;
&lt;br /&gt;
Dúvidas? Comente.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2366256745354518657?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=douVg_s7ANM:zt6zh-8aqEE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=douVg_s7ANM:zt6zh-8aqEE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=douVg_s7ANM:zt6zh-8aqEE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=douVg_s7ANM:zt6zh-8aqEE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=douVg_s7ANM:zt6zh-8aqEE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/douVg_s7ANM" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/04/como-nao-ser-marcado-como-spam-ao.html</feedburner:origLink></item><item><title>Tada Rank - Avaliações de sistemas de afiliados, hospedagens, webmasters e anunciantes na web</title><link>http://feedproxy.google.com/~r/elmicox/~3/1_XnmYqy6g8/tada-rank-avaliacoes-de-sistemas-de.html</link><category>afiliados</category><category>tadarank</category><category>bate-papo</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Tue, 20 Sep 2011 11:42:44 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-7321548074911904704</guid><description>Opa malucada, beleza?&lt;br /&gt;
&lt;br /&gt;
O mico tava sumido pois tava trabalhando em 3 novos projetinhos.&lt;br /&gt;
&lt;br /&gt;
O primeiro é tipo um Framework PHP/Javascript pessoal, sem complicação, que me ajudará bastante no que eu preciso pra programar sites: Mudar de visual facilmente, facilidade pra exibir tabelas do BD, facilidade pra criar forms que se comunicam com o BD, facilidade pra cadastro/login de usuários, facilidade pra trocar de linguagem do site (pt en es) e facilidade pra validação de campos.&lt;br /&gt;
&lt;br /&gt;
Disso tá saindo o MicoxLib - Quem sabe um dia eu torno ele público.&lt;br /&gt;
&lt;br /&gt;
O segundo, que foi feito com o MicoxLib, era um sistema de compras coletivas com um brodi aqui de Goiânia. Infelizmente o mercado já tá poluído demais.  Daí desistimos.&lt;br /&gt;
&lt;br /&gt;
O terceiro, também feito com o MicoxLib, tá online e ele é o assunto dessa postagem:&lt;br /&gt;
&lt;a href="http://tadarank.com/?sms_ss=blogger&amp;amp;at_xt=4d7a3309705af3c0%2C0"&gt;Tada Rank - Avaliações de sistemas de afiliados, hospedagens, webmasters e anunciantes na web&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
O objetivo inicial é avaliar os sistemas de afiliados pra ajudar nós webmasters e também os anunciantes.&lt;br /&gt;
&lt;br /&gt;
Acabou que coloquei formas de contato/anúncio para ajudar os anunciantes a não gastarem rios de dinheiro com intermediários e poderem anunciar DIRETAMENTE nos sites que desejarem. Vou até gastar um pouco com Adwords nessa parte.&lt;br /&gt;
&lt;br /&gt;
Futuramente vou colocar pra avaliar hospedagens também.&lt;br /&gt;
&lt;br /&gt;
Acaba que os sistemas de afiliados e as hospedagens também sairão ganhando pois saberão seus pontos fracos.&lt;br /&gt;
&lt;br /&gt;
Se cadastra lá e ajuda a avaliar.&lt;br /&gt;
&lt;br /&gt;
Abaixo, uma lista de alguns sistemas de afiliados cadastrados e links pras suas respectivas pontuações:&lt;br /&gt;
 &lt;br /&gt;
 &lt;ul&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=1" target="_blank"&gt;&lt;strong&gt;Google AdSense&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=4" target="_blank"&gt;&lt;strong&gt;HotWords&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=9" target="_blank"&gt;&lt;strong&gt;UOL Afiliados&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=3" target="_blank"&gt;&lt;strong&gt;Submarino&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=2" target="_blank"&gt;&lt;strong&gt;Mercado Sócios&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;

&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=8" target="_blank"&gt;&lt;strong&gt;Lomadee&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=5" target="_blank"&gt;&lt;strong&gt;Afilio&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=14" target="_blank"&gt;&lt;strong&gt;ClickAfiliados&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=17" target="_blank"&gt;&lt;strong&gt;Livraria Cultura&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=23" target="_blank"&gt;&lt;strong&gt;Boo-box&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=6" target="_blank"&gt;&lt;strong&gt;Mundinhero&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;

&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=24" target="_blank"&gt;&lt;strong&gt;Egrana&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=13" target="_blank"&gt;&lt;strong&gt;Americanas.com&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=26" target="_blank"&gt;&lt;strong&gt;Clique Mídia&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=21" target="_blank"&gt;&lt;strong&gt;CPMStar&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=10" target="_blank"&gt;&lt;strong&gt;Cursos 24 Horas&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=15" target="_blank"&gt;&lt;strong&gt;Ad 4 Game&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;

&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=28" target="_blank"&gt;&lt;strong&gt;Virtual Afiliados&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=18" target="_blank"&gt;&lt;strong&gt;Zip Concursos&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=16" target="_blank"&gt;&lt;strong&gt;Smowtion&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=11" target="_blank"&gt;&lt;strong&gt;Parceria Perfeita&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=7" target="_blank"&gt;&lt;strong&gt;Mala Pronta&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=25" target="_blank"&gt;&lt;strong&gt;Pagamento Digital&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;

&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=27" target="_blank"&gt;&lt;strong&gt;JáCotei&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=19" target="_blank"&gt;&lt;strong&gt;Play-Asia Affiliate Program&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tadarank.com/detail-afilia.php?id=22" target="_blank"&gt;&lt;strong&gt;Ero Advertising&lt;/strong&gt;&lt;/a&gt;;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-7321548074911904704?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=1_XnmYqy6g8:Bob-sBi0XPU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=1_XnmYqy6g8:Bob-sBi0XPU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=1_XnmYqy6g8:Bob-sBi0XPU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=1_XnmYqy6g8:Bob-sBi0XPU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=1_XnmYqy6g8:Bob-sBi0XPU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/1_XnmYqy6g8" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/03/tada-rank-avaliacoes-de-sistemas-de.html</feedburner:origLink></item><item><title>Pegando o endereço da URL atual em PHP</title><link>http://feedproxy.google.com/~r/elmicox/~3/SC_NJhl7EnU/pegando-o-endereco-da-url-atual-em-php.html</link><category>funções</category><category>dicas</category><category>php</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Fri, 07 Oct 2011 10:36:09 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-5219271358664889993</guid><description>Várias e várias vezes precisamos saber o &lt;b&gt;caminho COMPLETO da url atual&lt;/b&gt; em PHP mas as variáveis globais não ajudam.&lt;br /&gt;
Seja para inserir em botões do twitter, facebook, etc.&lt;br /&gt;
&lt;br /&gt;
As globais do PHP só informam &lt;b&gt;após &lt;/b&gt;o domínio do site (www.qualquercoisa.com), o que muitas vezes não serve de nada para um botão do twitter por exemplo.&lt;br /&gt;
&lt;br /&gt;
Pesquisei na net pra ver se já tinha algo pronto pra eu usar e nada. Só tinha gente gambiarrando com o SCRIPT_NAME , REQUEST_URI ou PHP_SELF que não valem de nada quando você precisa do endereço COMPLETO incluindo o 'http://' (protocolo) e o 'www.qualquercoisa.com' (domínio).&lt;br /&gt;
&lt;br /&gt;
Eu precisava era de algo parecido com o this.location comum no javascript. &lt;br /&gt;
&lt;br /&gt;
Daí resolvi fazer o que sei: gambiarrar também.&lt;br /&gt;
&lt;br /&gt;
Saiu o código abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='code'&gt;$proto = strtolower(preg_replace('/[^a-zA-Z]/','',$_SERVER['SERVER_PROTOCOL'])); //pegando só o que for letra 
$location = $proto.'://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

echo $location; 
&lt;/pre&gt;Prontinho, espero ter ajudado. Comenta ae.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-5219271358664889993?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=SC_NJhl7EnU:XBJhWMx5CSk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=SC_NJhl7EnU:XBJhWMx5CSk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=SC_NJhl7EnU:XBJhWMx5CSk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=SC_NJhl7EnU:XBJhWMx5CSk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=SC_NJhl7EnU:XBJhWMx5CSk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/SC_NJhl7EnU" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/02/pegando-o-endereco-da-url-atual-em-php.html</feedburner:origLink></item><item><title>Botão Twitta Isso Fácil como Favorito no Firefox - sem plugin</title><link>http://feedproxy.google.com/~r/elmicox/~3/MS-gTTsTyew/botao-twitta-isso-facil-como-favorito.html</link><category>firefox</category><category>twitter</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Wed, 19 Jan 2011 03:13:32 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2857881563297269342</guid><description>Ae povo. Tô de férias.&lt;br /&gt;
&lt;br /&gt;
Eu tava cansado de querer mandar algo pro twitter e ter que usar complicação de plugins pra firefox ou ver a boa vontade do dono da página de colocar um botão "twite isto" fácil sem burocracia.&lt;br /&gt;
&lt;br /&gt;
Tem alguns que chegam ao absurdo de te pedir até a senha!!! Sai fora.&lt;br /&gt;
&lt;br /&gt;
E o pior é que muitos NÃO REDUZEM O URL!! &lt;br /&gt;
&lt;br /&gt;
Daí resolvi deixar a preguiça de lado e fazer um rapidinho aqui com confirm de javascript e opção pra escrever algo e, principalmente, com&lt;b&gt; redução automática do URL&lt;/b&gt; via bitly e topsy.&lt;br /&gt;
&lt;br /&gt;
Não pede sua senha, não fica 2 horas carregando páginas intermediárias e ainda reduz a url. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;É só arrastar o link abaixo para seus favoritos do Firefox:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="javascript:(function(){tx=document.title;do{tx=prompt('Digite%20o%20texto%20para%20aparecer%20antes%20do%20link.\r\nMaximo%20de%20115%20caracteres.',tx);if(tx&amp;amp;&amp;amp;tx.length&amp;lt;119){open('http://button.topsy.com/retweet?title='+escape(tx)+'&amp;amp;url='+escape(location));break}}while(tx&amp;amp;&amp;amp;confirm('Seu%20texto%20tem%20mais%20de%20118%20caracteres.\r\nNao%20vai%20caber.\r\nQuer%20corrigir?'))})();"&gt;Twitta Isso&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Ou, se não der certo arrastando, você pode colocar o favorito manualmente:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Copia o seguinte código (ctrl + C): &lt;i&gt;javascript:(function(){tx=document.title;do{tx=prompt('Digite o texto para aparecer antes do link.\r\nMáximo de 115 caracteres.',tx);if(tx&amp;amp;&amp;amp;tx.length&amp;lt;119){open('http://button.topsy.com/retweet?title='+escape(tx)+'&amp;amp;url='+escape(location));break}}while(tx&amp;amp;&amp;amp;confirm('Seu texto tem mais de 118 caracteres.\r\nNão vai caber.\r\nQuer corrigir?'))})(); &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Clica com o Botão direito na barra de favoritos e escolher a opção "adicionar novo favorito"&lt;/li&gt;
&lt;li&gt;No nome você coloca: Twitta Isso&lt;/li&gt;
&lt;li&gt;No Endereço você cola o código que copiou antes.&lt;/li&gt;
&lt;/ol&gt;
Prontinho.&lt;br /&gt;
Não testei em outros navegadores pra ver o que dá. Sou preguiçoso. Testa ae e me avisa nos comments.&lt;br /&gt;
&lt;br /&gt;
Se quiser dar uma curiada no código é só embelezá-lo no jsbeautifier: &lt;a href="http://jsbeautifier.org/"&gt;http://jsbeautifier.org/&amp;nbsp; &lt;/a&gt;&lt;br /&gt;
Se quiser, pode me agradecer ou xingar via twitter também hehe: &lt;a href="http://twitter.com/micox"&gt;twitter.com/micox&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2857881563297269342?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=MS-gTTsTyew:Km7ud7QtDCU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=MS-gTTsTyew:Km7ud7QtDCU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=MS-gTTsTyew:Km7ud7QtDCU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=MS-gTTsTyew:Km7ud7QtDCU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=MS-gTTsTyew:Km7ud7QtDCU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/MS-gTTsTyew" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2011/01/botao-twitta-isso-facil-como-favorito.html</feedburner:origLink></item><item><title>Pegando o 'Ontem' em PHP - 4 métodos</title><link>http://feedproxy.google.com/~r/elmicox/~3/KKUUTcmiFTo/pegando-o-ontem-e-php-4-metodos.html</link><category>velocidade</category><category>dicas</category><category>php</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Wed, 01 Sep 2010 05:14:02 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-7238028971081809811</guid><description>&lt;p&gt;
Esta dica legal peguei do &lt;a href="http://blog.ninedays.org/2009/07/02/get-calculate-yesterday-date-php/"&gt;Ninedays blog&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;
Como calcular o dia de ontem em php. Com uma descrição de 4 formas diferentes pra você escolher a que mais te agrada.
&lt;/p&gt;&lt;p&gt;
Se você sabe outros métodos interessantes, contribua aí nos comentários.
&lt;/p&gt;&lt;p&gt;
Adaptando um pouco também dá pra trabalhar com o mês anterior, ano anterior, etc...
&lt;/p&gt;&lt;p&gt;
Bora:
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight: bold;"&gt;Método 1 - mktime - O mais lento (até 450%)&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
echo date("Y-m-d", mktime(0, 0, 0, date("m"),date("d")-1,date("Y")));
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight: bold;"&gt;Método 2 - subtraindo os minutos - O mais rápido&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
echo date("Y-m-d", time() - 86400);
&lt;/p&gt;&lt;p&gt;
Uma variação deste pra ficar mais "entendível" pra saber quantos minutos/horas subtraímos seria usando...
&lt;/p&gt;&lt;p&gt;
echo date("Y-m-d", time() - (60*60*24) );
//deve ficar um pouquinho mais lento que a forma original
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight: bold;"&gt;Método 3 - strtotime() yesterday&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
echo date("Y-m-d", strtotime("yesterday"));
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight: bold;"&gt;Método 4 - strtotime() -1 day&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
echo date("Y-m-d", strtotime("-1 day"));
&lt;/p&gt;&lt;p&gt;

Post rápido. É só isso...

Se você sabe outros métodos interessantes, contribua aí nos comentários.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-7238028971081809811?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=KKUUTcmiFTo:9FWbGNVW0_A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=KKUUTcmiFTo:9FWbGNVW0_A:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=KKUUTcmiFTo:9FWbGNVW0_A:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=KKUUTcmiFTo:9FWbGNVW0_A:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=KKUUTcmiFTo:9FWbGNVW0_A:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/KKUUTcmiFTo" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2010/08/pegando-o-ontem-e-php-4-metodos.html</feedburner:origLink></item><item><title>Introduçãozinha sobre Cache web e no servidor</title><link>http://feedproxy.google.com/~r/elmicox/~3/wcs1BrC8R8s/introducaozinha-sobre-cache-web-e-no.html</link><category>velocidade</category><category>desempenho</category><category>dicas http</category><category>dicas</category><category>cache</category><category>php</category><category>asp</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 09 Feb 2012 08:23:04 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-3801226774555070118</guid><description>Um brodi perguntou estes dias sobre esquemas de cache pra deixar a página mais rápida.
&lt;br /&gt;
Vou tentar explicar de forma resumida e rápida sobre cache em páginas web.
&lt;br /&gt;
O termo cache designa o ato de guardar uma cópia de algo complexo ou lento para que se possa ter acesso mais rápido a este "algo complexo" futuramente.
O &lt;strong&gt;cache web&lt;/strong&gt; pode ser ativado em "várias frentes".
&lt;br /&gt;
O cache que vou tratar aqui é o "cache web" de páginas web/http, ok? Nada a ver com cache em processador, e outras paradas.
&lt;br /&gt;
&lt;h3&gt;
Cache na Frente client&lt;/h3&gt;
Quando você pede uma página web no seu navegador, ele a exibe, porém , além de exibir, pode ser que ele guarde ela (ou partes dela) "em cache" para caso você acesse ela novamente no futuro. Assim ele exibirá a página mais rápido pois partes dela (como imagens, scripts) estavam guardadas em seu cache interno e não precisaram ser pedidas novamente na rede.
&lt;br /&gt;
No Firefox do Windows XP, o cache geralmente fica em Documents and Settings\nome_user\Configurações locais\Dados de aplicativos\Mozilla\Firefox\Profiles
&lt;br /&gt;
Esta foi a "frente client" do cache (conhecido como "cache web") e ela pode ser exercida não só pelo navegador, mas por servidores proxy também, por exemplo.
&lt;br /&gt;
Como implementar este cache web?
&lt;br /&gt;
1) Através de meta tags no HTML  (meta expires, cache-control, pragma)&lt;br /&gt;
2) OU headers enviados pelo script php/asp/jsp (também expires, cache-control, pragma)&lt;br /&gt;
3) OU header enviados diretamente pelo servidor web http (apache/IIS/etc) (novamente expires, cache-control, pragma).
&lt;br /&gt;
Não vou detalhar cada um aqui pois não é o objetivo do post. Usa o google :P
&lt;br /&gt;
Veja um detalhamento maior sobre &lt;a href="http://www.rnp.br/newsgen/0003/cache.html" rel="nofollow"&gt;cache web aqui&lt;/a&gt;,
E &lt;a href="http://www.mnot.net/cache_docs/" rel="nofollow"&gt;aqui também (em inglês)&lt;/a&gt;
Cache via &lt;a href="http://www.softblue.com.br/blog/home/postid/6/PHP+E+ARQUIVOS+EM+CACHE" rel="nofollow"&gt;header PHP&lt;/a&gt;
&lt;br /&gt;
&lt;h3&gt;
Cache na Frente server-side&lt;/h3&gt;
Já a "frente server-side" atua no servidor web (cache server), pra ajudar o bixo a enviar a página pro navegador com maior rapidez.
&lt;br /&gt;
Exemplo: Imagine que o navegador pede uma página que exibe uma lista de produtos e preços que está no banco de dados.
&lt;br /&gt;
O coitado do servidor web terá que ligar o interpretador Php (ou asp ou outro), conectar com o banco de dados, fazer a consulta sql, aguardar o server sql processar a consulta, pegar os dados, formatar em html e só então devolver pro navegador.
&lt;br /&gt;
Agora imagine que, além da lista de produtos, o server tenha que pegar também o menu do site no banco de dados, as últimas postagens, etc.
Será um monte de consultas que deixarão o site lento pra caramba.
&lt;br /&gt;
Agora imagine que o servidor é inteligente e, além de devolver o html pro navegador, ele também crie um arquivo com este html.
&lt;br /&gt;
Assim, da próxima vez que algum navegador pedir a mesma página ele não precise fazer aquele monte de consultas sql e talz. É só mandar o arquivo html que estava salvo pro navegador.
&lt;br /&gt;
Hahá! Seu server ficará aliviado e seu site mais rápido. Simples né?
&lt;br /&gt;
Nem tanto hehe. Existem sistemas de cache server onde os caras guardam na memória RAM e não em arquivos pra ficar mais rápido ainda (MEMcached). Outros guardam só as consultas sql, outros guardam os arquivos em módulos (módulo menu, módulo option_cidades), etc.
&lt;br /&gt;
Vai da sua imaginação e do seu sistema...
&lt;br /&gt;
"Mas, sr mico, e se o conteúdo da página mudar?" &lt;br /&gt;
- Bem, é por isso que, nos dois casos citados acima existe o conceito de timeout. O programador HTML/PHP irá especificar um tempo em que o cache será válido.
&lt;br /&gt;
"Mas, sr mico, no meu site/sistema o sistema de fornecedores cadastra produtos a todo minuto, um sistema de cache não ajudaria muito pois o timeout teria que ser muito pequeno" &lt;br /&gt;
- Se seu site tem muitos acessos por minuto, mesmo um cache com validade de 30seg seria de grande ajuda. Uma consulta sql consome muito tempo e processamento.
O primeiro visitante destes 30seg iria esperar um pouco, mas o segundo e o terceiro iriam agradecer a velocidade.
&lt;br /&gt;
Uma implementação simples de cache server em arquivos pode ser &lt;a href="http://imasters.com.br/artigo/11191/php/caching_em_php_com_uma_tecnica_obscura_mas_muito_eficiente/" rel="nofollow" target="_blank"&gt;vista aqui&lt;/a&gt;.
&lt;br /&gt;
&lt;a href="http://www.google.com.br/search?hl=pt-BR&amp;amp;source=hp&amp;amp;q=cache%20file%20asp&amp;amp;meta=&amp;amp;aq=f&amp;amp;oq=" rel="nofollow"&gt;Outras em ASP aqui&lt;/a&gt;, &lt;a href="http://www.google.com.br/search?hl=pt-BR&amp;amp;q=cache+php+file&amp;amp;aq=f&amp;amp;aqi=&amp;amp;aql=&amp;amp;oq=&amp;amp;gs_rfai=" rel="nofollow"&gt;Outras em PHP aqui&lt;/a&gt;
&lt;br /&gt;
&lt;h3&gt;
Conclusão&lt;/h3&gt;
Pra sites com muitos acessos, sistema de cache são uma puta salvação. E você ainda pode implementar os 2 sistemas de cache em conjunto.
&lt;br /&gt;
Eu já economizei bastante em servidor web implementando sistemas de cache. Princpalmente em blogs com o plugin super cache do wordpress (e recentemente o db cache reloaded graças ao &lt;a href="http://janio.sarmento.org/"&gt;Janio&lt;/a&gt;).
&lt;br /&gt;
Na época do &lt;a href="http://mwords.valeus.net/"&gt;Mwords&lt;/a&gt;, o cache dava uma salvada boa nas trocentas requisições por segundo que tinha.
&lt;br /&gt;
Devem existir outras frentes, outros modelos, outras formas...
Se você souber lembre este mico através dos comentários.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-3801226774555070118?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=wcs1BrC8R8s:e2lF_qz1g7M:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=wcs1BrC8R8s:e2lF_qz1g7M:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=wcs1BrC8R8s:e2lF_qz1g7M:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=wcs1BrC8R8s:e2lF_qz1g7M:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=wcs1BrC8R8s:e2lF_qz1g7M:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/wcs1BrC8R8s" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2010/07/introducaozinha-sobre-cache-web-e-no.html</feedburner:origLink></item><item><title>Dois ou mais domínios no mesmo Wordpress</title><link>http://feedproxy.google.com/~r/elmicox/~3/IR84X6_S5js/dois-ou-mais-dominios-no-mesmo.html</link><category>wordpress</category><category>domínios</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 24 Jun 2010 04:14:27 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-633095227108652740</guid><description>&lt;p&gt;Opa, depois de anos sumido volto pra deixar guardado uma gambiarrazinha que tive que fazer para poder ter 2 domínios funcionando na mesma instalação do Wordpress. (testado só em wordpress antes do 3.0 )
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-style:italic;"&gt;"Ué, mico, mas não seria só fazer um redirecionamento?"&lt;/span&gt; &lt;br /&gt;
- Não, neste caso, o cliente quer que o site funcione tanto para www.nomecliente.com.br como para www.produtotal.com SEM MUDAR O ENDEREÇO no navegador, ou seja, sem redirecionamento.
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-style:italic;"&gt;
"Mas por que diabos o cliente quer isso? Convence ele do contrário ué"&lt;/span&gt;&lt;br /&gt;
- O cliente quer isso para ele ficar bem no google na busca pelo produtotal e ainda assim ter seu site com nomecliente.com.br. O cliente tá certo.
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-style:italic;"&gt;"Ah, então não é só fazer um Rewrite no apache pra cuidar disso?"&lt;/span&gt;&lt;br /&gt;
- Não pois o Wordpress redireciona tudo para o domínio principal para o qual está configurado. Acessos e links. Eu quero mudar os links também.
&lt;/p&gt;&lt;p&gt;
Bora lá.
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight:bold;"&gt;Primeira parte:&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
- Faça sua instalação normal de Wordpress e escolha um dos domínios para ser o padrão. Neste exemplo vou escolher o nomecliente.com.br . Configuro tudo normalzinho como se só existisse o domínio nomecliente.com.br
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight:bold;"&gt;Segunda parte:&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
- Vou no arquivo wp-config.php e , depois da definição do DB_COLLATE e do WP_TEMP_DIR, eu coloco:
&lt;/p&gt;
&lt;pre class='code'&gt;
//hack pro lance de ter 2 dominios
if(strpos($_SERVER["HTTP_HOST"],'nomecliente')===false){
define('WP_HOME','http://www.produtotal.com');
define('WP_SITEURL','http://www.produtotal.com');
}&lt;/pre&gt;
&lt;p&gt;
- O que fiz acima? Testei se o visitante veio digitando nomecliente.com.br . Se veio, o wordpress vai funcionar com o domínio normal que foi configurado na instalação, SENÃO, mudo as variáveis de domínio do wordpress.
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-weight:bold;"&gt;Terceira parte:&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
Pro senhor Google não penalizar o site por CONTEÚDO DUPLICADO eu vou lá na edição do tema do site, no arquivo header.php, e coloco uma META TAG CANONICAL dizendo qual o domínio que deve ser indexado. Neste caso, prefiro que se indexe melhor o "produtotal" do que o "nomecliente".
&lt;/p&gt;
&lt;pre class='code'&gt;&amp;lt;link rel="canonical" href="http://www.produtotal.com&amp;lt;?= $_SERVER["REQUEST_URI"] ?&amp;gt;" /&amp;gt;&lt;/pre&gt;
&lt;p&gt;
Prontinho. Fácil né? Será que tem alguma outra forma mais fácil e eu tô manezando?&lt;br /&gt; Se eu falei alguma besteira, corrige ae. Dúvidas?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-633095227108652740?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=IR84X6_S5js:r0ygD0H0KxE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=IR84X6_S5js:r0ygD0H0KxE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=IR84X6_S5js:r0ygD0H0KxE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=IR84X6_S5js:r0ygD0H0KxE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=IR84X6_S5js:r0ygD0H0KxE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/IR84X6_S5js" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">8</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2010/06/dois-ou-mais-dominios-no-mesmo.html</feedburner:origLink></item><item><title>Efeito de digitação em texto com Javascript</title><link>http://feedproxy.google.com/~r/elmicox/~3/JihQ64lugzo/efeito-de-digitacao-em-texto-com.html</link><category>javascript</category><category>funções</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 18 Mar 2010 07:55:38 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2763657078453162846</guid><description>Saca aquele efeitinho em textos que parece que se está digitando? Uma letra aparecendo após a outra.
&lt;br /&gt;&lt;br /&gt;
Pois é. Precisei disso no módulo &lt;a href='http://mwords.valeus.net'&gt;Mchat do Mwords&lt;/a&gt; daí tive que fazer hehe.
&lt;br /&gt;&lt;br /&gt;
- Antes de chamar a função o elemento que vai receber a digitação deve estar vazio (sem texto).
&lt;br /&gt;
- O "50" que tem lá dentro do setTimeout indica a velocidade da digitação. Quanto menor, mais rápido.
&lt;br /&gt;
- Implementei um callback (parâmetro cb) pra que você possa definir alguma ação quando a digitação terminar.
&lt;br /&gt;
&lt;br /&gt;
Bora:
&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="code"&gt;
digita = function(obj,text,callback){ 
 /* faz efeito de digitação no texto. By Micox - elmicox.blogspot.com */
 obj = obj.nodeName ? obj : document.getElementById(obj);
 var len=obj.innerHTML.length;
 if(len&amp;lt;text.length){
  obj.innerHTML = text.substring(0,len+1)
  setTimeout(function(){digita(obj,text,callback)},50);
  if(len==text.length-1 &amp;amp;&amp;amp; callback){ callback();}
 }
}
&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
Pra usar:
&lt;br /&gt;
- obj é o objeto que vai sofrer a digitação. Pode passar a ID do elemento ou o Objeto direto mesmo.
&lt;br /&gt;
- text é o texto que vai aparecer
&lt;br /&gt;
- callback é uma função opcional que vai ser executada quando acabar a digitação.
&lt;br /&gt;&lt;br /&gt;
Exemplo:&lt;br /&gt;
&lt;pre class="code"&gt;
&amp;lt;div id='cont'&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;script&amp;gt;
digita('cont','Opa, sou um texto que está sendo digitado',function(){alert('acabou a digitação')});
&amp;lt;/script&amp;gt;
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2763657078453162846?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=JihQ64lugzo:rMZKTrvjToA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=JihQ64lugzo:rMZKTrvjToA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=JihQ64lugzo:rMZKTrvjToA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=JihQ64lugzo:rMZKTrvjToA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=JihQ64lugzo:rMZKTrvjToA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/JihQ64lugzo" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2010/03/efeito-de-digitacao-em-texto-com.html</feedburner:origLink></item><item><title>Pegar Busca digitada por visitantes em motores de busca (google, yahoo, bing, etc) via javascript</title><link>http://feedproxy.google.com/~r/elmicox/~3/6cwNeyGdiSc/busca-digitada-por-visitantes-em.html</link><category>javascript</category><category>funções</category><category>seo</category><category>google</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 26 Aug 2010 10:32:48 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-8015361508740059077</guid><description>Opa, pra ficar guardado aqui no blog pra quando eu (ou alguém mais) precisar:
&lt;br /&gt;&lt;br /&gt;
Uma funçãozinha rápida (que com certeza já existem outras na net) para ver qual foi a pesquisa digitada por um visitante que caiu em seu site feita em motores de busca comuns no Brasil (google, yahoo, bing, uol).
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Pegar Busca digitada por visitantes em motores de busca (google, yahoo, bing, etc) via javascript&lt;/strong&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;pre class='code'&gt;
keyword = function(){
 var dr=document.referrer,q,fq,goo='';
 //se veio de uma busca google/yahoo/etc retorna qual a keyword
 if(dr.match(/ogle\.c|ahoo\.c|bing.c|usca.uol/i)){
  if((q=dr.indexOf('q='))&amp;gt;0){
   fq = dr.indexOf('&amp;',q);
   goo = dr.substring(q+2,(fq&amp;gt;q?fq:dr.length));
  }
 }
 return goo;
}
&lt;/pre&gt;
&lt;br /&gt;&lt;br /&gt;
Pra usar é só chamar a função "keyword":
&lt;br /&gt;&lt;br /&gt;
&lt;pre class='code'&gt;
var palavrachave = keyword();
if(palavrachave){
  alert("Olá visitante, bem vindo ao site tal. Você chegou até aqui procurando por " + palavrachave);
}
&lt;/pre&gt;
&lt;br /&gt;&lt;br /&gt;
Ah, por hoje é só hehehe.
Voltemos às brigas com o &lt;a href='http://mwords.valeus.net'&gt;Mwords&lt;/a&gt; e Mchat.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-8015361508740059077?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=6cwNeyGdiSc:48dKgV0D6uE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=6cwNeyGdiSc:48dKgV0D6uE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=6cwNeyGdiSc:48dKgV0D6uE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=6cwNeyGdiSc:48dKgV0D6uE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=6cwNeyGdiSc:48dKgV0D6uE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/6cwNeyGdiSc" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2010/03/busca-digitada-por-visitantes-em.html</feedburner:origLink></item><item><title>Função Random (aleatório) que não se repete em Javascript - PseudoRandom</title><link>http://feedproxy.google.com/~r/elmicox/~3/gajN5Bjc-1E/funcao-random-aleatorio-que-nao-se.html</link><category>javascript</category><category>funções</category><category>random</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Fri, 11 Dec 2009 09:14:21 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-5493600295919833094</guid><description>&lt;p&gt;Háaaaaa
&lt;/p&gt;&lt;p&gt;
Direto tem gente reclamando de funções random, que, muitas vezes não se parecem nada aleatórias.
&lt;/p&gt;&lt;p&gt;
Tipo hoje, o brodi chamado luis henrique (kakaroto) tava reclamando que o random dele, muitas vezes, repetia o valor que saiu no sorteio anterior.
&lt;/p&gt;&lt;p&gt;
Ora, a probabilidade do número se repetir em um sorteio é bastante pequena para uma grande faixa de números (tipo 0 a 100) porém é uma probabilidade MUITO alta em faixa pequena de números (tipo 0 a 5).
&lt;/p&gt;&lt;p&gt;
Ora, se é aleatório, é aleatório. Mesmo que o número já tenha saído da última vez ele tem a probabilidade de sair novamente hehee.
&lt;/p&gt;&lt;p&gt;
Mas, como muita gente não fica satisfeito com esta possibilidade, bora gambiarrar mais uma vez pra impedir um número de se repetir.
&lt;/p&gt;&lt;p&gt;
Se este é seu caso, divirta-se com o código javascript abaixo (que eu chamei de 'pseudo-random'):
&lt;/p&gt;
&lt;pre class='code'&gt;
function pseudoRand(size){
 //gerando o rand de zero a 'size - 1'
 var randa = Math.floor(Math.random() * size);
 //testando se o rand novo é igual ao antigo
 if(typeof(oldrand)!='undefined'){
  while(randa==oldrand){
   //se for igual, eu gero um novo
   randa = Math.floor(Math.random() * size);
  }
 }
 //guardando o ultimo rand em uma var global
 window['oldrand'] = randa;
 //retornando o rand atual
 return randa;
}
&lt;/pre&gt;
&lt;p&gt;
Uso
&lt;/p&gt;
&lt;pre class='code'&gt;
//vai alertar um random de 0 a 3 sem possibilidade de repetir o anterior
alert(pseudoRandom(4))
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-5493600295919833094?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=gajN5Bjc-1E:7VVoEwfqi44:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=gajN5Bjc-1E:7VVoEwfqi44:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=gajN5Bjc-1E:7VVoEwfqi44:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=gajN5Bjc-1E:7VVoEwfqi44:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=gajN5Bjc-1E:7VVoEwfqi44:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/gajN5Bjc-1E" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2009/12/funcao-random-aleatorio-que-nao-se.html</feedburner:origLink></item><item><title>Marcar o item atual de um Menu com uma classe específica - Sem server-side</title><link>http://feedproxy.google.com/~r/elmicox/~3/-eGpLfnATZ0/marcar-o-item-atual-de-um-menu-com-uma.html</link><category>javascript</category><category>funções</category><category>menus</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Mon, 23 Nov 2009 11:01:49 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2070755830975940743</guid><description>&lt;p&gt;
Códigozinho inspirado por uma dúvida da &lt;a href="http://twitter.com/olhosespanhois"&gt;olhosespanhois&lt;/a&gt; lá no &lt;a href="http://forum.webly.com.br/index.php?showtopic=27507&amp;amp;view=findpost&amp;amp;p=158548"&gt;Webly&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;
Muitas vezes, quando temos um menu qualquer, queremos marcar o item aberto com um visual diferente. Tipo, se o visitante clica em "serviços", deixar o menu "serviços" de outra cor.
&lt;/p&gt;&lt;p&gt;
Ao usar CSS (e um menu baseado em UL-LI) Agente faz isto colocando uma classe diferente no LI do "serviços", por exemplo.
&lt;/p&gt;&lt;p&gt;
Pra marcar esta classe no LI geralmente se usa programação server-side (php, asp, jsp, etc), o que dá um certo trabalho e atrapalha se formos testar localmente.
&lt;/p&gt;&lt;p&gt;
Bem, que tal uma gambiarra javascript pra resolvermos isto e sempre marcar o item atual com a classe "ativo" e os outros LI com a classe "inativo".
&lt;/p&gt;&lt;p&gt;
O script está abaixo bem comentado. É só salvar no seu PC, alterar o que quiser e testar.
&lt;/p&gt;&lt;p&gt;
Útil para fazer menus em abas e coisas do tipo.
&lt;/p&gt;&lt;p&gt;
Adiós.
&lt;/p&gt;
&lt;pre class="code"&gt;
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
 &amp;lt;style&amp;gt;
  /* os estilos css do ativo e inativo. Altere as propriedades como quiser
  só não altere os seletores */
  #menu .inativo a { color: white; background-color: black }
  #menu .ativo a { color: black; background-color: white }
 &amp;lt;/style&amp;gt;
 &amp;lt;script&amp;gt;
  //função que troca a classe dos li para ativo e inativo
  function ativoinativo(quem){
   //o 'quem' original é um link, agora tô pegando o li pai
   var lipai = quem.parentNode; 
   if(lipai.className=='ativo'){
    //se ele já era ativo vira inativo
    lipai.className = 'inativo';
   }else{
    //se ele não tinha classe ainda, transformo em ativo
    lipai.className = 'ativo';
    //e também faço seus irmãos li virarem inativos
    var irmaosli = lipai.parentNode.childNodes; //pegando os irmaos li
    for(var i=0; i&amp;lt;irmaosli.length ; i++){ //varrendo os li
     var liatual = irmaosli[i];
     if(liatual != lipai &amp;&amp; liatual.nodeName=='LI'){
      //se não é o li atual vai virar inativo
      irmaosli[i].className = 'inativo'
     }
    }
   }
  }
  
  //função que testa qual li que tem o link atual e marca como ativo
  function initAtivoInativo(divalvo){
   if(!divalvo.nodeName){
   //testando se o divalvo já é um objeto
   //se não for, eu uso o velho getElementById
    divalvo = document.getElementById(divalvo);
    if(!divalvo){ alert('Erro: o divalvo não existe'); return;}
   }
   //pegando os li que tão dentro do divalvo
   var ah,lis = divalvo.getElementsByTagName('li');
   for(var i=0; i&amp;lt;lis.length ; i++){
    
    //pegando os links que tão dentro de cada li
    ah = lis[i].getElementsByTagName('a')[0];
    if(!ah){ continue; } //se não achou o link vai pro prox li
    
    //ativando o onclick nos links pra fazer a troca de ativo/inativo
    ah.onclick = function(e){
     //pegando o alvo crossbrowser http://elcio.com.br/crossbrowser/#7
     if(typeof(e)=='undefined')var e=window.event; 
     source=e.target?e.target:e.srcElement; //
     if(source.nodeType == 3)source = source.parentNode
     //ativando o onclick nos links pra fazer a troca de ativo/inativo
     ativoinativo(source);
    }
    
    if(location.href.indexOf(ah.href)&amp;gt;-1){
     //se o endereço atual tem o link do li atual marco ativo
     lis[i].className = 'ativo'
    }else{
     //senão é inativo
     lis[i].className = 'inativo'
    }
   }
  }
  //ativando no onload (mas depois de um tempinho pra não bugar em alguns browsers heheh)
  //você pode usar body onload tb ou onready de libs
  window.onload = setTimeout(function(){initAtivoInativo('menu');},300);
 &amp;lt;/script&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
 &amp;lt;ul id='menu'&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;a href="#home.htm"&amp;gt;home&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;a href="#micox.htm"&amp;gt;Micox&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;a href="#mwords.htm"&amp;gt;mwords&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
 &amp;lt;/ul&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2070755830975940743?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=-eGpLfnATZ0:-A5bAjBeZ4o:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=-eGpLfnATZ0:-A5bAjBeZ4o:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=-eGpLfnATZ0:-A5bAjBeZ4o:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=-eGpLfnATZ0:-A5bAjBeZ4o:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=-eGpLfnATZ0:-A5bAjBeZ4o:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/-eGpLfnATZ0" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2009/11/marcar-o-item-atual-de-um-menu-com-uma.html</feedburner:origLink></item><item><title>Load Limiter - Limitando o load de seu site pra não sobrecarregar o servidor</title><link>http://feedproxy.google.com/~r/elmicox/~3/WGRSFzgccgg/load-limiter-limitando-o-load-de-seu.html</link><category>servidor</category><category>funções</category><category>desempenho</category><category>php</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 29 Oct 2009 06:53:19 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-7295141005448357324</guid><description>&lt;p&gt;Ae senhores, bão? bãozão?
&lt;/p&gt;&lt;p&gt;
Post rápido com uma funçãozinha que fiz quando tava tendo problemas com a hospedagem antiga do meu site (um dia eu conto essa história pra quem não acompanhou pelo &lt;a href='http://twitter.com/micox' target='_blank' rel='nofollow'&gt;twitter&lt;/a&gt;. Era a hospedagem da bysite.com.br - agora tô com a ótima &lt;a href='http://portofacil.net' target='_blank'&gt;PortoFacil.net&lt;/a&gt;).
&lt;/p&gt;&lt;p&gt;
Basicamente, meu site tava tendo muitos acessos E eu, provavelmente, devo ter ativado algum plugin louco no meu site. Resultado: excesso de processamentos no servidor. O bixo não tava dando conta do serviço e a hospedagem me sacaneava tirando meu site do ar por várias horas sem dar explicação, legal né?
&lt;/p&gt;&lt;p&gt;
Os servidores tem um lance que chamam de Load pra indicar mais ou menos comé que tá a carga nos bixo. É tipo uma média de quantos processos tão na fila. Veja &lt;a href="http://www.treze.net/?p=19"&gt;mais explicações aqui&lt;/a&gt; se você não souber o que é.
&lt;/p&gt;&lt;p&gt;
A solução que pensei, além de desativar o plugin, foi fazer uma funçãozinha pra exibir uma página simples caso o server esteja com Load alto. Existem também outras ferramentas pra &lt;a href='http://pt.wikipedia.org/wiki/Balanceamento_de_carga' rel='nofollow'&gt;load balancer&lt;/a&gt; que eu optei por não usar por preguiça de aprender a configurar essas parada e ver se servia ao meu caso.
&lt;/p&gt;&lt;p&gt;
O que a função faz é: Testa se o load do server tá acima do valor que você configurou. Se estiver, executa a função passada no parâmetro. Muito simples mas muito útil pra evitar surpresas com servidores (compartilhados principalmente).
&lt;/p&gt;&lt;p&gt;
Bora:
&lt;/p&gt;&lt;p&gt;
0) Crie um novo arquivo e dê o nome de "inc-loadLimiter.php"
Este é o conteúdo que você vai colocar dentro dele:
&lt;/p&gt;
&lt;pre class='code'&gt;
&amp;lt;?php
/*** Limita o processamento de acordo com o server load
By Micox: http://twitter.com/micox - http://elmicox.blogspot.com

Exemplo:
$loadLimiter=10; //limitei meu load a 10
if($loadLimiter){
  include_once "inc-loadLimiter.php";
  function saiVazio(){ 
    header("Cache-Control: no-cache, must-revalidate");
    include("aviso_de_manutencao_simples.htm"); //faça sua própria pág. simples.
    //echo "Em manutenção"; //caso você não queira usar include
    exit();
  }
  execIfLoad($loadLimiter,'saiVazio');
}
***/
function get_server_load($windows = 0) {
//fonte: http://www.videotexto.com.br/forum/viewtopic.php?t=243&amp;sid=910886ae470cefbee204751ab41292d9
        $os = strtolower(PHP_OS);
        if(strpos($os, "win") === false) {
  if(file_exists("/proc/loadavg")) {
         $load = file_get_contents("/proc/loadavg");
         $load = explode(' ', $load);
         return $load[0];
  }
  elseif(function_exists("shell_exec")) {
         $load = explode(' ', `uptime`);
         return $load[count($load)-1];
  }
  else {
         return "";
  }
        }
        elseif($windows) {
  if(class_exists("COM")) {
         $wmi = new COM("WinMgmts:\\\\.");
         $cpus = $wmi-&amp;gt;InstancesOf("Win32_Processor");
         
         $cpuload = 0;
         $i = 0;
         while ($cpu = $cpus-&amp;gt;Next()) {
    $cpuload += $cpu-&amp;gt;LoadPercentage;
    $i++;
         }
         
         $cpuload = round($cpuload / $i, 2);
         return "$cpuload%";
  }
  else {
         return "";
  }
        }
}

function execIfLoad($loadLimit,$callback){
    if(get_server_load()&amp;gt;$loadLimit){ call_user_func($callback); }
}
?&amp;gt;
&lt;/pre&gt;
&lt;p&gt;
1) Coloque o código &lt;b&gt;abaixo&lt;/b&gt; no começo de todas as páginas do seu site. Como eu uso wordpress, no meu caso, editei o tema e coloquei no header.php.
&lt;/p&gt;
&lt;pre class='code'&gt;
/**** Limitando o load pra não sobrecarregar o servidor.By Micox ***/
$loadLimiter=40; //limitei meu load a 40
if($loadLimiter){
  include_once "inc-loadLimiter.php"; //você verá esta função logo abaixo
  function saiVazio(){ 
    header("Cache-Control: no-cache, must-revalidate");
    include("aviso_de_manutencao_simples.htm"); //faça sua própria pág. simples.
    exit();
  }
  execIfLoad($loadLimiter,'saiVazio');
}
&lt;/pre&gt;
&lt;p&gt;
Prontinho. Dúvidas, manda nos comments.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-7295141005448357324?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=WGRSFzgccgg:xqGkewdZoEg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=WGRSFzgccgg:xqGkewdZoEg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=WGRSFzgccgg:xqGkewdZoEg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=WGRSFzgccgg:xqGkewdZoEg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=WGRSFzgccgg:xqGkewdZoEg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/WGRSFzgccgg" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2009/10/load-limiter-limitando-o-load-de-seu.html</feedburner:origLink></item><item><title>Ferramenta do Micox para te ajudar a ganhar dinheiro</title><link>http://feedproxy.google.com/~r/elmicox/~3/HesyFxkEKac/ferramenta-do-micox-para-te-ajudar.html</link><category>funções</category><category>ferramentas</category><category>grana</category><category>mercadosócios</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Thu, 27 Aug 2009 10:49:58 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-7994420167912569579</guid><description>&lt;p&gt;Hoooeeaa&lt;/p&gt; &lt;p&gt;Estamos de volta após algumas semanas desenvolvendo um scriptzinho novo. Sim, mais um. Mas este é um pouco diferente. O objetivo deste script novo é te ajudar a ganhar grana com o programa de afiliados &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5575926&amp;amp;go=http://pmsapp.mercadolivre.com.br/jm/pms" target="_blank"&gt;MercadoSócios &lt;/a&gt;do Mercado Livre.&lt;/p&gt; &lt;p&gt;Nas últimas semanas eu andava meio grilado com as quedas absurdas no rendimento de outro sistema de afiliados que eu usava E andava bastante satisfeito com o programa MercadoSócios, ENTÃO decidi que tava na hora de criar algo. Disso saiu o &lt;a target="_blank" href="http://valeus.net/mwords/"&gt;MWORDS&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Antes de explicar sobre a ferramenta famos falar sobre o &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5575926&amp;amp;go=http://pmsapp.mercadolivre.com.br/jm/pms" target="_blank"&gt;MercadoSócios &lt;/a&gt;:&lt;/p&gt; &lt;p&gt;Mercado Sócios é um programa de afiliados que paga por ação, isto é, você vende coisas deles (ou exibe banners) e ganha uma grana por isto. Você ganha de 30% a 70% das comissões de venda cobradas pelo MercadoLivre e ainda ganha enre R$9,50 a R$15 por cada cadastro ativo.&lt;/p&gt; &lt;p&gt;Se você ainda não é cadastrado, aproveite a oportunidade. &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5575926&amp;amp;go=http://pmsapp.mercadolivre.com.br/jm/pms" target="_blank"&gt;Clique aqui para ver as REGRAS completas e se cadastrar&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Agora sobre a ferramenta e seus principais diferenciais:&lt;/p&gt; &lt;p&gt;Bom, na verdade não podemos chamar de ’scriptzinho’ pois o bixo deu um bom trabalho e me ensinou algumas técnicas novas também que postarei em breve aqui no meu abandonado blog.&lt;/p&gt; &lt;ul&gt;&lt;li&gt;É uma Ferramenta (script) que insere links para produtos do MercadoLivre no conteúdo do texto do seu site ou blog, &lt;strong&gt;aumentando incrivelmente seus ganhos&lt;/strong&gt; com o programa de afiliados &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5575926&amp;amp;go=http://pmsapp.mercadolivre.com.br/jm/pms" target="_blank"&gt;MercadoSócios&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;É simples, leve, automático e contextual, isto é, leva em consideração o assunto do texto para exibir os links.&lt;/li&gt;&lt;li&gt;Pode ser ativado automáticamente em imagens também.&lt;/li&gt;&lt;li&gt;É totalmente configurável.&lt;/li&gt;&lt;li&gt;Se você já estiver cadastrado no MercadoSócios não é necessário fazer nenhum outro cadastro chato e nem me pedir autorização pra usar.&lt;/li&gt;&lt;li&gt;Você não precisa baixar nem instalar nada complicado no seu site, é só colocar a chamada ao script no final do seu site.&lt;/li&gt;&lt;li&gt;Veja ele em funcionamento aqui mesmo no El Micox.&lt;/li&gt;&lt;li&gt;&lt;a href="http://letra-e-traducao.blogspot.com/" target="_blank" title="letra de musicas"&gt;Veja aqui&lt;/a&gt; outro exemplo do script em funcionamento.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Quanto vou te cobrar pelo script? NADA. (mas uma postagenzinha no seu blog ou twitter seria legal hehehe. Na verdade, ganharei uma pequena comissão que negociei diretamente com o MercadoLivre e que não interfere em seus ganhos hehe ).&lt;/p&gt; &lt;p&gt;Um exemplo do código que você colocará no seu site:&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span class="phtml"&gt;&amp;lt;script type=’text/javascript’&amp;gt;&lt;/span&gt;
&lt;span class="pcomment"&gt;/* mwords - valeus.net/mwords - by Micox
*  Links para o mercado livre em palavras-chave do texto */&lt;/span&gt;
var mk_toolid = &lt;span class="pchange"&gt;5575926&lt;/span&gt;  ; &lt;span class="pcomment"&gt;//aqui você deve colocar seu toolid do mercadosócios&lt;/span&gt;
var mk_byid   = &lt;span class="pchange"&gt;‘content’&lt;/span&gt;; &lt;span class="pcomment"&gt;//aqui você indica qual o ID da div que contém os textos&lt;/span&gt;
&lt;span class="phtml"&gt;&amp;lt;/script&amp;gt;

&amp;lt;script charset=’UTF-8′ src=’http://valeus.net/mwords/motor.js’ defer=’defer’ type=’text/javascript’&amp;gt;
&amp;lt;/script&amp;gt;&lt;/span&gt;
  &lt;/pre&gt;

&lt;p&gt;Simples, fácil e vai melhorar seus ganhos.&lt;/p&gt; &lt;p&gt;Agora, se quiser, é só usar o gerador que está na página &lt;a target="_blank" href="http://valeus.net/mwords/"&gt;valeus.net/mwords&lt;/a&gt; pra escolher algumas configurações mais complexas.&lt;/p&gt; &lt;p&gt;Problemas, sugestões, depoimentos ou comentários comenta ae.
Está nos meus planos pro futuro desta ferramenta adaptar ela pra vários programas de afiliados, fazer um plugin Wordpress e Blogger pra ela e permitir vender para vários países.&lt;/p&gt; &lt;p&gt;Vamo ver se o povo vai usar isso. Aguardemos…&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-7994420167912569579?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=HesyFxkEKac:MUkJ5NWpkmw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=HesyFxkEKac:MUkJ5NWpkmw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=HesyFxkEKac:MUkJ5NWpkmw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=HesyFxkEKac:MUkJ5NWpkmw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=HesyFxkEKac:MUkJ5NWpkmw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/HesyFxkEKac" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">12</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2009/08/ferramenta-do-micox-para-te-ajudar.html</feedburner:origLink></item><item><title>Livros lidos: Investimentos, Devoradores de Mortos e Jquery</title><link>http://feedproxy.google.com/~r/elmicox/~3/j79nUGpGiso/livros-lidos-investimentos-devoradores.html</link><category>jquery</category><category>bate-papo</category><category>dicas</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Fri, 10 Jul 2009 19:33:37 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-2855837834144215407</guid><description>&lt;p&gt;Hooaaa.&lt;/p&gt;
&lt;p&gt;Hoje acho que tô meio animado pra postar aqui no ElMicox. Então vamo aproveitar essa animação e tagarelar.&lt;/p&gt;
&lt;p&gt;Andava bastante desanimado pra postar por vários motivos: prequiça, falta de scripts novos, &lt;a href="http://twitter.com/micox"&gt;twitter&lt;/a&gt;, outros sites meus dando grana e pedindo minha atenção, pouca leitura de outros sites da área, etc.&lt;/p&gt;
&lt;p&gt;Aliás, acho que poucos lerão este post. Os blogs de desenvolvimento web andam meio abandonados, quase ninguém mais lê feeds e talz. Até o &lt;a href="http://forum.webly.com.br"&gt;Webly &lt;/a&gt;está com baixíssimo movimento, ninguém mais tem dúvidas, poucos querem ajudar nas dúvidas dos outros. Sei lá… Acho que todo mundo anda sem tempo.&lt;/p&gt;
&lt;p&gt;Aliás, o MayronCachina, uma boa alma, vai dar um &lt;a href="http://forum.webly.com.br/index.php?showtopic=26761"&gt;curso grátis de PHP&lt;/a&gt;. Se você ainda não souber PHP agora é a hora.&lt;/p&gt;

&lt;p&gt;Li vários livros durante meu retiro espiritual aqui do blog. Abaixo mostro 3 que achei bem interessantes:&lt;/p&gt;
&lt;h3&gt;1) Investimentos: Como Administrar Melhor Seu Dinheiro - do Mauro Halfeld&lt;/h3&gt;
&lt;p&gt;Muuuuuuuito bom. Quando comecei a ganhar uma graninha boa nos meus sites vi que eu não tava segurando dinheiro nenhum. A grana não rendia. Daí topei com este livro lá na Saraiva. O cara escreve muito bem coisas ótimas pra manejar a grana. Não são coisas de outro planeta que só investidores-viciados conseguem entender.&lt;/p&gt;
&lt;p&gt;São coisas pra pessoas normais, classse média, aprenderem a usar melhor e investir melhor o dinheiro.&lt;/p&gt;
&lt;p&gt;Ele explica várias daquelas siglas que agente vê no jornal e fica sem entender. Explica os melhores investimentos, explica sobre imóveis e como investir nisso, explica sobre bolsa de valores, etc.&lt;/p&gt;
&lt;p&gt;Como já &lt;a href="http://search.twitter.com/search?q=quem+trabalha+n%C3%A3o+tem+tempo"&gt;twittavam &lt;/a&gt;por aí: “Quem trabalha &lt;b&gt;demais&lt;/b&gt; não tem tempo pra ficar rico” hehaeh&lt;br&gt;

Agora sério: O lance do Investimento é você fazer o dinheiro trabalhar pra você. Ter rendimentos que independam do seu trabalho (diretamente) tipo aluguéis, sites, ações, empresas. Assim você terá liberdade de criar novas e novas fontes de renda e finalmente ter a liberdade de escolher se quer continuar sendo funcionário ou não.&lt;/p&gt;
&lt;h3&gt;2) Devoradores de Mortos - do MICHAEL CRICHTON&lt;/h3&gt;
&lt;p&gt;&lt;a style="margin: 10px; float: left;" href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5552081&amp;amp;go=http://lista.mercadolivre.com.br/livros/devoradores-de-mortos_PrCategId_AD" target="_blank" rel="nofollow"&gt;&lt;img src="http://img503.imageshack.us/img503/1715/21607.jpg" alt="Livro Devoradores de Mortos - do MICHAEL CRICHTON"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;É uma historinha muito boa. Ótima. Um dos melhores livros de historinha que eu já li.&lt;br&gt;
&lt;em&gt;“O autor apresenta o mais antigo relato da vida dos vikings: o manuscrito do árabe Ibn Fadlan, de 922. Através deste documento, narra a vida desse povo de uma forma inédita, jamais vista pelos ocidentais.”&lt;/em&gt; - &lt;a href="http://www.submarino.com.br/produto/1/21607/devoradores+de+mortos" rel="nofollow"&gt;Submarino&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Mas o melhor é que o livro é (ou diz ser) baseado em um manuscrito do milênio passado que muitos historiadores confirmam a veracidade. Daí, a galera que gosta de “aventuras medievais” e uns lance meio RPG vai curtir pra caramba o livro e ficar naquela de ’será que aconteceu mesmo? será que é vero?’.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;“Ibn Fadlan ficou conhecido por escrever um manuscrito (Kitāb ilā Malik al-Saqāliba (كتاب إلى ملك الصقالبة)) sobre suas viagens como embaixador do Abássida al-Muqtadir para a terra dos búlgaros.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Por muito tempo, havia apenas uma versão incompleta dos manuscritos, espalhada por verbetes no dicionário geográfico escrito por Yaqut al-Hamawi, publicado em 1823.[1] Porém em 1923, o estudioso Zeki Validi Togan encontrou num museu em Meshed o manuscrito MS 5229, que continha entre outras coisas a versão mais completa do escrito de Ibn Fadlan.[2]”&lt;/em&gt; - &lt;a href="http://pt.wikipedia.org/wiki/Ahmad_ibn_Fadlan" rel="nofollow"&gt;Wikipedia&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Destaque para as passagens mostrando a porqueira da época, a putaria da época, os monstros marinhos (que alguns historiadores acreditam ser baleias), anões adivinhos, uma raça humana desconhecida, o espírito lutador dos nórdicos, tabernas, etc.&lt;/p&gt;
&lt;p&gt;Pra variar, fizeram uma bosta de um filme baseado neste livro: O &lt;a href="http://www.cineplayers.com/filme.php?id=3868"&gt;13o Guerreiro&lt;/a&gt;. É lógico que o filme não mostra nem 40% do livro e é um fracasso total.&lt;/p&gt;
&lt;p&gt;Compre este livro, não costuma ser mais de 20 conto.&lt;/p&gt;
&lt;h3&gt;3) Livro Jquery do Maujor&lt;/h3&gt;
&lt;p&gt;&lt;a style="margin: 10px; float: left;" href="http://www.livrojquery.com.br/" target="_blank" rel="nofollow"&gt;&lt;img src="http://img12.imageshack.us/img12/6421/livrolayout.png" alt="Livro Jquery do Maujor"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Bom, esse aqui nem precisa falar muito né. É um livro técnico explicando como usar o biblioteca para javascript Jquery.&lt;br&gt;

Se você é novato na área e não entende muito de javascript e nem de jquery, este livro vai te ajudar.&lt;/p&gt;
&lt;p&gt;O Maujor explica detalhadamente (quase) todas os métodos, propriedades e funções do jquery e dá um monte de exemplos. Muito bom pra se usar quando se precisa de referência em Jquery.&lt;/p&gt;
&lt;p&gt;Eu só não gostei muito da forma repetitiva que as funções/métodos são mostrados e nem da forma como foram apresentados os seletores.&lt;br&gt;
Como o Maujor é um grande mestre do CSS, achei que os seletores seriam mostrados como foram no site CSS dele, onde está mais fácil de entender e com menos texto.&lt;/p&gt;
&lt;p&gt;No restante o &lt;a href="http://www.maujor.com/blog/2008/11/20/lancamento-do-livro-jquery-do-maujor/"&gt;livro é show&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;(Obs.: Como nunca citei livros aqui no blog, alguns podem pensar que eu quero só ganhar uma grana extra com comissão. Bom, o ElMicox não rende nem 1 centavo por mês e acredito que com estes livros não será diferente.&lt;br&gt;
As indicações do livro são mais pra voltar o pique do blog já que tô sem scripts novos. Se alguém comprar através da minha indicação, bem, senão, amém. Ganho MUITO mais grana com meus outros blogs/sites.&lt;br&gt;
A idéia é mesmo mostrar livros bons que li.)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-2855837834144215407?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=j79nUGpGiso:0U6uBAobLmE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=j79nUGpGiso:0U6uBAobLmE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=j79nUGpGiso:0U6uBAobLmE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=j79nUGpGiso:0U6uBAobLmE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=j79nUGpGiso:0U6uBAobLmE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/j79nUGpGiso" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2009/05/livros-lidos-investimentos-devoradores.html</feedburner:origLink></item><item><title>Maxlength No Textarea - Inline E Simplão (e outras bizarrices javascript)</title><link>http://feedproxy.google.com/~r/elmicox/~3/kS_imZZpbUc/maxlength-no-textarea-inline-e-simplao.html</link><category>javascript</category><category>dicas</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Fri, 29 May 2009 05:14:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-8105153625622811933</guid><description>&lt;p&gt;oaaaaaaaaaaaaaaoaoaoaoaoooooooooaaaaaaaaa será que o micox tá de volta? Não sei. Provavelmente os leitores de feed não acompanham mais isso aqui mesmo. Vamo ver se vai ter algum comentário hehehehaeuhauehauehuaehuaheuheauea heauheauhe uhaeueahue lololololoo (louco mode off)&lt;/p&gt;
&lt;p&gt;Bom, hoje postaremos um nano-tutorial-código que mostra uma das trocentas maneiras de se implementar maxlength no textarea.&lt;/p&gt;
&lt;p&gt;Como vossa senhoria já deve saber, maxlength só tem em inputs, o pobre do textarea ficou esquecido.&lt;/p&gt;
&lt;p&gt;O código:&lt;/p&gt;
&lt;pre class="code"&gt;&amp;lt;textarea name='meutext' onkeydown='if(this.value.length&amp;gt;(MAXLEN=5))this.value=this.value.substr(0,MAXLEN)'&amp;gt;
&amp;lt;/textarea&amp;gt;&lt;/pre&gt;
&lt;p&gt;Para usar você só tem que alterar o número ‘5′ para a quantidade de caracteres que deseja como limite para seu textarea.&lt;/p&gt;

&lt;p&gt;Testei com sucesso no FF3 IE5 IE6 IE7 OP GCh (google chrome), se testarem em mais navegadores e funfar, postem ae.&lt;/p&gt;
&lt;p&gt;“Não entendi este código Sr Micox, WTF vc tá fazendo naquele trecho (MAXLEN=5) alí?”&lt;/p&gt;
&lt;p&gt;Bom, aquilo é uma bizarrice permitida pelo javascript pra reduzir (e complicar) o código. Quem mexe com Ruby já conhece este tipo de loucura muito útil.&lt;/p&gt;
&lt;p&gt;O que tá dentro do parênteses, além de atribuir um valor à variável MAXLEN, retorna o útlimo valor usado.&lt;/p&gt;
&lt;p&gt;Então se eu fizer &lt;span style="font-style: italic;"&gt;(d=document).write(’cocô’)&lt;/span&gt; , além de escrever ‘cocô’ na tela, ainda atribuirá o objeto document à variável ‘d’, o que me permitirá reduzir o código em futuras linhas deste script:&lt;/p&gt;
&lt;pre class="code"&gt;(d=document).write('cocô'); //isso funciona
d.write('fede'); //isso também&lt;/pre&gt;
&lt;p&gt;Hahá.&lt;br&gt;

Então quando eu faço &lt;span style="font-style: italic;"&gt;if(this.value.length&amp;gt;(MAXLEN=5))&lt;/span&gt; é a mesma coisa de fazer &lt;span style="font-style: italic;"&gt;MAXLEN=5; if(this.value.length&amp;gt;MAXLEN)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;hAHÁe hihíiii&lt;/p&gt;
&lt;p&gt;&lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5552081&amp;amp;go=http://lista.mercadolivre.com.br/silvio-santos" target="_blank" rel="nofollow"&gt;&lt;img src="http://img7.imageshack.us/img7/1883/silviosantos7.jpg" alt="silvio santos"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hoje tô animado. Acho que já vou fazer outra postagem sobre minha ausência e os livros que li durante meu retiro espiritual do blog.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-8105153625622811933?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=kS_imZZpbUc:0JYVsDHqGJ4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=kS_imZZpbUc:0JYVsDHqGJ4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=kS_imZZpbUc:0JYVsDHqGJ4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=kS_imZZpbUc:0JYVsDHqGJ4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=kS_imZZpbUc:0JYVsDHqGJ4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/kS_imZZpbUc" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2009/05/maxlength-no-textarea-inline-e-simplao.html</feedburner:origLink></item><item><title>Detesta burocracia no desenvolvimento? Getting Real neles</title><link>http://feedproxy.google.com/~r/elmicox/~3/wnUqFBMOLH8/detesta-burocracia-no-desenvolvimento.html</link><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Wed, 17 Dec 2008 03:35:37 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-584395588202323344</guid><description>&lt;p&gt;“Getting Real” (traduzido como “Caindo na Real”) é um livro e que descreve uma metodologia de desenvolvimento de negócios na internet.&lt;/p&gt;
&lt;p&gt;Eu já tinha lido ele há muito tempo, mas ainda não tinha comentado ou implementado. Tô meio atrasado (o mundo inteiro já deve ter lido este livro) mas bora lá.&lt;/p&gt;
&lt;p&gt;Ela prega que, a partir do momento que as idéias do negócio já estejam definidas, não se enrole muito pra desenvolver o seu site.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;“Em resumo, o que o Getting Real prega é que pulemos as fases que representam o projeto (documentos, especificações, wireframes, testes de usabilidade etc.) e partamos direto para o que realmente é o projeto, ou seja, telas, códigos e programação.&lt;/p&gt;
&lt;p&gt;A justificativa é que não importa o quanto seja planejado, quando o projeto for ao ar e os usuários começarem a realmente utilizá-lo, ele terá que ser alterado e ajustado” - &lt;a href="http://fatorw.com/internet/gerenciamento/metodologia-moebius-e-getting-real-planejamento-e-acao/"&gt;Walmar Andrade&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Se você já desenvolveu algo pra internet e colocou uma campo de contato para receber comentários e opiniões, sabe que isto é verdade.&lt;/p&gt;
&lt;p&gt;Você só vai perceber o que precisa ser ajustado após o serviço ir pro ar. Além disso, você também irá perceber claramente quais as funcionalidades mais prioritárias de se implementar.&lt;/p&gt;

&lt;p&gt;Se você já têm a idéia inicial, não demore. Na internet, quem chega primeiro têm chances maiores de se dar bem (bom, acho que na vida real também né hehehe).&lt;/p&gt;
&lt;p&gt;Opa, não estou dizendo pra você jogar qualquer porcaria na rede. Faça algo bom, algo cativante, algo que seus visitantes voltarão pra ver, algo que seus visitantes indicarão pros amigos.&lt;/p&gt;
&lt;p&gt;A cada dia que passar, os visitantes, vendo que funcionalidades novas vão sendo implantadas, vendo que as sugestões deles são ouvidas, vendo que é um site dinâmico e crescente, eles ficarão mais e mais fiéis do seu serviço.&lt;/p&gt;
&lt;p&gt;Colocando seu serviço no ar rapidamente, você também terá a vantagem de medir previamente como os visitantes estão chegando até você: palavras chave (busca do google) que dão mais resultado, que tipo de marketing dá mais resultado, quais parceiros dão mais resultado, etc.&lt;/p&gt;
&lt;p&gt;Detalhe: o livro está disponível “di grátis” e em português no site &lt;a href="http://gettingreal.37signals.com/GR_por.php"&gt;http://gettingreal.37signals.com/GR_por.php&lt;/a&gt;&lt;br&gt;
Leia a introdução e o capítulo 1 e se impressione.&lt;/p&gt;
&lt;p&gt;Minha opinião resumida é: não abandonte totalmente o planejamento, faça uns rabiscos, mas não demore meses pra lançar sua idéia.&lt;/p&gt;
&lt;p&gt;Talvez esta metodologia seja útil não só para o desenvolvimento web, mas para o desktop também (desde que o software tenha um sistema legal pra atualizações).&lt;/p&gt;

&lt;p&gt;//Pensando melhor, talvez ela não seja útil só na área de informática. Esta metodologia de fazer algo bom e rápido e , depois, ir melhorando já é usado por churrasquinhos que viram restaurantes, lojinhas de roupas que viram lojões, etc.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Caindo na Real se livra de …&lt;/p&gt;
&lt;p&gt;    * Cronogramas que levam meses ou mesmo anos&lt;br&gt;
    * Especificações Funcionais Utópicas&lt;br&gt;
    * Debates de Escalabilidade&lt;br&gt;
    * Reuniões de equipe intermináveis&lt;br&gt;
    * A “necessidade” de contratar dúzias de funcionários&lt;br&gt;

    * Números de versões sem sentido&lt;br&gt;
    * Planejamentos cristalinos que prevêem o futuro&lt;br&gt;
    * Opções de preferência intermináveis&lt;br&gt;
    * Suporte terceirizado&lt;br&gt;
    * Testes de usuário irreais&lt;br&gt;
    * Papelada inútil&lt;br&gt;

    * Hierarquia de cima-para-baixo&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-584395588202323344?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=wnUqFBMOLH8:piKFSkl5kzw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=wnUqFBMOLH8:piKFSkl5kzw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=wnUqFBMOLH8:piKFSkl5kzw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=wnUqFBMOLH8:piKFSkl5kzw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=wnUqFBMOLH8:piKFSkl5kzw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/wnUqFBMOLH8" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2008/12/detesta-burocracia-no-desenvolvimento.html</feedburner:origLink></item><item><title>Plugins essenciais pra Wordpress na opinião do Mico</title><link>http://feedproxy.google.com/~r/elmicox/~3/RC1j4CUazLA/pacote-de-plugins-essenciais-pra.html</link><category>wordpress</category><category>dicas</category><author>noreply@blogger.com (Micox - Náiron J. C. G.)</author><pubDate>Wed, 17 Dec 2008 03:42:11 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-23429770.post-1283250802655983002</guid><description>&lt;p&gt;Pacote de plugins essenciais pra Wordpress na opinião deste Mico que vos fala.
&lt;/p&gt;&lt;p&gt;
Toda instalação de wordpress que eu faço (que não são muitas) eu uso os seguintes plugins que facilitam pra caramba minha vida. Acho que eles já deveriam vir (pelo menos alguns) no pacote inicial do wordpress hahehaehe.
&lt;/p&gt;&lt;p&gt;
Se você têm mais ae, sugira nos comentários. Alguns dos abaixo, foram indicados pelo brodi &lt;a href='http://igorvieira.com/blog/'&gt;Igor&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;ChapSecureLogin &lt;/strong&gt;- criptografa (via javascript) sua senha pra que ela não passe em branco pela rede (e qualquer sniffer de rede possa vê-la)
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;LoginLockDown&lt;/strong&gt; - Bloqueia após 3 tentativas de senhas. Daí o mala só vai poder tentar força bruta novamente após XX minutos
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;WP Security Scan &lt;/strong&gt;- Testa permissões de pasta, nome do banco de dados, senhas e mais outras coisas. Muito bom.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Admin management Xtended&lt;/strong&gt; - Adiciona opções ajax a algumas ações de administração (como por ex deixar a página visível, trocar ordem de posts, etc)
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Ozh Admin Drop Down Menu &lt;/strong&gt;- transforma o menu do wp-admin em algo mais fácil de mexer. Em vez de ter que ficar acessando o menu pai pra só depois poder acessar os filhos. Esse compensa di cum força.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;All in One SEO Pack&lt;/strong&gt; - Deixa seu blog mais amigável pra mecanismos de busca.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Google XML Sitemaps&lt;/strong&gt; - Simplesmente ótimo pra gerar seu sitemap. Com opção de peso pra cada tipo de página e envio automático pros motores de busca.
&lt;/p&gt;&lt;p&gt;
&lt;a href="http://japs.etc.br/2007/09/como-evitar-spam-de-comentarios-com-codigo-simples-e-acessivel/"&gt;Comments Hash do Japs&lt;/a&gt; - Já famoso. Adiciona uma conta matemática na caixa de comentários. Reduz spam (e se você complicar a conta, pode reduzir comentários de não inteligentes também hahaha) - Ele não está na lista de plugins do wordpress.org, tem que procurar no google.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Old Post Alert&lt;/strong&gt; - Mostra um aviso se o post for antigo X meses. Bom pra sites de notícias.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Similar Posts&lt;/strong&gt; - Exibe links para postagens similares ao post em que o visitante está. (requer o post plugin library)
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Theme Test Drive &lt;/strong&gt;- pra você poder testar vários temas e modificações sem que seu visitante veja.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Wordpress Popular posts&lt;/strong&gt; - Mostra os posts mais populares.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Wordpress stats&lt;/strong&gt; - Estatísticas completas: pageviews, palavras chave, links clicados, sites que linkaram, etc
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;wordpress mobile edition&lt;/strong&gt; - link pra versão simples do seu site. Bom pra celulares e talz.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;404 notifier &lt;/strong&gt;- òtimo quando se está no começo do blog ou de um novo template, bom pra ver arquivos, imagens e outros links quebrados.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;WP DBManager&lt;/strong&gt; - alem do backup automática, faz otimização automática, reparação, restore do backup, etc.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;WP Super Cache&lt;/strong&gt; - Transforma seus posts em arquivo HTML reduzindo o acesso ao banco de dados e lentidão.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Wordpress Automatic upgrade&lt;/strong&gt; - Simplifica o trabalho chato de atualizar seu wordpress
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;PageNavi&lt;/strong&gt; - Adiciona números de página no seu blog ao invés do velho "página anterior" , "próxima página".
&lt;/p&gt;&lt;p&gt;
Por hoje é só. Se você têm mais, sugira nos comentários.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23429770-1283250802655983002?l=elmicox.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=RC1j4CUazLA:DFKDkaBTL1U:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=RC1j4CUazLA:DFKDkaBTL1U:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=RC1j4CUazLA:DFKDkaBTL1U:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/elmicox?a=RC1j4CUazLA:DFKDkaBTL1U:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/elmicox?i=RC1j4CUazLA:DFKDkaBTL1U:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/elmicox/~4/RC1j4CUazLA" height="1" width="1"/&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total><feedburner:origLink>http://elmicox.blogspot.com/2008/11/pacote-de-plugins-essenciais-pra.html</feedburner:origLink></item></channel></rss>

