Quarta, 07 Novembro 2012 11:43

Template Substituições (Override) uma magica do Seblod parte 1

Escrito por 
Avalie este item
(2 votos)
Template Substituições (Override) uma magica do Seblod parte 1 - 5.0 out of 5 based on 2 votes

Substituições de template no SEBLOD nos dar o poder de personalizar a exibição dos tipos de conteúdo e os nossos campos de uma forma poderosa e flexível.

Tenho certeza que você é uma pessoa curiosa, e eu tenho ainda mais certeza que você já deu uma olhada na pasta do template 'Seb One', viu uma pasta chamada 'posições' e outra chamada 'variações' e perguntou o que na terra eles fazem? sim? 
Bom! Para começar, existem dois métodos para posições imperativas - e posteriormente campos - dentro do seu template. Isto é conseguido por meio de uma substituição de posição, ou uma variação de posição. A diferença é bastante simples: Uma variação de posição é uma variação no estilo para qualquer posição. Ele não é específica para uma única posição, pode ser aplicada a quaisquer cargos / todas está disponível globalmente como uma substituição em todas as posições de todos os conteúdos e tipos de pesquisa em seu site. A posição OVERRIDE, porém, é muito específica para um tipo de conteúdo ou de pesquisa única, não pode ser utilizada fora desse âmbito, e é, portanto, não disponível globalmente.

:oh: Como posso criar uma variação?


Variações são simples de fazer, o que é a beleza deles. Se você examinar o Seb diretório template One, você verá uma pasta chamada 'positions'. Dentro dessa pasta você pode colocar arquivos em PHP como você gosta, nomeando-os whatever_name.php como você desejar usar. É o conteúdo do arquivo que é importante, não o nome, mas tenha em mente whatever_name que você usou acima, será o título que você vai ver em seus menus de variação em cada posição no backend. Vamos tomar um cenário muito simples: eu quero ter uma variação que leva o conteúdo de uma posição, envolve-lo em um
e coloca um Google Adsense adicionado imediatamente após essa posição. Vou começar nomeando meu arquivo my_adsense.php e vou colocá-lo nas variações seb_one / / diretório. Eu, então, abro esse arquivo e coloco o seguinte código nele:

Código:
<?php 
// No Direct Access
defined( '_JEXEC' ) or die;
?>

<div class="SomeClassName">
   <?php echo $content; ?>
   <!-- AdSense Javascript Here -->
</div>



Sim, é muito simples. $Content é uma variável disponível dentro de todos os arquivos de variação, e que ela faz é retornar todos os campos prestados na posição em que você aplicou essa variação. No nosso caso, simplesmente envolto todo o conteúdo que, em uma div, acrescentou o nosso código do AdSense (é claro que você iria substituir o meu comentário com o seu código) e isso é tudo que precisávamos fazer. Agora você deve estar se perguntando "Mas se eu quisesse apenas tornar um único campo nesta posição?" Essa é uma pergunta muito válida. Sem entrar em muitos detalhes sobre as API de renderização de campo e métodos (ver Templating 101 - Métodos de renderização de campo) que poderia render um único campo, usando o exemplo acima novamente, veja:

Código:
<?php 
// No Direct Access
defined( '_JEXEC' ) or die;
?>

<div class="SomeClassName">
   <?php echo $cck->renderField('field_name'); ?>
   <!-- AdSense Javascript Here -->
</div>



Onde field_name é o nome do campo que você deseja processar. Pode, claro, processar qualquer campo(s) você atribui a posição que você está aplicando essa variação.

:oh: Às vezes, você pode querer tornar 5 campos em uma posição que contém cerca de 20 campos. Criando uma variação para atingir isso, pode ser um método eficaz como pode ser re-utilizado se assim desejar. Também pode haver momentos em que você deseja estilizar apenas um campo específico(s) de uma certa maneira, mais uma vez usando à variação é uma abordagem viável para isso.

Por hoje é isso, até o próximo. 

Lido 8439 vezes Última modificação em Quarta, 07 Novembro 2012 22:20
Uriel


Assine nosso canal no Youtube > Uriel Souza

 

 

 

 

 

Website.: cckjoomla.org

Deixe um comentário

Você precisa escrever no minimo 5 palavras!


Anti-spam: complete the task

1 Comentário