周りを見回して、これについて言及しているスレッドをいくつか見つけましたが、何らかの理由で、MY_Controller を拡張する Public_Controller にページ タイトルを追加すると、機能しません。Public_Controller を拡張する他のコントローラーにページ タイトルを追加しない場合、それらのページ タイトルは "Test Title" になります。しかし、そうではありません。これが私が持っているものです
Public_Controller.php:
class Public_Controller extends MY_Controller
{
function __construct()
{
parent::__construct();
$this->data['pageTitle'] = 'Test Title'; // pages without a title should display this
....
}
}
Home.php (私のデフォルトのコントローラ... Public_Controller を拡張):
class Home extends Public_Controller {
public function __construct() {
parent:: __construct();
}
function index()
{
$this->data['pageTitle'] = 'Your page title';
$data['main_content'] = 'home';
// My header which contains the <title> is in the template
$this->load->view('includes/template', $data);
}
}
上記のようにすればうまくいきますが、このセットがない場合はページにタイトルを表示したいです:
$data['pageTitle'] = 'Your page title';
ヘッダー領域:
<title><?php echo $pageTitle; ?> </title>
なぜこれが機能しないのですか?