Personal tools

Skip to content. | Skip to navigation

Sections

Blog

You are here: Home Blog

Blog

Entendendo a expiração/publicação de objetos no Plone

Posted by Thiago Tamosauskas at 14/12/2012 13:31

O Plone possui um recurso poderoso para agendar a publicação e despublicação de um conteúdo. Essa funcionalidade se usada com inteligência pode ser muito interessante, mas pode também causar certa confusão numa primeira abordagem.  Para deixar as coisas mais claras Kees Hink publicou em seu blog um resumo simples mas valioso sobre o assunto:

  • Quando um item chegar à sua data de expiração ele será marcado como "expirado" em vermelho.
  • Um item cuja data de publicação ainda não tenha chegado não será marcado de forma nenhuma.
  • Em ambos os casos, o item permanece "despublicado" mas não confunda isso com seu estado de workflow.
  • Um item "despublicado" apenas não aparecerá nas listagens e buscas.
  • Essas listagens e buscas incluem as listagens da pastas e coleções
  • Contudo o dono do item de conteúdo ainda poderá vê-lo. Isso é útil porque as pessoas gostam de ver o conteúdo que criaram para seu site.
  • A permissão que controla esse acesso é "Access inactive portal content."
  • Itens expirados quando podem ser vistos em uma pasta serão devidamente marcados.
  • Não há uma maneira rápida de ver itens em uma pasta que ainda não foram publicados.
  • Quando você define um item despublicado como exibição padrão de uma pasta ele aparecerá para todos.
  • Despublicar um item não afeta os usuários administradores. Eles sempre verão os itens não publicados em suas listas e buscas.
  • Dar aos usuários normais permissão de "adicionar", "editar" e "revisar" em um item não faz esse item menos "despublicado" para eles.
  • Uma maneira prática de permitir que usuários não administradores acessem um item despublicado é acessá-lo usando a URL direta do objeto.
| Comentários

Plone 4.3 fará as pazes com os designers

Posted by Thiago Tamosauskas at 26/10/2012 11:50
Filed under: Diazo, Plone, Temas
Plone 4.3 fará as pazes com os designers

Um dos treinamentos mais legais que faço hoje em dia é sobre a criação de temas em Diazo. Embora sejam divertidos esses treinamentos mostram que o processo de criação de layouts para Plone ainda não é simples o suficiente para que todo e qualquer designer possa participar sem uma instrução prévia específica. felizmente estes dias parecem estar no fim, e muito em breve o Plone será um dos CMS mais amigável entre todos para a criação de temas.

A comunidade Plone colaborou recentemente com o Diazo Work Group de Los Angeles, da Universidade da California para dar um salto evolutivo em termos de  interface de design. O resultado é um editor fácil de ser usado que roda no próprio Plone e será acompanhado de ferramentas para criação avançada de temas e testes.

Tudo isso já estará disponível a partir do Plone 4.3. A idéia principal é que o usuário possa fazer upload de uma página estática com HTML e CSS e então por meio da ferramenta gerar automaticamente o XML com as regras do Diazo. Em outras palavras importar temas se tornará algo bem mais simples.

O resultado desses esforços é tornar a customização de layouts algo bem mais fácil e agradável dentro do Plone. Desta forma as portas do Plone estarão em breve  escancaradas para que novos designers (não-desenvolvedores) possam colaborar e criar seus temas sem precisar acessar o filesytem, rodar buildouts ou programar em python para implementarem seus temas. 

 

| Comentários

Collectice.cover pega pra capa

Posted by Thiago Tamosauskas at 15/10/2012 10:00
Filed under: Produtos, Plone

O Plone é uma excelente ferramenta de gestão de conteúdo, não é surpresa portanto que seja escolhido para portais de notícias e sites com grande produção de informação. Entretanto sites deste porte exigem sempre a edição de uma ou mais capas editoriais, seja na página inicial ou em subseções. Uma maneira de organizar e apresentar todo conteúdo produzido. O Plone já possuiu alguns produtos específicos para isso mas eles sempre apresentaram barreiras ou serem complexos demais ou por não serem flexíveis o bastante. Com o lançamento do collective.cover esses obstáculos foram finalmente superados.

