Preciso me livrar de muitas marcações desnecessárias em uma exibição. Em geral, eu faço isso substituindo os arquivos de modelo no meu tema, mas desta vez a exibição é realmente enorme e o desempenho está diminuindo. Então, eu me perguntava, se há uma maneira mais eficiente de reduzir a marcação? Ao alterar a marcação de um nó, as funções de pré-processamento são mais rápidas que a substituição de arquivos de modelo, existe um mecanismo analógico para visualizações?
Edit 1: Claro, o motivo do fraco desempenho não é a substituição dos arquivos de modelo em primeiro lugar, mas se eu puder otimizar um pouco lá, terei que fazer isso. Além disso, costumo ter problemas desativando a marcação na própria interface do usuário das visualizações: desativar os estilos de linha, por exemplo, é ignorado quando uso um subtema Omega …
Edição 2: conheço as possibilidades dentro da interface do usuário do Views ; O que estou procurando é uma maneira manual com controle preciso.
Respostas:
Você pode eliminar a marcação desnecessária através da interface do usuário do Views.
Quando você adiciona um campo, oculto em Configurações de estilo, eles sempre têm essa marca de seleção desnecessária padrão
Além disso, você pode remover mais marcações aqui
e aqui
fonte
Às vezes, é mais eficiente com o modo de exibição exibir conteúdo em vez de campos. Isso é melhor aproveitado com os modos de exibição personalizados, onde você configura o modo de exibição para mostrar os campos que deseja. Você pode fazer a exibição desse modo de exibição o que quiser através de modelos e formatadores. Isso tende a funcionar bem quando você tem o Entitycache .
Dito isto, todos os sistemas são diferentes. O verdadeiro perfil é realmente a melhor maneira de descobrir o que está demorando. Pessoalmente, não acho que a marcação de visualizações esteja adicionando tempo significativo à execução.
fonte
Parece que você está sendo incentivado a otimizar prematuramente. Se a exibição estiver com problemas de desempenho, verifique se o cache está ativado na exibição para evitar renderizar o HTML do zero o máximo possível. Isso fornecerá um impulso muito maior ao desempenho do que quase qualquer redução no número de arquivos envolvidos no processo de renderização.
Depois que o registro do tema é criado, com muitos modelos substituídos, não deve haver um impacto perceptível no desempenho ao usar os padrões, pois o Drupal ainda está carregando um número semelhante de arquivos (vi uma exceção a isso se você criar um arquivo para todos os possíveis substituir toda a cadeia, então não faça isso).
Se você alternar para uma exibição entidade em vez de uma exibição do campo que você pode ser capaz de reduzir o número de modelos carregados e, portanto, obter uma menor melhoria na prestação de velocidade. Isso pressupõe que a exibição da entidade também tome medidas para evitar modelos no nível do campo e / ou provavelmente já esteja armazenada em cache em outro lugar. Provavelmente, isso exigiria muito trabalho humano caro, para pouquíssimas melhorias no desempenho da máquina.
fonte