我正在使用 zend ,而不是在我的网站中使用AJAX。因此,我必须在每个 phtml 页面的主题部分中包含我的所有CSS和JS文件。
<html>
<head>
<link rel="stylesheet" type="text/css" href="mycssfile.css" />
<script type="text/javascript" src="myjsfile1.js"></script>
<script type="text/javascript" src="myjsfile2.js"></script>
.........
</head>
<body>
.........
</body>
</html>
每当我添加任何新的CSS / JS文件时,我都必须将其包含在任何地方。有没有一种好方法可以将我的所有CSS和JS文件包含在文件/位置中,并在任何地方使用该引用。可能有一个很好的方式在zend。
答案 0 :(得分:4)
我通常在_initViewHelpers方法中将我的静态suff放在应用程序的bootstrap中:
$this->bootstrap(array('frontcontroller', 'view'));
$frontController = $this->getResource('frontcontroller');
$view = $this->getResource('view');
$view->headLink()->appendStylesheet($view->assetUrl('/css/reset.css'))
->appendStylesheet($view->assetUrl('/css/clearfix.css'))
->appendStylesheet($view->assetUrl('/css/screen.css'));
$view->headScript()->appendFile($view->assetUrl('/js/jquery.1.4.3.min.js', 'text/javascript'))
->appendFile($view->assetUrl('/js/jquery.corner.js', 'text/javascript'));
然后从布局文件中通过
调用它们echo $this->headLink()->setIndent();
echo $this->headStyle()->setIndent();
此站点还可以帮助您进行引导和应用程序优化 http://joegornick.com/2009/11/18/zend-framework-best-practices-part-1-getting-started/
答案 1 :(得分:3)
在普通的PHP中,您只需将公共位放在另一个模板中并包含它:
<?php include 'common/header_assets.php'; ?>
common/header_assets.php:
<link rel="stylesheet" type="text/css" href="main.css" />
<script type="text/javascript" src="myjsfile1.js"></script>
<script type="text/javascript" src="myjsfile1.js"></script>
使用Zend Framework,您可能希望为要共享的所有模板创建一个布局,这些模板具有以下公共位:
http://zendframework.com/manual/en/learning.quickstart.create-layout.html