O collective.cover nasceu graças a um esforço conjunto da Comunidade Plone da América do Sul durante o primeiro "Cafecito Sprint"  e foi criado tendo foco em portais de notícias, sites governamentais e intranets mas de uma maneira que fosse flexível o bastante para ser usado sem nenhuma dificuldade por sites menores. 

Toda edição é feita por meio de páginas simples e interfaces drag-and-drop. Em primeiro lugar você cria sua capa ("cover") escolhendo entre um dos layouts pré-definidos ou criando um novo do zero. Depois disso você seleciona "screenlets" que nada mais são do que maneiras diversas de apresentar um conteúdo. Um screenlet pode ser uma coleção de itens, um destaque único ou mesmo um carrossel de slides, entre outras opções. Um detalhe importante é que uma vez construído esse layout ele pode ser salvo para ser usado em outros lugares no seu mesmo Plone site.

Com seu layout pronto você agora só precisa se preocupar com a gestão do conteúdo propriamente dita, ou seja, selecionar as notícias ou páginas arrastando elas para seus respectivos screenlets. Este é um ponto importante porque significa que a diagramação foi separada com perfeição da edição de conteúdo de maneira que durante o dia a dia ao mudar os destaques de uma página o usuário do site não precisará preocupar-se com detalhes técnicos desnecessários.  

Apesar de ser um produto novo o Collective.cover já foi muito bem recebido pela Comunidade Plone internacional e, foi apresentato por André Nogueira e Hector Velarde da Simples Consultoria recentemente na Plone Conference e já está em uso em alguns sites como o da VTV -  TV Estatal da Venezuela . Se você se interessou em conhecer ou mesmo colaborar com este produto acesse o repositório: https://github.com/collective/collective.cover

| Comentários

Plone e JQuery ao gosto do Cliente

Posted by Thiago Tamosauskas at 05/10/2011 15:50

Dando sequência a série de posts sobre as palestras ministradas durante a PythonBrasil [7], apresentamos agora os slides da apresentação "Plone e JQuery ao gosto do Cliente" executada pelos simplificadores @cleberjsantos e @Tamosauskas

Na oportunidade foram mostrados alguns exemplos práticos de como aprimorar a interface de sites em Plone usando alguns recursos de jQuery. Em especial são mostradas maneiras de integrar os métodos e atributos dos objetos do Zope em seus scripts jQuery.

 

| Comentários

Plone é finalista do Open Source Awards 2011 - Deixe seu voto!

Posted by Thiago Tamosauskas at 26/09/2011 12:58
Plone é finalista do Open Source Awards 2011 - Deixe seu voto!

Mais uma vez o Plone chega aos finalistas da premiação Open Source Awards promovida pela Packt Publishing na categoria Open Source CMS. O Plone também está concorrendo nas seguintes novas  subcategorias:

  • Best Open Source CMS for performance (Melhor performance de CMS Open Source)
  • Best CMS for Best Community:  (Melhor Comunidade de CSM Open Source)
  • Best CMS for Ease of Use: (CMS Open Source Mais Fácil de Usar)


Os votos podem ser feitos até dia 31 de Outubro, logo antes do início da Plone Conference  em São Francisco. Mas se você faz parte da comunidade Plone, deixe seu voto agora para não correr o risco de esquecer.

Plone já ganhou prêmios neste concurso em 2008 e 2009. As  subcategorias devem ser votadas separadamente da categoria principal. Veja abaixo como proceder:

  1. Clique aqui e vote no Plone na categoria CMS.
  2. Clique aqui e adicione o Plone nas subcategorias Performance, Community e Ease of Use, respectivamente Performance, Comunidade e Facilidade de Uso.


