WAP/WML
WAP/WML templates require a php
Content-Type header
to be passed along
with the template. The easist way to do this would be to write a custom
function that prints the header. If you are using
caching, that won't
work so we'll do it using the
{insert}
tag; remember {insert} tags are not
cached! Be sure that there is nothing output to the browser before the
template, or else the header may fail.
Example 18-6. using {insert} to write a WML Content-Type header
<?php
// be sure apache is configure for the .wml extensions! // put this function somewhere in your application, or in Smarty.addons.php function insert_header($params) { // this function expects $content argument if (empty($params['content'])) { return; } header($params['content']); return; }
?>
|
your Smarty template must begin with the insert tag :
{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>
Welcome to WAP with Smarty!
Press OK to continue...
</p>
</card>
<!-- begin second card -->
<card id="two">
<p>
Pretty easy isn't it?
</p>
</card>
</wml> |
|