Arquivo da tag: drupal

HTML5: Adeus time, datetime e pubdate

Foi percorrido um longo e árduo caminho para a especificação do HTML5. As atitudes enérgicas do WHATWG foi para adicionar ao The living HTLM Standard a remoção da tag time para adicionar a tag data. Vamos entender toda esta historia.

Foi percorrido um longo e árduo caminho para a especificação do HTML5. As atitudes enérgicas do WHATWG foi para adicionar ao “The living HTLM Standard” a remoção da tag para edicionar a tag < data >. Vamos entender toda esta historia.

A tag < time > foi adicionada para permitir que a data e hora fossem lidas pela máquina, através do atributo datatime. Sem gerar muitos problemas de acessibilidade. O atributo pubdate indica a data da publicação de um artigo, podendo ser convertido de HTML para Atom que por ventura com esta nova mudança implementada pelo HTML5 também foi removido.

O < time > tem sido um dos elementos de mais fácil compreensão para os autores, pois ele é muito obvio semanticamente.

Representação do elemento < time > em HTML5:

<time class="dtstart" datetime="2011-10-05T09:00Z">9am on October 5</time>

Microformats valor de classe padrão:

<span class="dtstart"><abbr class="value" title="09:00">9am</abbr> on <abbr class="value" title="2011-10-05">October 5</abbr></span>

O < time > tem sido muito utilizado para inserir datas em publicações de artigos em weblogs, utilizando WordPress e Drupal.

Algumas questões sobre a utilização do < time >. Para alguns autores o time não atendia as necessidades das postagens mais antigas, e não existia “ utlima atualização” um atributo que seria equivalente ao pubdate. Um outro problema é que existem outras tags menos comuns que fazem praticamente a mesma coisa. Foi adicionado um elemento genérico para este caso de uso o elemento < data > que atua com a necessidade de uma value de atributo. O elemento de dados representa o seu conteúdo, juntamente com a forma de ser inteligível a máquina, no valor de atributo.

O atributo value contém o mesmo conteúdo do elemento ao nível de maquina. O < data > pode ser utilizado como um equivalente ao elemento dedata-* para a marcação de dados privados dos scripts. Também pode ser utilizado como um conjunto de vocabulário de microdados, tendo em vista que o formato do atributo value é especificado pelo vocabulário.

Esta adição nos mostra um maneira mais fácil para realizar a duplicação dos microformats. No entanto boa parte da introdução do < data >, < time > junto com o datetime e pubdate foram retiradas.

Enquanto a tag < time > é semanticamente obvia, o < data > é visto como algo equivalente a < div > ou < span >. Portanto não é suficiente para justificar a presença no spec, apesar de seus grandes benefícios. Um outro motivo para o desânimo é que muitas pessoas tiveram problemas em utilizar o HTML5.

O que há de errado com este retrato

Listamos os cinco tipos de semântica no código HTML, ordenando do mais significativo para o menos significativo.

  • organismos de normalização: elementos e atributos;
  • comunidades: vocabulários e microdados, formatos POSH;
  • senso comum: ID funcional e nomes de classes;
  • nomes genéricos;
  • ofuscando, nomes aleatórios ou de apresentação.

Datatimes especificados possuem vários efeitos, por uma lado é um pouco mais complexo a sua utilização. Vamos comparar estes dois exemplos de utilização do < time > e < data >

Usando < time >

<article>
...
<footer>Published <time pubdate datetime="2011-11-03">today</time>.</footer>
</article>

Usando o < data >

<article itemscope itemtype="http://schema.org/BlogPosting">
...
<footer>Published <data itemprop="datePublished" value="2011-11-03">today</data>.</footer>
</article>

Isto significa que se você utilizar o < data > para substituir a < time > o Google entenderá da seguinte maneira:

<data itemprop="datePublished" value="2011-11-03">today</data>

é interpretado como

datePublished = today

.

Não

datePublished = 2011-11-03

Prós & Contras

Os browsers de forma geral estão a favor desta mudança, mas muitos autores são contra ela. Temos algumas opções sugeridas:

1 – < data > permite que o value gere atributo em qualquer elemento.

2 – Adicionar um type como atributo ao < data > afim de torna-lá mais semântica.