Dica: Coloque "N/A” e “http://example.com” na categoria .NET se você não tiver nenhum favorito em mente.

A Comunidade Plone Agradece.

| Comentários

Regras do Diazo: questão de ordem

Posted by Thiago Tamosauskas at 26/09/2011 11:55
Regras do Diazo: questão de ordem

Ao desenhar as regras do seu tema feito em diazo para o Plone, pode ser bastante útil entender um pouco melhor como o compilador do Diazo trabalhará. Entre várias coisas importantes temos a  ordem exata na qual o diazo lerá as regras.

Independente de qual regra aparecer primeiro no seu arquivo xml, o diazo sempre levará em consideração a seguinte hierarquia:

1º lugar: <before css:theme="" /> (mas não theme-children)

2º lugar: <drop />

3º lugar: <replace css:theme="" /> (mas não theme-children)

4º lugar: <strip />.

5º lugar: Regras que usam attributes.

6º lugar: <before />, <replace /> e <after /> usando "theme-children" 

7º e último lugar: <after  css:theme="" /> (mas não theme-children).

Esta ordem explica porque não adianta usar uma regra <replace> se em qualquer lugar do xml você aplicar uma regra <drop> ou uma regra <replace> no mesmo elemento. Assim, se uma as mudanças  insistirem em não aparecer no seu tema, vale a pena dar uma revisada na sua ordem de execução.

| Comentários

Como adicionar Eventos do Plone no Google Calendar

Posted by Thiago Tamosauskas at 19/08/2011 12:35
Filed under: Google, Plone, ZPT
Como adicionar Eventos do Plone no Google Calendar

O 'Evento' e um tipo padrão do Plone que, entre outros recursos, possui alguns links (iCal e vCal) que permitem adicionar o evento do seu site ao calendário de aplicativos como o Mozilla Sunbird, Microsoft Outlook e similares... Este é um recurso maravilhoso, que nunca vi ninguém usar o_O .

Por outro lado todos os meus heróis que não morreram de overdose usam hoje o Google Calendar para organizar seu dia a dia. Pensando nisso imaginei uma maneira de termos um link nos eventos do Plone que adicione ele as agendas do Google Calendar.

Você vai precisar:

1 - Um script python para formatar a data, que chamaremos, Dataformat.py:

from DateTime import DateTime
if not dt:
 dt = DateTime()

if not format:
 format = "%Y%m%dT%H%M00"

if not same_type(dt, DateTime()):
 dt = DateTime(dt)

print dt.strftime(format)
return printed

Este script é necessário para formatar as datas iniciais e finais do evento no formato usado pelo Google Calendar

2 - Colocar a seguinte expressão em Zope Page Template no seu template event_view.pt

<a href="#" title="Add to Google Calendar" target="_blank" 
            tal:define="atDate here/start;
                        inicio python: context.Dataformata(atDate);
                        fim python: context.Dataformata(atDate)"
            tal:attributes="href string:http://www.google.com/calendar/render?
action=TEMPLATE&text=${context/Title}&dates=${inicio}/${fim}&location=
${context/getLocation}&details=Detalhes:${context/absolute_url}&trp=false">
    Google Calendar
</a>

Seguindo os passos acima você terá um link que incluirá o evento em questão a sua agenda do Google Calendar. Veja um exemplo no site de um de nossos clientes: http://www.proparts.esp.br/events/copa-sram-1a-etapa-sram-50k/view

| Comentários

Como criar um tema para Plone usando o Diazo

Posted by Thiago Tamosauskas at 26/07/2011 18:20

Diazo é uma nova forma de implementar layouts que o Plone está usando e que tem tudo para se tornar a maneira oficial para se desenvolver temas daqui para frente. Basicamente, ele permite que você aplique um tema de uma página com CSS e HTML estático e transformar em um site dinâmico com o mínimo de constrangimento. 

