Jump to content


Photo

Inclusão No Fasttemplate


  • Faça o login para participar
5 replies to this topic

#1 Clenisson

Clenisson

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 22/12/2004, 13:38

pessoal, como eu fãço para "incluir" uma pagina no fas template?
por exemplo, tenho numa pagina o TOPO, que quero usar em todas.. pra nao ter que ficar alterando em todas sempre que modificar algo, como eu faço (no prorio arquivo do layout)?

#2 iceccold

iceccold

    12 Horas

  • Usuários
  • 131 posts
  • Sexo:Não informado
  • Localidade:Lisboa
  • Interesses:Informática<br>Webdesign<br>AccessVBA<br>Reciclagem ;-)<br>

Posted 22/12/2004, 13:51

vc tem que usar o include

ficaria do género

pagina.php

<? include "topo.php" ?>
<html>
......


Espero ter ajudado
José Lopes

#3 Clenisson

Clenisson

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 22/12/2004, 13:54

não, cara..
o include eu sei usar, mas nesse caso, o codigo php está separado do template...
então, teria que ser algo que incluisse no template(que esta em html)...
to procurando por aqui, mas se alguem souber, me ajuda!!

#4 iceccold

iceccold

    12 Horas

  • Usuários
  • 131 posts
  • Sexo:Não informado
  • Localidade:Lisboa
  • Interesses:Informática<br>Webdesign<br>AccessVBA<br>Reciclagem ;-)<br>

Posted 22/12/2004, 14:01

não entendi... o que vc está tentando fazer..mas vai ver que vai arranjar quem lhe explique isso logo! aqui sempre gente com vontade de ajudar

Boa sorte
José Lopes

#5 dokkalfr

dokkalfr

    Ich bin der Geist der stets verneint

  • Usuários
  • 203 posts
  • Sexo:Não informado
  • Localidade:Svartheim
  • Interesses:Programação e sexo

Posted 22/12/2004, 14:19

Algumas ferramentas de FastTemplate tem comandos pra isso, se a que tu estás usando não tem tu pode fazer 3 coisas:
1) implementar;
2) trocar de ferramenta (SmartTemplate é uma legal, ou o Smarty que é um FastTemplate com PhD);
3) Se teu TOPO é puro HTML (nenhuma informação dinâmica) to pode fazer uma variável chamada {TOPO} e no código PHP tu lê o arquivo HTML e joga o conteúdo dele no template.

Quem mexe mais com FastTemplate deve ter soluções melhores, esses são meus 2cents de ajuda!!
Ainda com dúvida? Os melhores programadores PHP estão aqui
=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Blog PHPClube
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bookmarks

#6 Heero Maxwell

Heero Maxwell

    Heavy Metal is The Law!

  • Usuários
  • 235 posts
  • Sexo:Não informado
  • Localidade:Curitiba

Posted 22/12/2004, 15:44

Eu utilizo o Fasttemplate 1.8 e faço assim:

- Todas as minhas páginas em php tem um include para o arquivo topo.php

<? //===============================================
// Cria uma nova instância de objeto para a classe
//===============================================

$template->define(array("paginatopo"=>"$template_pagina"));
$template->define_dynamic("topo","paginatopo");

//===============================================
// Geral
//===============================================

$show_all = "SELECT * FROM configuracoes";
$result = mysql_query ($show_all) or die ( mysql_error ());
while ($row = mysql_fetch_array ($result))
{

$nome_do_site = $row["nome_do_site"];
$boas_vindas = $row["boas_vindas"];
$menu = $row["menu"];
$menu_admin = $row["menu_admin"];
$slogan_principal = $row["slogan_principal"];
$style = $row["style"];
$direitos = $row["direitos"];

    $template->assign('nome_do_site', $nome_do_site);
    $template->assign('boas_vindas', $boas_vindas);
	$template->assign('slogan_principal', $slogan_principal);
	$template->assign('menu', $menu );
	$template->assign('menu_admin', $menu_admin );
	$template->assign('style', $style );
	$template->assign('direitos', $direitos );
$template->parse('TOPO','.topo');
       }
//===============================================
// Logos
//===============================================

$template->define_dynamic("logo","paginatopo");
$show_all = "SELECT * FROM logos ORDER BY rand() LIMIT 1";
$result = mysql_query ($show_all) or die ( mysql_error ());
while ($row = mysql_fetch_array ($result))
{

$logo = $row["logo"];

    $template->assign('logo', $logo);
    $template->parse('LOGO','.logo');
}
?>
Tu pode modificar como quiser. O que ele faz é o seguinte: Cria o template do modo {logo} por exemplo e o {logo} pode ser utilizado em qualquer página.

O que tu tem que fazer é coloca o include para no caso a página topo.php antes de fechar o fasttemplate assim:


//===============================================
// Outros includes
//===============================================

include ("../../includes/topo.php");
include ("../../contador/contador.php");

//===============================================
// Conclusão da classe Fast Template
//===============================================

$template->parse("SAIDA",'pagina');
$template->FastPrint("SAIDA");
?>
Se você colocar depois do parse e fastprint o template não irá funcionar. Lembre-se que onde tem paginatopo deverá ser diferente de todas os outros phps que utilizam o template, não poderá nunca existir dois paginatopo.
$template->define(array("paginatopo"=>"$template_pagina"));
$template->define_dynamic("topo","paginatopo");

Outra coisa, para o template poder ser carregado em qualquer página apenas com esse include, coloque no lugar aonde ficaria o local do .html ou .tpl do template como uma variável que irá puxar o nome do template de acordo com a página que estiver abrindo no caso o $templete_pagina
$template_pagina = "../../templates/admin/configuracoes/menu.html";

Da uma pensada nisso que eu fiz porque é simples, um pouco trabalhoso mas bem eficiente porque só precisa de 1 arquivo para todas as páginas que irão ter ele.

Ps. Estou indo viajar hoje a noite então não poderei responder a qualquer dúvidade tua até meados de Janeiro ou um pouco mais. Mas com isso da para entender bem.
Todos aqueles que me virem vão morrer. Estas foram as ordens que recebi. Todos aqueles que no campo de batalha estiverem estão com suas vidas em minhas mãos. Eu sou Heero Maxwell, o "Deus da Morte" em pessoa.
Todos aqueles que me virem vão morrer. Estas foram as ordens que recebi.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq