Jump to content
Fórum Script Brasil
  • 0

Smarty


Eric Freitas
 Share

Question

Como muitos devem saber smarty é uma das ferramentas para gerar templates do site..

bom eu gostaria de saber +o- como funciona.. estou tentando instalar mas não intendi muito ainda dessa "maravilhosa" ferramenta.. lol... Se alguém pudesse me ensinar a trabalhar com ela seria muito legal! Obrigado

Link to comment
Share on other sites

18 answers to this question

Recommended Posts

  • 0
ola. Realmente é uma biblioteca bem interessante.

Você pode ver a documentação no próprio site do projeto (http://smarty.php.net) e achar tutoriais no google...

qualquer dúvida posta ai

eu queria instalar pra eu poder tentar me achar no meio dela, já que sou "NB" ainda..

mas eu num sei instalar.. meu servidor roda em windoes mesmo (testes).. sabe dizer como eu instalo?

eu tentei seguir o tutorial do próprio site como você já falou.. mas num intendi muito...

Link to comment
Share on other sites

  • 0

A "instalação" (na verdade não é uma instalação, é apenas uma organização de arquivos e diretórios) não tem segredo: na documentação do Smarty mesmo há um tutorial bem explicado. Um dos capítulos mostra como criar uma classe extendida, que define as configurações iniciais para o funcionamento do Smarty. Acho essa uma ótima solução.

O que você tem que fazer é definir o include_path adequadamente. Depois não tem segredo não. :)

Abraços,

Beraldo

Link to comment
Share on other sites

  • 0
A "instalação" (na verdade não é uma instalação, é apenas uma organização de arquivos e diretórios) não tem segredo: na documentação do Smarty mesmo há um tutorial bem explicado. Um dos capítulos mostra como criar uma classe extendida, que define as configurações iniciais para o funcionamento do Smarty. Acho essa uma ótima solução.

O que você tem que fazer é definir o include_path adequadamente. Depois não tem segredo não. :)

Abraços,

Beraldo

beleza Beraldo vou dar mais uma olhada.. e pode ter certeza que qualquer coisa eu venho ak torrar o saco e a paciência de v6. +D

Seguinte, to seguindo o tutorial e etc.. abri o php.ini mas não sei aonde devo adicionar o diretório(include_path = ...) onde está localizado meu smarty, posso setar em qualquer lugar ou existe um lugar específico para

Link to comment
Share on other sites

  • 0

Localize a linha include_path, utilizando CTRL + F (Localizar / Pesquisar) e altere o valor dela.

Também é possível alterar o valor dessa diretiva pela função ini_set():

ini_set("include_path", ini_get("include_path") . PATH_SEPARATOR . getcwd() . DIRECTORY_SEPARATOR . "smarty");

Abraços,

Beraldo

Link to comment
Share on other sites

  • 0

O diretório de templates fica no diretório público, sim. Veja o esquema de diretórios presente no próprio Manual:

/web/www.example.com/smarty/guestbook/templates/

/web/www.example.com/smarty/guestbook/templates_c/

/web/www.example.com/smarty/guestbook/configs/

/web/www.example.com/smarty/guestbook/cache/

/web/www.example.com/docs/guestbook/index.php

Fonte: http://smarty.php.net/manual/pt_BR/install...marty.basic.php

Não uso MSN. Entro, mais do que raramente, somente nos fins de semana.

Link to comment
Share on other sites

  • 0
O diretório de templates fica no diretório público, sim. Veja o esquema de diretórios presente no próprio Manual:

/web/www.example.com/smarty/guestbook/templates/

/web/www.example.com/smarty/guestbook/templates_c/

/web/www.example.com/smarty/guestbook/configs/

/web/www.example.com/smarty/guestbook/cache/

/web/www.example.com/docs/guestbook/index.php

Fonte: http://smarty.php.net/manual/pt_BR/install...marty.basic.php

Não uso MSN. Entro, mais do que raramente, somente nos fins de semana.

correto, então que nos falemos por aqui mesmo, agora tenho vindo todos os dias postar dúvidas etc..

mas mudando um pouco...

Você utiliza o smarty?

Acha que vale a pena útiliza-lo para sistemas via internet ou até mesmo locais?

Link to comment
Share on other sites

  • 0
Eu uso o Smarty sim. Acho-o muito útil, mas ainda tenho muito a aprender sobre ele. :)