Existem várias vantagens nesta abordagem, entre elas:

  • Abrir a porta para que mais e novos designers possam trabalhar com o Plone.
  • Você pode usar um wireframe HTML criado por um webdesigner que nem conhece o Plone
  • Seu tema passa pode ser facilmente reaproveitado em outros CMS e vice versa.
  • É possível redesenhar uma interface do usuário sem sequer ter acesso ao código fonte da aplicação
  • Você pode implementar temas em um tempo muito mais reduzido.
  • O tema original permanece intocado facilitando a reutilização e manutenção.
  • Há ainda um ganho de performance pois recursos estáticos como imagens, css e javascripts são fornecidos sem passar pelo Plone

Meu primeiro tema


A maneira mais rápida de usar o Diazo é instalar o produto plone.app.theming, com ele você ganha uma nova opção nas configurações do site e então tudo o que precisará fazer é subir um arquivo zipado contendo o seu tema.  Vamos criar um tema bem simples para um fácil e rápido entendimento inicial:

Crie um diretório /meutema e coloque nele o arquivo tema.html:

<html>
    <head>
        <title>Meu Diazo Feliz</title>
        <link rel="stylesheet" href="estilos.css" />
    </head>
    <body>
        <h1 id="title">Meu tema para Diazo</h1>
        <div id="content">
            Lorem ipsum
        </div>
    </body>
</html>


Coloque também nesta pasta o arquivo estilos.css:

body {
    background: #fff repeat-x;
    color: #000;
    font-family: Arial, Helvetica, sans-serif;
}

#content {width: 960px; margin: 0 auto;}


Crie então um arquivo chamado rules.xml:

<rules
    xmlns="http://namespaces.plone.org/diazo"
    xmlns:css="http://namespaces.plone.org/diazo/css"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

   <theme href="tema.html" />

   <replace css:theme="#content" css:content="#portal-column-content" />
   <drop css:content="#plone-document-byline" />

</rules>


Por fim crie um arquivo zip desta pasta e suba pelo painel de configurações do Diazo em @@theming-controlpanel

Seu mini-tema deve então estar disponível em seu site.

As regras do jogo


É no arquivo rule.xml que a mágica acontece. Este arquivo contêm as regras que unem o Plone e o tema, substituindo com o espaço do html estático com o conteúdo de verdade. Vamos entender nosso exemplo simples:

<rules>  Aqui são definidos três namespaces que fazem o Diazo funcionar. Graças a eles o Diazo permite o uso de seletores completos de CSS3 e XPath, incluindo coisas como o pseudo seletor nth-child.

<theme> Dá a referencia para o arquivo de html estático que será usado no tema.

<drop> Usado para apagar elementos do tema ou do conteúdo. No nosso exemplo estamos eliminando a tag plone-document-byline e tudo o que há dentro dela.

<replace> Uma das mais usadas na implementação de um tema. Isso porque, como o nome já diz, ela substitui um conteúdo estático por um conteúdo dinâmico que você indicar. No nosso exemplo o Diazo colocará todo o #portal-column-content do Plone dentro da tag #content definida em nosso tema estático.


Existem ainda outras tags que podem ser usadas como <before>, <after>, <strip>. <copy>, <notheme> e <merge>. Para  um conhecimento mais aprofundado consulte a documentação do Diazo ou aguarde futuros posts aqui no nosso blog.

Perigos do Diazo


É necessário destacar que o Diazo facilitará bastante o desenvolvimento de temas no futuro, mas ele também abre a possibilidade de estragarmos o Plone no processo (Como fizemos neste tutorial). O Plone possui uma história de preocupação com a experiência de uso e possui uma interface poderosa que agora pode ser destruída com poucas linhas. Entre outras coisas o uso indiscriminado do Diazo pode significar:

  • Perda das validações de código
  • Perda de usabilidade
  • Perda de portabilidade
  • Perda de acessibilidade
  • Perda na otimização para buscas
  • Possível incompatibilidade com alguns produtos


