您好我想通过codeigniter 3中的帮助器或库生成动态Meta标签
我正在创建没有模型的静态网站。
我有 - Header.php - 有标题部分和元标记。
middle_page.php
footer.php
如果我在我的控制器函数中调用meta()html帮助器,就像索引一样,生成的元标记显示在页面顶部意味着上面减少了header.php
如果我在函数和header.php中调用meta标签,那么如何为其编写帮助器或库?echo meta();那么应该生成特定的元标记。我已尝试过Stackoverflow的许多其他答案,但这些答案对我不起作用。
您的帮助将不胜感激。
答案 0 :(得分:3)
遵循这种模式也许它会帮助你
IN控制器
<?php
function show_home() {
$data['page'] = 'home';
$this->load->view('header',$data);
$this->load->view('home');
$this->load->view('footer');
}
function show_contact_us() {
$data['page'] = 'contact_us';
$this->load->view('header',$data);
$this->load->view('contact_us');
$this->load->view('footer');
}
?>
创建帮助程序meta.php
<?php
function meta($page) {
$meta = '<meta charset="utf-8">';
switch ($page) {
case 'home':
$meta .= '<meta name="description" content="Home page description">';
$meta .= '<meta name="keywords" content="Home page keywords">';
break;
case 'contact_us':
$meta .= '<meta name="description" content="Contact us page description">';
$meta .= '<meta name="keywords" content="Contact us page keywords">';
break;
default:
$meta .= '<meta name="description" content="default page description">';
$meta .= '<meta name="keywords" content="default page keywords">';
break;
}
return $meta;
}
?>
在autoload.php中加载元助手
$autoload['helper'] = array("meta");
在单个视图的标题中调用元函数
echo meta($page);