2008/6/11 André Domarques <[EMAIL PROTECTED]>: > Opa Rodrigo, > > primeiramente, obrigado pela resposta!
Por nada, depois escreve sobre isso em algum lugar e manda aqui pro povo mais webdesigner da lista ;) > Concordo contigo que customizar o visual do plone via ZMI é um caos a > parte :(, especialmente deste projeto que estou trabalhando. Uma vez um gestor de projeto falou o seguinte: "A dor purifica!" ... se servir de consolo =D > Nesta solução em particular, em ambos os temas eu utilizo o > DIYPloneStyle, como em todos os meus projetos. O tutorial que você se > refere no plone.org é o do DIYPloneStyle? Porque eu praticamente já ví > tudo sobre temas na documentação oficial do Plone, rsrsrsrs. Boa zero meia =D > Eu fiquei curioso na solução que você propôs a seguir, mas confesso > que ainda não visualizei como implementá-la: Steps: 1- Tema1 (com template zope_pt.pt) 2- Tema2 (com template zope_pt.pt) 3- Em uma pasta vc vai no menu exibição e pode escolher um template correto? Este menu monta a seguinte URL (no caso de visão sumária): selectViewTemplate?templateid=folder_summary_view vc pode usar isto pra setar o zope_pt ao invés do folder_summary_view (esqueça o uso de index_html, acabamos de exterminar alguns de uns 3 projeto, são pessimos!). Ex.: selectViewTemplate?templateid=zope_pt E em casa tema o zope_pt deve existir, se no tema principal ele nao tem personalizacao alguma , otimo, uma linha chamando o main_template resolve ;) Vc tbm pode fazer isso programaticamente usando o setLayout(), na instalação do produto por exemplo. E ainda tem uma maneira de colocar mais opções ali naquele menu, para que o próprio usuário faça esta escolha. Mais estou correndo aqui em pleno valentines day, e não vou poder pesquisar isto. >> Com vários temas, você pode usar o recurso de setar um tema através de >> uma access rule (script python com "super poderes"). E neste caso, os >> arquivos ficam completamente separados, vc tem independencia de temas >> e consegue fazer com que um nao afete os outros, e vice-versa. >> >> Para setar o teu template para se tornar a exibicao padrao de uma >> canal (contexto/pasta), vc pode user o setLayout, na instalacao do teu >> produto/tema vc instancia o objeto portal >> (portal_url.getPortalObject()) e dispara o metodo, ex.: >> >> portal.setLayout("pagina_inicial") >> >> onde, pagina_inicial eh o teu template, que em file system seria o >> pagina_inicial.pt ... >> > > Quanto a setar uma exibição padrão para uma pasta em particular, a uns > tempos atrás eu tinha feito algo semelhante, mas será que isso não vai > comprometer também a visão no outro template, no caso o do admin? Então, o q da questão aqui é o seguinte, a tua escolha de template (visão sumária por exemplo) fica gravada no objeto, e independente do tema, quando encontrada a propriedade layout no objeto, o template será procurado. Solução, ter com o template nos 2 temas, um personalizando conforme suas necessidades, e o outro, chamando o main_template normalmente, sem preencher nenhum slot. Melhor agora? > Só para se ter idéia, tem uma parte do site que o bloco central de > conteúdo (colunas laterais e área de conteúdo) é completamente > substituida por um flash que ocupa todo o espaço. Outra parte do site, > o layout interno é totalmente customizado. > > Com a tua dica acima, acho que resolve, contanto que as páginas só > sejam modificadas com o template do front-end. > > Brigadão! Nada! > Ps.: Se eu conseguir implementar com a dica acima, eu posto aqui para > que outras pessoas possam utilizá-la tbm. Promessa eh dívida hein? Abraços > --- Em zope-pt@yahoogrupos.com.br, "Rodrigo Castardo" > <[EMAIL PROTECTED]> escreveu >> >> André deixa eu sugerir uma solução ... >> >> Primeiro, não faça personalização de templates e afins via ZMI (custom >> ou afins), use um tema para isto. No Plone.org tem um tutorial >> passo-a-passo, que inclusive mandei na lista algum tempo atras (nao >> posso procurar para vc agora), que vai tornar td mto facil. >> >> Dica: DIYPloneStyle >> >> Com vários temas, você pode usar o recurso de setar um tema através de >> uma access rule (script python com "super poderes"). E neste caso, os >> arquivos ficam completamente separados, vc tem independencia de temas >> e consegue fazer com que um nao afete os outros, e vice-versa. >> >> Para setar o teu template para se tornar a exibicao padrao de uma >> canal (contexto/pasta), vc pode user o setLayout, na instalacao do teu >> produto/tema vc instancia o objeto portal >> (portal_url.getPortalObject()) e dispara o metodo, ex.: >> >> portal.setLayout("pagina_inicial") >> >> onde, pagina_inicial eh o teu template, que em file system seria o >> pagina_inicial.pt ... >> >> Se quiser fazer pela PMI, pode usar o menu exibicao e trocar o nome do >> template que ele usa na url para o pagina_inicial por exemplo. Nao me >> recordo agora, e de cabeca, como registrar seu template como uma opcao >> ali ... >> >> Tem esta saida que te sugeri, considero ela a mais elegante para > este cenário. >> >> Abraços >> >> >> >> 2008/6/11 André Domarques <[EMAIL PROTECTED]>: >> > Olá pessoal! >> > >> > Estou necessitando definir algumas page templates como padrão em >> > diretórios específicos. Uso o plone 2.5 e estou trabalhando num site >> > altamente complexo quanto ao seu layout e estou tendo dificuldades em >> > trabalhar algumas questões, que comento a seguir: >> > >> > Para piorar/melhorar a minha situação, estou utilizando a técnica de >> > definir skins específicos pela URL através do Zope (visto na >> > documentação oficial do plone). I.e. www.site.com.br/admin (skin de >> > back-end - admin) e www.site.com.br/ (skin do front-end - > customizado). >> > >> > Uma vez que a skin de "front-end" está bastante customizado (o que >> > inviabilizou a gerência do portal através deste skin), defini uma skin >> > para garantir a gerência do conteúdo através da skin padrão do plone. >> > O problema é que em alguns diretórios, eu tive que inserir um page >> > template (main_template) para que pudesse ter um layout interno >> > (contéudo) diferenciado. Com isso, o main_template modifica não >> > apenas o "front-end", mas também o back-end (skin default do plone) e >> > não permite o acesso a gerência dos objetos de conteúdo de tal > diretório. >> > >> > Alguns diretórios eu consegui mudar o visual através da própria tag de >> > modificação de classes (css) constante no <body> do main_template >> > (geral), mas isso não me satisfaz totalmente, uma vez que o site é >> > bastante complexo quanto a modificação da disposição dos elementos >> > visuais no portal, ou seja, em algumas partes do site, o template é >> > totalmente customizado, tanto no css quanto no xhtml. >> > >> > Ví numa apresentação do plone 3 (da webcouturier, sobre visual no p3) >> > que há a possibilidade de definir um page template de acordo com a >> > seção que está sendo acessada, através da tag template-${template/id} >> > a ser inserida no <body> mas isso não funciona no plone 2.5 e não >> > estou conseguindo visualizar uma maneira de converter isso pro > plone 2.5. >> > >> > Neste grupo, encontrei uma solução de definir a utilização de um >> > template a um diretório específico através de um script python, mas >> > essa solução também modifica no back-end :( Será que há uma solução >> > para, na utilização do back-end, os main-templates específicos de cada >> > diretório não serem carregados nesta skin em particular, mas apenas na >> > skin do front-end? >> > >> > >> >> >> >> -- >> Castardo >> ThreePointsWeb >> [EMAIL PROTECTED] >> +55 61 8162-2072 >> > > -- Castardo ThreePointsWeb [EMAIL PROTECTED] +55 61 8162-2072