【问题标题】:creating a master template in CodeIgniter在 CodeIgniter 中创建主模板
【发布时间】:2012-02-13 19:37:06
【问题描述】:

我遇到了一个非常基本的问题。好的,问题是我想要一个主模板,我可以在其中调用页眉、正文和页脚。我无法在标题中发送标题和 css,以及如何发送多个 css 文件。我正在做这样的事情:

这是控制器中的代码

$data['title'] = 'Login To WePOS';
$data['css']   = base_url().'style/login-box.css';

$this->load->view('templates/default',$data);   

这是标题中的代码

<head>
<title><?php echo $title ?> - CodeIgniter 2 Tutorial</title>
    <link href=" <?php echo $css;?>" rel="stylesheet" type="text/css" />
</head>

这是默认模板名称中的代码

<html>
<?php 
$this->load->view('templates/header', $data);
?>
<body>

<?php 
     $this->load->view('login/index', $data);
?>
</body>
<?php 
     $this->load->view('templates/footer', $data);
 ?>
</html>

【问题讨论】:

    标签: php codeigniter templates


    【解决方案1】:

    嗨,在 codeigniter 中使用模板有不同的方法。

    1- 你可以使用这个程序

    在控制器中

     $data['main_content'] = 'login_view';  
     $data['title']        = 'Login To WePOS';  
     $data['css']          = 'login-box.css';  
     $this->load->view('templates/default',$data);
    

    在 template.php 中查看

    $this->load->view('header_view');  
     $this->load->view($main_content);   
     $this->load->view('footer_view');  
    

    在您的主要内容变量中,您可以传递视图文件

    如果你想添加多个css或者多个js文件可以使用MY_MARK idea as

    $data['cssFiles'] = array(
        'login-box.css',
        'other.css'
    );  
    

    在你的头文件中

     if(is_array($cssFiles)){
        foreach($cssFiles as $cssFile) {
            <link href="<?php echo base_url() . 'style/' . $css; ?>" rel="stylesheet" type="text/css" />
        }
    }
    

    希望对您有所帮助。

    【讨论】:

      【解决方案2】:

      您不必在默认模板中再次传递 $data。

      <html>
          <?php $this->load->view('templates/header'); ?>
          <body>
              <?php $this->load->view('login/index'); ?>
          </body>
          <?php $this->load->view('templates/footer'); ?>
      </html>
      

      这应该允许你在你的标题中选择 $title 和 $css 变量,就像你目前得到的一样。

      关于发送多个 css 文件,创建一个文件数组,例如:

      $data['cssFiles'] = array(
          'login-box.css',
          'other.css'
      );
      

      并将标题中的代码修改为:

      foreach($cssFiles as $cssFile) {
          <link href="<?php echo base_url() . 'style/' . $css; ?>" rel="stylesheet" type="text/css" />
      }
      

      希望对您有所帮助...

      【讨论】:

        猜你喜欢
        • 2013-09-07
        • 1970-01-01
        • 2013-05-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-17
        • 1970-01-01
        相关资源
        最近更新 更多