3 – Trazer de volta a < time >

Permitir o value em qualquer elemento

Isso gera conflito com os microdados, onde alguns valores e elementos são os URLs ao invés do seu conteúdo. Por exemplo:

<img itemprop="photo" src="http://oli.jp/photo.jpg">

dá a saída da ‘photo’

= http://oli.jp/photo.jpg.

Adicionando value significa que existiriam dois machine-readable, por isso teriam que saber quais elementos não poderiam ser aceitos.

Adicionar um type utilizando < data >

O HTML5 tem que especificar cada type de valor, apesar de não estar trabalhando com tantos para os implementadores como um novo tipo de dado. Se o type é necessário também limita a < data > aos tios que são definidos

Trazer de volta a < time >

A forma amis fácil de tornar todos felizes é manter a < time > além de adicionar < data >. Porem os contras para isso são muito grandes pois são duas formas muito semelhantes, mas nem sempre intercambiáveis. Por exemplo se tivéssemos a necessidade de marcar a data de publicação de um artigo e a data de atualização usando a sintaxe diferente. Casos especiais e exceções tornam as coisas um pouco mais difíceis de serem ensinadas e aprendidas.

Conclusão

Trazer a < time > de volta é realmente um problema altamente espinhoso, o Whatwg está tentando buscar o equilíbrio em uma questão bastante delicada. Retirar o < time > é um grande problema em aspectos mercadológicos pois muita coisa irá mudar como por exemplo parâmetros e métodos de atualizações em blogs e sites.

Traduzido de: html5doctor.com

Fonte: Gregory Laborde/OficinadaNet

WordPress, Drupal ou Joomla: qual a melhor solução para o seu projeto?

Com tantas opções de CMS’s disponíveis hoje em dia, com funcionalidades e finalidades diferentes, não faz muito sentido dizer qual deles é o melhor, mas sim qual deles atende melhor as suas necessidades. E, para chegarmos a essa resposta, nada melhor do que uma boa análise das opções que temos disponíveis.

Para começar a brincadeira, trago aqui um pequeno comparativo entre as principais opções livres em CMS’s, baseado em algumas informações do infográfico feito pela DeviousMedia, além de um bate-papo com três especialistas nessas soluções.

WordPress, joomla ou drupal?

Um breve histórico de WordPress, Drupal e Joomla

O mais velho entre os três sistemas é o Drupal, que foi criado pelo programador Dries Buytaert e lançado em 15 de janeiro de 2001. O nome Drupal vem da palavra holandesa “druppel”, que significa “gota”, e atualmente está na sua versão número 7, com uma frequência média de uma atualização a cada 36 dias, desde a sua versão 4.3, lançada em novembro de 2003, num total de 77 atualizações. Aproximadamente 1,6% dos sites da web usam o Drupal, entre eles o The Economist, The White House, MTV, London.gov.uk e The Onion.

Já o WordPress foi criado por Matt Mullenweg a partir do sistema B2/Cafelog, e teve seu lançamento em 27 de maio de 2003. O que começou como um simples sistema para blogs, hoje já na sua versão 3, está consolidado como um CMS bem completo, com uma frequência média de uma atualização a cada 17,8 dias, num total de 164 atualizações. Hoje ele é usado por aproximadamente 14,3% dos sites da web, entre eles o MTV Newsroom, The Ford Story, entre outros. Uma curiosidade é que, desde a sua versão 1.0, a maioria das versões do WordPress leva o nome de um cantor de jazz, como Coltrane ou Gershwin.

Por fim, temos o Joomla, criado a partir do CMS Mambo e lançado em 16 de setembro de 2005. Mantendo uma grande comunidade em vários países e línguas, o Joomla possui 6 versões lançadas, com uma frequência média de uma atualização a cada 49 dias na sua versão 1.5, e uma atualização a cada 25 dias na sua versão 1.6. São 27 atualizações (incluindo versões Beta) entre essas duas versões. Aproximadamente 2,7% dos sites da web usam o Joomla, entre eles estão sites como o Linux.com e o IHOP.

Ambos os sistemas são escritos em PHP, além de serem projetos de código aberto, distribuídos sob a GNU General Public License.

Plugins e Templates