Sendo assim é necessário mais do que nunca implementar um tema preocupando-se em manter estas e muitas outras vantagens nativas do Plone. Isso significa atenção aos detalhes, auto-crítica e constante acompanhamento do código gerado pelo Plone. Pode ser uma tarefa trabalhosa, mas o resultado é compensador.

| Comentários

World Plone Day São Paulo, foco no conteúdo

Posted by Thiago Tamosauskas at 28/04/2011 12:55
Filed under: Plone, World Plone Day

Confira como foram as palestras e atividades da Simples Consultoria durante o World Plone Day de São Paulo em 2011

World Plone Day São Paulo, foco no conteúdo | Comentários

Read More…

Top 10 Perguntas sobre o Plone

Posted by Thiago Tamosauskas at 17/03/2011 10:25
Filed under: CMS, Plone

Quanto custa o Plone?


Plone é um Software Open Source distribuída via GNU - General Public Licence (GPL) e é gratuito para fazer download, usar, personalizar e compartilhar. Sem custos de licença, os usuários do Plone usam seus recursos na personalização do sofware para suas necessidades específicas, criação de conteúdo, identidade visual e manutenção. Mesmo após o abatimento dos custos com uma consultoria, os custos totais da implementação de uma solução Plone será em geral significativamente menor do que uma solução proprietária como Sharepoint ou Vignette, que carregam os custos de licenciamento. Para organizações que não possuem uma equipe de desenvolvedores Plone, a assistência profissional e o suporte comercial estão disponíveis em mais de 300 consultorias ao redor do mundo. No Brasil a Simples Consultoria se propõe a cumprir este papel.

Como eu posso editar/criar conteúdo usando Plone?


Usuários podem editar e criar conteúdo em seus sites Plone de qualquer computador usando apenas seus navegadores. Basta entrarem com seus usuários no site para editar as páginas existentes, criar novas seções, remover conteúdo antigo, ou fazer upload de novos vídeos e fazer isso usando apenas um editor similar ao Microsoft Word.

Que bancos de dados o Plone integra?


O Plone vem com um banco de dados orientado a objeto confiável, seguro, fácil de administrar, conhecido como ZODB (Zope Object Database). Além dele, o Plone pode se comunicar facilmente com Active Directory, LDAP, Salesforce.com, bancos de dado SQL entre outros. Um produto gratuito do Plone chamado RelStorage também permite usar Oracle, MySQL e POstgreSQL para armazenar dados integrando seu site Plone com sua infraestrutura existente de modo a poder utilizar ferramentas familiares, clustering e failover.

 

O Plone é amigável com os mecanismos de buscas?


Enfaticamente sim. O Plone automaticamente encoraja utilização das melhores práticas de otimização para mecanismos de buscas, como URLs ricas em palavras chaves, descrições amigáveis e sitemaps adequados. Muitos sites mudam para o Plone imediatamente percebem um salto no rankeamento dos mecanismos de busca, e na qualidade e relevância dos resultados.  Como exemplo plone.org é um dos poucos websites no mundo que possuem Rangerank 9 de 10 segundo a classificação do Google, a mesma nota de sites significativos como IBM e Microsoft.

O Plone possui suporte multi-liguagem?


O Plone está traduzido em mais de 40 idiomas. Seu conteúdo pode ser gerenciado em mas de um idioma usando LinguaPlone, um produto gratuito. LinguaPlone provê aos criadores de conteúdo uma conveniente interface para adicionar conteúdos em diversos idiomas sem a necessidade de duplicar a estrutura do site.

O Plone possui suporte a visitantes com deficiência?


Plone cumpre e excede os padrões de acessibilidade estabelecidos pela W3C na WAI-AA e pelo Governo dos Estados Unidos no padrão 508. Organizações com obrigações legais quanto a acessibilidade frequentemente escolhem o Plone justamente por esta razão.

O Plone possui suporte a versionamento?


