ti-enxame.com

Como você estende a categoria de conteúdo

Posso criar substituições ou layouts alternativos no template/html/component/mas como posso estender a consulta com base em parâmetros no meu novo layout? Como posso estender o modelo sem quebrar o núcleo?

1
poproar

Será um pouco mais aprofundado o necessário para que as pessoas possam ler isso e entender o que você quer dizer com substituições, se tiverem um problema semelhante.

No seu modelo, você deve ter uma pasta HTML

Para criar uma nova exibição para um componente (este é o mesmo princípio para módulos, usarei COM_CONTENT neste exemplo)

  • Crie uma pasta chamada com_content
  • Crie uma pasta para a exibição que você deseja modificar. Você pode ver a lista de visualizações acessando (root)/components/com_content/views

Nesse caso, digamos que queremos criar uma substituição para artigo, arquivo e categoria - Copie o conteúdo (arquivos de exibição php) de (raiz)/components/com_content/views/(view)/tmpl no (template)/html/com_content/(views) - Você NÃO precisa da pasta tmpl - os arquivos php são a única coisa que você precisa copiar para substituir uma view

Portanto, nossa estrutura de pastas do modelo será

enter image description here

Tenho certeza que você sabe, mas isso, mas apenas para esclarecer

default.php seria o arquivo de modelo principal

default_items.php seria um bloco do modelo default.php, provavelmente uma exibição separada, como uma grade

Bem feito! Agora você tem uma substituição que pode alterar sem se preocupar com uma atualização, e adiciona qualquer novo código que desejar. No entanto, você ainda pode ter que fazer pequenas alterações no view.html.php, que geralmente é o que gera as variáveis.

Essa, no entanto, é fácil, mas as visualizações são simples, mas para fazer uma alteração no modelo ou no controlador, você precisa da ajuda de um plug-in de terceiros.

Em vez de copiar/colar literalmente, vou apenas vincular você ao pequeno artigo que deve ajudá-lo

http://docs.joomla.org/How_to_override_the_component_mvc_from_the_Joomla!_core

2
MOLEDesign