Gerenciar e publicar css e JS de sites tridion 9.5 e usá-los no aplicativo web java dxa 2.2

Dec 16 2020

Cheguei a um cenário em que css e js não são manipulados por meio de html-build.zip,

Em vez disso, precisamos armazenar css e js no cm e publicá-los em publicações.

também preciso usar os arquivos css e js em jsps no aplicativo da web.

alguém poderia me sugerir como isso pode ser alcançado.

Respostas

3 paceaux Dec 16 2020 at 18:57

Eu usei o Tridion para publicar CSS e JavaScript muitas vezes no passado.

Lembre-se de que cada implementação é diferente . O que eu fiz pode não funcionar com o que você fez.

Componente de código + modelo de página

A abordagem mais comum é um "Componente de código", que é um esquema Tridion com um único campo de texto simples definido para 20 - 30 linhas. CSS e JavaScript são literalmente copiados e colados no campo. Um template de componente escrito em Razor Mediator for Tridion (ou DWT) renderiza o campo único e a saída é um arquivo .css ou .js.

Em uma implementação, adicionamos metadados a nossos esquemas de código para nos permitir alternar entre ofuscação e minimização. Isso exigiu que adicionássemos TBBs .net que poderiam, é claro, executar essas tarefas.

Criaríamos modelos de página CSS e JS cujo único trabalho era renderizar o único campo de nossos componentes de código. Essencialmente, isso funcionou ao concatenar CSS ou JS em um único arquivo .css ou .js.

Usei essa abordagem no Tridion R5.1 - 2011. É uma abordagem antiga que não vi em implementações modernas; funcionou quando estávamos publicando páginas JSP ou HTML do Tridion em um servidor de arquivos.

Desvantagens:

  • Não funciona muito bem quando você não está publicando arquivos estáticos
  • Risco de erros de transcrição ao copiar e colar (sim, realmente)
  • resultados estranhos se CSS / JS não for bem escrito; esse modelo de página permite definir a ordem dos componentes do código e, se o código for mal escrito, alguns estilos ou blocos JS podem substituir outros ou não funcionar se uma coisa depender de outra

Positivo:

  • Fácil de implementar
  • "Codifique como conteúdo". Algumas organizações têm processos rígidos de controle de mudanças e tratar o código como conteúdo significa que podem contornar esses processos.

CSS / JS como binários

Esta é apenas uma visão geral do exemplo anterior, mas a ideia aqui é adicionar tipos mime .css e .js ao Tridion e permitir que sejam carregados como binários. Isso evita a dor de erros de transcrição de copiar e colar.

A publicação é então simplificada à medida que você publica ativos diretamente do Tridion.

Desvantagens

  • Ainda é um cenário de "código como conteúdo", embora o risco de erros de transcrição seja simplificado.
  • renomear um binário é problemático. Isso poderia fazer com que o servidor excluísse manualmente o arquivo .css (ou acontecia na minha época). Isso também pode resultar em um site corrompido.

Posições

  • Fácil de implementar
  • menos probabilidade de ter erros de cópia do que a outra opção

Eu fiz esses dois cenários. Também tive um caso em que criamos um TBB especial para executar um pré-processador CSS no Tridion , para que pudéssemos ter SASS / SCSS no CMS.

Existem fortes desvantagens para essas abordagens. Mais importante, você gostaria de ter certeza de que pode realmente definir certos modelos de página para publicar como arquivos estáticos e não ir para o corretor (para ser tratado como conteúdo real).

Na abordagem "CSS / JS como binários", eles serão tratados como imagens, vídeos e PDFs. Você pode não querer isso.

NeeteshNarvaria Jan 11 2021 at 11:54

Eu manipulei as instruções grunhidas no componente zip do arquivo de compilação e coloquei todos os css e js e imagens estáticas no componente zip do html-design, também criei um grupo de estrutura conforme exigido pelo modelo "Publicar design HTML", como sou capaz de publicar css e js como conteúdo binário dxa sem tocar em nenhum modelo ou alteração no lado do aplicativo da web.