CodeIgniter模板变量不能一直工作

时间:2011-06-14 23:38:38

标签: php templates codeigniter

我正在尝试让每个网页都有一个动态的标题字段。

我正在使用this template system库和CodeIgniter 2。

下面是我的开场代码示例,显示我正在使用名为$title的变量来存储当前页面的标题。

<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
        <title>CnCFPS <?php echo "| $title"; ?></title>
        <meta http-equiv="Content-Language" content="en" />
        <meta name="Description" content="Todo" />
        <meta name="Keywords" content="Todo" />

我正在使用其中$this->template->write_view( 'content', 'path/to/view', $data' );为数组的$data将其写入视图:

$data['recaptcha']          =   $this->recaptcha->get_html();
$data['title']              =   "Account Registration";

$title似乎在模板上不作为变量存在,因为我得到的是<title>标签之间的“CnCFPS |”。 $recaptcha变量可以很好地工作。

我使用$this->template->write( 'title', 'Insert Title Here');尝试了the link above上的示例,甚至在configs\template.php的$ template数组中定义了一个标题。

我不知道这是什么以及为什么它不会显示页面标题。

感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

要尝试的一些事情。

而不是使用$data['title'] use $this->data['title']并为标题而不是$ title调用$data['title']

您必须将函数中的所有$ data数组更改为$this->data[]

另一件事,愚蠢但逃脱你的变量。最佳实践。

<title>CnCFPS<?php echo " | ".$title; ?></title>