O Plone possui a característica de permitir aos usuários mapear mudanças e sucessivas versões de um documento escrito. Plone provê um histórico detalhado do documento que permite usuários comparar versões e reverter o conteúdo para uma versão anterior.

Quão escalável é o Plone?


O Plone é apropriado para sites pequenos e para os muito grandes. O Plone possui um poderoso sistema de cacheamento que permite configurar o site para otimizar ainda mais sua performance. Além disso os administradores de sites em Plone frequentemente usam aceleradores web como Squid e Varnish para incrementar a velocidade do site. Graças ao uso do Zope, Plone possui nativamente capacidades para clustering que permite ao website dividir a carga entre múltiplos servidores para gerenciar tráfegos intensos.

Quão seguro é o Plone?


O Plone oferece segurança superior sem sacrificar seu poder e extensibilidade. Como um produto OpenSource, um grande número de desenvolvedores continuamente revê seu código para melhorar seus aspectos de segurança. Esta abordagem pró-ativa é muito melhor do que a estratégia de esperar para ver o que acontece usada por soluções proprietárias que optam por manter os assuntos de segurança em segredo ao invés de resolvê-los prontamente.

Feito em Python e Zope, duas plataformas altamente seguras, o Plone possui tecnologia de ponta que permite obter os melhores níveis de segurança de todos os grandes CMS (Fonte:CVE). Por ser orientado a objetos, Plone não é vulnerável a ataques de SQL injection, que é um dos problemas de segurança mais comuns que afetam sistemas baseados em PHP/MySQL. O Sitema de ACL do Plone para permissionamento de usuários também garante que usuários apenas verão o conteúdo que deveriam ver. De fato, segurança é uma das principais razões do porque tantos usuários estarem mudando para o Plone.

Como o Plone se compara com Sharepoint, Drupal, Afresco e Joomla?


Plone é um verdadeiro CMS baseado em web com workflow (fluxo de trabalho) de publicação e recursos de gerenciamento de documentos, ao contrário de sistemas como Sharepoint ou Afresco que são primariamente  sistemas de gerenciamento de documentos com funcionalidades web limitadas.  Isso torna o Plone ideal para intranets, extranets ou websites. Plone pode ser personalizado para atender necessidades específicas de qualquer organização em termos de tamanho estrutural, tipos de conteúdo, regras de workflow, etc. Nem todo CMS oferece este mesmo nível de flexibilidade.  Por ser feito sobre o Python e o Zope , o Plone é muito seguro, razão essa que faz muitos usuários trocarem Joomla e Drupal pelo Plone.

Plone é 100% Open Source (código-aberto), pacotes lançados de versões estáveis podem ser baixadas gratuitamente. Não há necessidade de comprar licenças por servidor ou usuário para obter suporte comercial como acontece com Alfresco e Sharepoint, e a direção do futuro do projeto não está 'travada' em uma única empresa.

Este artigo é uma tradução e aprimoramento de texto em folheto distribuido pela Jazkarta e Abstract Edge, e originalmente escrito pela Netsight Solutions Ltd licenciado em Creative Commons.

| Comentários

Vaga de Estágio em Web Design

Posted by Thiago Tamosauskas at 20/07/2010 17:25

Simples Consultoria, empresa de desenvolvimento de soluções de tecnologia da informação busca um profissional para preencher perfil de estagiário.

 Excelente oportunidade para aprender muito sobre CSS e Plone:

Conhecimentos desejados:

 

 

- Noções de XHTML

- Noções de CSS

- Noções de Photoshop

- Disposição para aprender

 

Atributos da vaga:

 

 

- Carga horária diária: 6h

- Tipo de contrato: Estágio

- Inicio imediato

- Local: Perdizes, São Paulo

 

- Bolsa de R$ 510,00

- Vale Transporte

- Vale Refeição

 

Interessados devem enviar o currículo por e-mail para vagas@simplesconsultoria.com.br, mencionando no assunto: Estágio

.

| Comentários
Document Actions
Spinner