{"id":1279,"date":"2004-01-27T06:30:03","date_gmt":"2004-01-27T09:30:03","guid":{"rendered":"http:\/\/marmota.org\/blog\/como-programar-os-posts-do-seu-blog"},"modified":"2004-01-27T06:30:03","modified_gmt":"2004-01-27T09:30:03","slug":"como-programar-os-posts-do-seu-blog","status":"publish","type":"post","link":"https:\/\/marmota.org\/blog\/como-programar-os-posts-do-seu-blog\/","title":{"rendered":"Como programar os posts do seu blog"},"content":{"rendered":"<p><img decoding=\"async\" src=\"http:\/\/marmota.org\/blog\/secoes\/fazendo.gif\" align=\"right\">Acredito que, nas \u00faltimas semanas, muitos internautas ficaram curiosos para saber como \u00e9 poss\u00edvel &#8220;agendar posts no blog&#8221;, prevendo situa\u00e7\u00f5es como a que eu estou passando agora: um longo per\u00edodo de inatividade. Particularmente, essa d\u00favida pintou pela primeira vez na minha cabe\u00e7a em abril do ano passado, assim que migrei para a tecnologia <a href=\"http:\/\/www.movabletype.com.br\" target=\"_blank\"><b>Movable Type<\/b><\/a> (se voc\u00ea usa blogger, weblogger, blig ou outro gratuito, certamente o restante do post ser\u00e1 frustrante&#8230;).<\/p>\n<p>Em busca de respostas, tive a orienta\u00e7\u00e3o do mestre <a href=\"http:\/\/www.hipermail.com\/blog\" target=\"_blank\"><b>F\u00e1bio Sampaio<\/b><\/a>, que me deu uma r\u00e1pida aulinha: &#8220;MT \u00e9 um publishing tool, que gera paginas estaticas &#8211; ao contrario de outros CMS em PHP\/MySQL, que geram a p\u00e1gina dinamicamente no instante do acesso, voc\u00ea \u00e9 obrigado a regerar as pages \u00edndice sempre que publicar algo. A solu\u00e7\u00e3o completa passaria por um script que seria executado todo dia automaticamente (via cron jobs, por exemplo), fazendo a gera\u00e7\u00e3o da p\u00e1gina somente com os posts at\u00e9 o dia atual&#8221;.<\/p>\n<p>Traduzindo: o sistema n\u00e3o pode agendar posts, pois seria necess\u00e1rio algu\u00e9m (ou um programa) para &#8220;clicar no publicar&#8221; todo dia.<\/p>\n<p>Mas nem tudo est\u00e1 perdido: &#8220;existe um script em PHP que pode ser a solu\u00e7\u00e3o para o que voc\u00ea deseja&#8221;, completou F\u00e1bio, indicando <a href=\"http:\/\/www.scriptygoddess.com\/archives\/001243.php\" target=\"_blank\"><b>este endere\u00e7o<\/b><\/a>. Trata-se de um comandinho em PHP, que ap\u00f3s instalado, faz com que o blog mostre apenas os posts publicados a partir da hora atual. Ou seja: se mudarmos a data do post, ele n\u00e3o aparece at\u00e9 o hor\u00e1rio previsto!<\/p>\n<p>A vers\u00e3o do comando PHP publicada no site \u00e9 a seguinte:<\/p>\n<p><tt><b>&lt;MTEntries&gt;<\/p>\n<p><font color=\"#CC0000\"><tt>&lt;?<\/p>\n<p>if (time() &gt; strtotime (&quot;&lt;$MTEntryDate format=&quot;%B %e, %Y %I:%M%p&quot;$&gt;&quot;))<\/p>\n<p>{<\/p>\n<p>?&gt;<\/tt><\/font><\/p>\n<p>&lt;!--- a seguir entram as tags normais do MT. Antes do &quot;\/MTEntries&quot;, adicione a pr&oacute;xima linha: --&gt;<\/p>\n<p><font color=\"#CC0000\"><tt>&lt;? } ?&gt;<\/tt><\/font><\/p>\n<p>&lt;\/MTEntries&gt;<\/b><\/tt><\/p>\n<p>Depois de mergulhar fundo na linguagem PHP, percebi que, na pr\u00e1tica, o comando acima faz uma compara\u00e7\u00e3o entre a data e hora atual e a do post. Descobri ainda que a fun\u00e7\u00e3o <b>strtotime<\/b> reconhece apenas datas em ingl\u00eas. Ou seja, dependendo do formato de data, a coisa n\u00e3o funcionaria bem no MMM. Assim sendo, fiz uma &#8220;altera\u00e7\u00e3o est\u00fapida, por\u00e9m funcional&#8221;:<\/p>\n<p><tt><b>&lt;MTEntries&gt;<\/p>\n<p><font color=\"#CC0000\"><tt>&lt;?<\/p>\n<p>$hoje = date(&quot;Y-m-d H:i&quot;);<br \/>$post = &quot;&lt;$MTEntryDate format=&quot;%Y-%d-%e %H:%M&quot;$&gt;&quot;; <br \/>if ($hoje &gt; $post)<\/p>\n<p>{<\/p>\n<p>?&gt;<\/tt><\/font><\/p>\n<p>&lt;!--- a seguir entram as tags normais do MT. Antes do &quot;\/MTEntries&quot;, adicione a pr&oacute;xima linha: --&gt;<\/p>\n<p><font color=\"#CC0000\"><tt>&lt;? } ?&gt;<\/tt><\/font><\/p>\n<p>&lt;\/MTEntries&gt;<\/b><\/tt><\/p>\n<p>Em tese, parece funcionar perfeitamente por aqui. Com exce\u00e7\u00e3o de alguns dados importantes: &#8220;tenha em mente que o fonte da p\u00e1gina conter\u00e1 todos os posts para o futuro, por\u00e9m apenas aqueles at\u00e9 a data atual s\u00e3o mostrados no browser pela interfer\u00eancia do PHP. Outra falha da solu\u00e7\u00e3o \u00e9 o aparecimento desses posts do futuro na lista de resultados, caso algu\u00e9m fa\u00e7a uma procura no blog com palavras que os mesmos contenham&#8221;. Realmente, quem fez isso por aqui quebrou a cara&#8230;<\/p>\n<p>A id\u00e9ia certamente vai ser aperfei\u00e7oada para o ano que vem, quando provavelmente existir\u00e3o plug-ins preparados para tal. Ou, de repente, simplesmente esque\u00e7o esta facilidade e ignoro solenemente a exist\u00eancia do blog nas f\u00e9rias.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Acredito que, nas \u00faltimas semanas, muitos internautas ficaram curiosos para saber como \u00e9 poss\u00edvel &#8220;agendar posts no blog&#8221;, prevendo situa\u00e7\u00f5es como a que eu estou passando agora: um longo per\u00edodo de inatividade. Particularmente, essa d\u00favida pintou pela primeira vez na minha cabe\u00e7a em abril do ano passado, assim que migrei para a tecnologia Movable Type [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-1279","post","type-post","status-publish","format-standard","hentry","category-faca-fazendo"],"_links":{"self":[{"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/posts\/1279","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/comments?post=1279"}],"version-history":[{"count":0,"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/posts\/1279\/revisions"}],"wp:attachment":[{"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/media?parent=1279"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/categories?post=1279"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/marmota.org\/blog\/wp-json\/wp\/v2\/tags?post=1279"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}