Com certeza é bom usá-lo, pois facilita a escrita dos códigos, tanto HTML como PHP.

Abraços,

Beraldo

hum.. bom. acho que ta instalado, mas nem imagino porque ta dando aquele erro. já tentei de várias maneiras e formas..

para eu especificar o caminho de um template eu devo escrever

// load Smarty library
require('Smarty.class.php');

$smarty = new Smarty;

$smarty->template_dir = 'localhost/smarty/templates/';
$smarty->compile_dir = 'localhost/smarty/templates_c/';
$smarty->config_dir = 'localhost/smarty/config/';
$smarty->cache_dir = 'localhost/smarty/cache/';

dentro de index.php que seria a página a ser rxibida, o endereço dos templates quem diz sou eu certo como fiz ali correto? já tentei com http:// antes do localhost etc..

mas num vai... aaaaaa to ficando louco com isso e mal a demora pra responder estava almoçando..

¬¬´ o diretório do win... c:/etcetcetc/template funcionou...

agora dalhe ler pra aprender... o olá fish boy apareceu... lol...

Link to comment
Share on other sites

  • 0

Reveja o Manual:

Exemplo 2-9. Editando /web/www.example.com/docs/guestbook/index.php

<?php

// load Smarty library
require_once(SMARTY_DIR . 'Smarty.class.php');

$smarty = new Smarty();

$smarty->template_dir = '/web/www.example.com/smarty/guestbook/templates/';
$smarty->compile_dir = '/web/www.example.com/smarty/guestbook/templates_c/';
$smarty->config_dir = '/web/www.example.com/smarty/guestbook/configs/';
$smarty->cache_dir = '/web/www.example.com/smarty/guestbook/cache/';

$smarty->assign('name','Ned');

$smarty->display('index.tpl');
?>

Nota Técnica: No nosso exemplo, nós estamos definindo caminhos absolutor para todos os diretórios do Smarty. Se /web/www.example.com/smarty/guestbook/ estiver dentro do seu include_path do PHP, então estas definições não são necessárias. Entretando, é mais eficinte e (com experiência) causa menos erros definir como caminhos absolutos. Isto faz ter certeza que o Smarty esta lendo os arquivos dos diretórios que você quer.

Fonte: http://smarty.php.net/manual/pt_BR/install...marty.basic.php

Tanto o caminho absoluto quanto o relativo (usando-se include_path) não têm nada a ver com URL. Esqueça localhost, use o caminho dos diretórios.

Link to comment
Share on other sites

  • 0

beleza, consegui fazer ele funcionar.. pensei que se eu colocasse o end do server. ele iria funcionar, então coloque c:/etc.. efuncionou.. agora to com uma dúvida.. esse smarty funciona como?

por exemplo

template pra mim é como se fosse um eskeleto.. onde eu chamo o topo, o menu e o conteudo.. sendo o conteúdo variavel

por exemplo.. tenho uma página com a tabela 3x2 sendo 1x1+1=topo 2x1=menu 2x2=conteudo 3x1+1=rodape entende o que eu digo?

então queria saber se tem como eu fazer assim deixar sempre o menu o topo e o rodapé pra alguns conteúdos..

bom por hoje eu não volto mais de tarde.. somente depois da minha aula posso dar uma olhada aqui. chego umas 9hrs em casa.. tenho prova graças a deus.. to morrendo de cansaço... bom Brigadão

Link to comment
Share on other sites

  • 0

A maneira de dividir a página vai da preferência de cada um.

Eu cotumo criar o topo numa página, o cabeçalho em outra, o menu em outra e assim por diante. Depois vou incluindo esses temnplates um a um. Se integrar isso a uma classe, fica bem interessante, podendo criar skins diferentes para seu site, bastando alterar o nome da skin na classe.

Abraços,

Beraldo

Link to comment
Share on other sites

  • 0

é que tipo oque eu realmente queria fazer é...

ler todos os arquivos dentro de uma pasta e gerar um array contendo todos com .php no final

algo mais o menos assim

ler pastaX

gerar array tipo cadastro => cadastro.php, login =>login.php, secaoXYZ => secaoxyz.php

para fazer da página index o meu esqueleto, e na parte de conteúdo coloco só o include do conteúdo pedido pela query entende? claro q o smarty iria me ajudar assim eu saberia "onde tem uq"...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.2k
    • Total Posts
      647.5k
×
×
  • Create New...