一个Joomla网站的单个页面是否可以包含自己的定制.js和.css文件?
我想为特定页面添加两个自定义JavaScript和CSS文件,但不希望这些文件包含在任何其他Joomla页面中。
欢迎提出任何建议。
谢谢!
Soygul的解决方案不会产生正确的HTML,因为这些语句/包含属于HTML头部。
使用:http://extensions.joomla.org/extensions/edition/custom-code-in-modules/11936 该插件允许将内容插入到Joomla网站的头部部分。
然后,您可以使用菜单分配功能将其添加到特定页面。
编写一个简单的模块非常容易,但既然已经有现成的,就使用那个吧。如果不符合您的需求:
您只需要一个包含以下两个语句的“空/你好世界”模块: (http://docs.joomla.org/Creating_a_Hello_World_Module_for_Joomla_1.5) (http://docs.joomla.org/Adding_JavaScript_and_CSS_to_the_page)
// Add a reference to a Javascript file
// The default path is 'media/system/js/'
JHTML::script($filename, $path, $mootools);
// Add a reference to a CSS file
// The default path is 'media/system/css/'
JHTML::stylesheet($filename, $path);
尝试使用自定义代码扩展,例如JUMI。它专门为此目的而设计。
从描述中可以看出:使用Jumi,您可以将php、html、javascript脚本包含到模块位置、文章、类别或部分描述中,或者包含到您自己制作的自定义组件页面中。
我不太喜欢在 Joomla 上添加新的扩展,除非绝对必要。如果您这样做,请确保它不在 Joomla 的易受攻击扩展列表中。每个第三方扩展/插件都是黑客潜在的后门。
要为页面添加自定义 CSS,您可以编辑模板的主 CSS 文件,或者创建自己的文件并将其链接到项目。以下是如何操作:
首先,确定如何调用您的 CSS 文件。实际文件名肯定会因您使用的模板而异,但让我们看一下 Joomla 系统模板,它位于 templates/system。index.php 文件控制所有内容,因此打开它,您会找到以下行:
<?php
include dirname(__FILE__).DIRECTORY_SEPARATOR.'component.php';
?>
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" />
您可以在第三行看到包含CSS文件的调用。您只需要添加另一行调用您创建的CSS文件即可。创建一个名为/templates/system/css/custom.css(或任何您喜欢的名称)的新文件,并将component.php中的代码段重写为以下内容:
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/custom.css" type="text/css" />