Em praticamente todos os CMS’s, podemos acrescentar novas funcionalidades através de plugins ou módulos, que podem estender o uso do sistema para diversas finalidades. Nesse sentido, o WordPress leva vantagem, tendo os desenvolvedores um número de aproximadamente 14.629 opções disponíveis. No Drupal, esse número é de aproximadamente 8.039, enquanto o Joomla possui uma média de 8.000.

Para quem possui um projeto mais modesto, e pretende abrir mão de uma identidade visual personalizada, usando um modelo de site com funcionalidades definidas e layout pronto, são muitas as opções de templates disponíveis para os diferentes CMS’s. Considerando apenas os templates gratuitos disponíveis nos sites oficiais, temos uma marca de 1415 templates para WordPress e 878 templates para Drupal. No site oficial do Joomla, não constam informações referentes a templates.

Otimização para os mecanismos de busca

Elemento obrigatório na concepção de qualquer projeto web, as técnicas de SEO são hoje uma exigência de praticamente todos os clientes, até daqueles que não têm nem ideia do que isso venha a ser. Mesmo que hoje os principais influenciadores para a definição do posicionamento das páginas nos resultados de busca estejam relacionados à qualidade do conteúdo e à popularidade dos sites, podemos dizer que os primeiros passos para um bom SEO começam na estrutura do código HTML.

Por seguirem bem as práticas recomendadas pela W3C para o desenvolvimento web, ambos os sistemas possuem uma estrutura de código apropriada para o SEO. Contudo, o WordPress ainda leva uma pequena vantagem, por possuir uma estrutura um pouco mais semântica.

Ambos os sistemas possuem boas extensões para SEO, que buscam aprimorar a qualidade de elementos como títulos, sitemaps e URLs. Entre as extensões disponíveis, podemos destacar o WordPress SEO para WordPress, o Pathauto para Drupal, e as extensões AceSEF e sh404SEF para Joomla.

Tecnicamente falando

O WordPress, que ganhou popularidade como uma plataforma para blogs, vem se mostrando a cada dia como um dos CMS’s mais completos que existem. Para Leo Germani do Hacklab, o WordPress foi a ferramenta com a qual ele conseguiu obter os melhores resultados com maior eficiência. “No final de 2006 resolvi adotar um CMS para trabalhar, e experimentei as principais opções. O que me atraiu no WordPress desde o início foi sua simplicidade. Enquanto outros CMS’s demandavam uma curva aprendizado maior, o WordPress se mostrava direto e fácil, tanto do ponto de vista do usuário quanto do ponto de vista do desenvolvedor”, afirma Leo.

Nadir Alves da Bule Comunicação, que já trabalhou com CMS’s como o Plone e o WordPress, afirma que o Joomla possui um grande poder de customização de templates e uma curva de aprendizado muito leve. “As opções de expansão do Joomla sempre foram muito grandes, atualmente existem mais de 8.000 extensões no diretório oficial. Somando isso ao sistema de permissões de usuários e à facilidade de criar websites rápidos e completamente diferentes um do outro, o Joomla tornou-se uma escolha excelente e recomendada aos nossos clientes”.

Já o Drupal é considerando o mais complexo entre as três opções. Mas para Alex Piaz, que trabalha no Instituto Socioambiental (ISA), apesar de a curva de aprendizado do Drupal ser maior em relação aos seus similares, uma vez que você “pega o jeito” tudo fica muito claro, e o desenvolvimento passa a fluir sem maiores dificuldades. “Trabalho com o Drupal desde meados de 2006, pela facilidade de customização e construção de módulos, instalação multisite out of the box, localização e tradução com gettext totalmente desacoplados do core, comunidade atuante e extensa documentação. Tudo isso permite criar websites complexos com muito menos esforço de programação”, conclui Piaz.

As vantagens de cada CMS

Uma das maiores vantagens do WordPress é, sem dúvida, a sua facilidade. Leo Germani considera que esse CMS possui simplicidade e eficiência em todos os sentidos. “Do ponto de vista do usuário, temos um painel administrativo simples, bonito e fácil de usar. Do ponto de vista do desenvolvedor, temos uma arquitetura de templates muito fácil de entender e explorar, uma arquitetura de plugins muito eficiente, e uma estrutura de banco de dados muito simples e poderosa. Além disso, possui uma comunidade imensa e um desenvolvimento consistente, que se mantém firme aos seus princípios: manter o core simples e enxuto, deixando qualquer coisa mais específica para plugins e templates“.

