Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

WAP/WML

Os templates WAP/WML exigem um cabeçalho com o tipo de conteúdo (Content-Type) PHP para serem passados junto com o template. O modo mais fácil de se fazer isso seria escrever uma função personalizada que envia-se este cabeçalho. Se você está usando cache, isto não irá funcionar, então nós faremos isso usando a tag insert (lembre-se que tags de insert não são guardadas no cache!). Certifique-se de que nada é enviado ao navegador antes do template, caso contrário o cabeçalho não irá funcionar.

Example 18.6. Usando insert para escrever um cabeçalho WML Content-Type


<?php
// certifique-se que o apache está configurado para reconhecer extensões .wml!
// coloque esta função em algum lugar de seu aplicativo, ou no arquivo Smarty.addons.php

function insert_header($params) 
{
   // esta função espera o argumento $content
   if (empty($params['content'])) {
       return;
   }
   header($params['content']);
   return;
}
?>

seu template do Smarty deve começar com a tag insert, veja o exemplo à seguir:


{insert name=header content="Content-Type: text/vnd.wap.wml"}

<?xml version="1.0"?>  
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> 

<!-- begin new wml deck --> 
<wml> 
<!-- begin first card --> 
<card> 
<do type="accept"> 
<go href="#two"/> 
</do>  
<p> 
Bem-vindo ao WAP com Smarty!
Pressione OK para continuar...
</p> 
</card>  
<!-- begin second card --> 
<card id="two">  
<p> 
Bem fácil isso, não é?
</p> 
</card> 
</wml>