php - Codeigniter 重复模板

标签 php html css codeigniter

我是 CodeIgniter 的新手,我正在尝试将模板与我的 View 集成。对于每个 View ,我都希望模板有页眉、主要内容和页脚。但是,我的每个页面的标题都不同,因为它们的 css 也不同。我有脚本的页脚也有不同的代码。我是否需要为每个页面创建单独的页眉和页脚?这是一个例子。

Adticket_footer.php

    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js">
        $('#myModal').modal() // initialized with defaults
    </script>

    <!-- Menu Toggle Script -->
    <script>
        $("#menu-toggle").click(function (e) {
            e.preventDefault();
            $("#wrapper").toggleClass("toggled");
        });
    </script>
  </body>
</html>

登录页脚.php

<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

Files

最佳答案

我通常会有一个页眉和一个页脚。例如,对于额外的 CSS,您可以简单地为您的标题设置一个额外的元素。

在你的 Controller 中

$header_data['additional_css'] = array('custom_css_1.css', 'custom_css_2.css');

$this->load->view('header_view', $header_data);

在您看来,您可以添加它们:

<?php if(!empty($additional_css)) { ?>
   <?php foreach ($additional_css as $file_name) { ?>
       <link rel="stylesheet" href="<?php echo base_url('assets/css/'.$file_name); ?>">
   <?php } ?>
<?php } ?>

我为 css 文件创建了一个数组,而不是像通常需要添加多个变量那样传递单个变量。如果您没有在 Controller 中设置任何内容,则不会添加任何内容。 (我确实在这里假设它是一个数组,但从技术上讲,你也应该检查它也是一个数组。)

你可以在你的页脚做同样的事情,允许你添加js文件或js。我通常会有四个附加项,一个用于 css 文件,一个用于内联 css,一个用于 js 文件,一个用于内联 js。对于内联 js 或 css,您可以只使用包含您要显示的内容的变量,而不是数组。

如果您使用 smarty 或其他一些模板系统(它们很容易集成到 CI 中,并且库可用),当然还有其他解决方案,但我发现使用这些额外的数组简单、快速且非常灵活。

关于php - Codeigniter 重复模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41195792/

相关文章:

php - 使用 Laravel 的 eloquent 在 JSON 列中搜索

javascript - 以下数据提交方式有哪些弊端?

php - 如何在 jQuery 加载时传递 PHP 变量?

javascript - 简单的 jQuery 效果不起作用

javascript - 如何使用 jQuery 实现从一张图片到另一张图片的过渡效果?

php - 使用 phpmailer 发送邮件时没有获取 CSS

jquery获取<li>项上data-id的值

javascript - 单击 javascript 按钮显示/隐藏 Div 元素

css - 在 Bootstrap 4 选项卡中对齐关闭图标

html - 在事件列表项的底部添加边框