Nadir acredita que a atual expansão e acesso ao Joomla para os novos desenvolvedores pode ser uma grande vantagem sobre os outros CMS’s. “Outra vantagem está no novo gerenciamento de usuários e permissões, que foi a funcionalidade mais esperada para a nova versão, e que agora (versão 1.7) está bem madura e extensível. Nesta nova versão, o sistema multilíngue nativo permite criação e administração de conteúdo para diversos idiomas de forma muito fácil para o cliente”.

Outras vantagens do Joomla levantadas são relativas aos templates e extensões. “A facilidade na criação de templates possibilita que, através de poucas linhas de HTML, seja criado praticamente qualquer tipo de layout em pouco tempo. Outro ponto muito importante são as extensões, que melhoraram muito desde a nova versão, integrando-se bem às novas funcionalidades do core do Joomla, e que possuem uma variedade de funções dificilmente alcançada por outros CMS’s”, conclui Nadir.

Para Piaz, estão nos módulos as maiores vantagens do Drupal. “A quantidade de módulos disponíveis é absurdamente grande, além de o roadmap ser muito claro quanto aos releases. Isso nos dá uma visão de longo prazo (cerca de 3 anos) sobre o caminho a seguir”.

Ainda sobre os módulos, o quesito “compatibilidade” é um dos pontos fortes do Drupal. “Temos praticamente 100% de garantia de que todos os módulos são compatíveis com a versão instalada, ou seja, um módulo feito para a série 6.x irá rodar sem problemas no Drupal 6.1, 6.2 e assim por diante. Um outro ponto importante é que o Drupal sempre oferece um upgrade path a cada nova versão lançada (6.x para 7.x, por exemplo). Assim, a nova versão só é declarada stable quando o upgrade path é disponibilizado”, afirma Piaz.

Para quais projetos cada CMS é indicado?

Muita gente considera que o WordPress é um sistema indicado apenas para a produção de blogs. Leo Germani considera que não há dúvidas de que o WordPress seja realmente a melhor plataforma para essa finalidade, mas que além disso ele é uma ótima solução para sites institucionais ou portais de notícias. “Se você tem um site que é 90% editorial, mas que necessita de funcionalidades como área restrita ou importação de conteúdos externos, o WordPress também é ideal, pois a sua arquitetura de temas e plugin facilita muito para que possamos usá-lo como uma espécie de framework, podendo desenvolver muita coisa sobre ele”.

Quanto ao Joomla, Nadir acredita que ele seja ideal para projetos que vão desde sites de pequeno porte até grandes portais. “Existem projetos específicos para Intranet muito facilitados pelo novo ACL nesta nova versão, e já vimos também uma excelente integração do CMS com o Magento. A gama de possibilidades é muito grande, inclusive diversos sites do governo que requerem muita segurança e estabilidade, hoje utilizam o Joomla“.

Piaz também considera que o Drupal é uma ferramenta ideal para sites e aplicativos web de todos os tipos e tamanhos. “O código do Drupal é bem estruturado, e permite um alto grau de customização sem que seja preciso alterar seu núcleo. Sua robustez pode ser atestada pela quantidade de websites de alto tráfego rodando Drupal“.

Conclusão

Ambos os CMS’s possuem pontos fracos e fortes. Muitos profissionais procuram optar pela ferramenta mais fácil, como é o caso do WordPress, o que pode ser bom em determinado projetos, mas deixar a desejar em outros. Considerando também a questão financeira, profissionais que trabalham com ferramentas mais complexas como o Drupal acabam por ser mais raros, e por isso mais caros.

A verdade é que muitas vezes o uso de um CMS acaba sendo condicionado pela identificação e pelo conhecimento prévio que os desenvolvedores têm na ferramenta. Mas o ideal é que, mesmo que você tenha preferência por um determinado CMS, ainda assim procure conhecer as possibilidades de outros sistemas.

Acredite, saber escolher a ferramenta ideal para cada tipo de projeto pode fazer a diferença.

Fonte: Edu Agni/IMaster