添加HTML以推封闭?
题
添加javascript,你可以使用:
drupal_add_js
和类似css:
drupal_add_css
但是,如果我只是想增加html在结束我的网页。I.e。增加一个div有一些文本中的页面?
解决方案
提出了很多建议在这里工作,如果你希望你的变化是主题为基础的,但如果你想这来自于一个模块,使用块区域,页面模板或页面prepocess不会削减它,因为<强>你绑变更的主题。
从一个模块化的角度来看,可以使用下列选项最好:
<强> hook_footer()强> - HTTP:// API。 drupal.org/api/function/hook_footer/6 :: my_module_footer()应该返回HTML字符串,它甚至可以是JavaScript的。例如。
function my_module_footer(){
return "<script type='text/javascript'>//your script</script>"
}
您可以使用Drupal $ _GET [“Q”]来获得网页的网址并有回报是有条件的页面URL。
否则,我有时使用$ GLOBALS [“_ add_my_footer”]作为布尔值,并将其设置在不同的点的模块中,则在hook_footer(),看看它是否是真实的。
drupal_add_js - api.drupal.org/api/drupal/includes--common.inc/function/drupal_add_js/6 ::您可以使用此设置了添加JavaScript到页脚$范围参数“页脚” - 例如,
function my_module_init(){
$script = "your script "; // notice no <script> tags
drupal_add_js($script, 'inline', 'footer');
// you can also use this function to grab a .js file
}
请注意,我把那drupal_add_js到hook_init() - 我这样做,因为如果你不这样做,该脚本可以开始使用Drupal的积极的缓存功能时,会丢失
不幸的是,对于没有drupal_add_css $范围参数
其他提示
由于hook_footer
没有生存的Drupal 6,这里的同等功能,以及如何实现它在Drupal 7:
/**
* Implements hook_page_alter().
*/
function example_page_alter(&$page) {
if (variable_get('dev_query', 0)) {
$page['page_bottom']['devel']= array(
'#type' => 'markup',
'#markup' => '<div style="clear:both;">' . devel_query_table() . '</div>',
);
}
}
您可以添加以下到你的主题的template.php文件中:
function phptemplate_preprocess_page(&$vars) {
$vars['closure'] .= 'Add markup here';
}
Drupal有可以实现,并添加你想要的页面的页脚中的任何代码挂钩 - hook_footer。请参见 http://api.drupal.org/api/function/hook_footer/6一>
您可以写一个块做出来,把挡在了关闭。
...或者,也许还不如推荐其他的答案,但更直接的,你可以将HTML直接添加到page.tpl.php中的文件。
目前已经斋做了一些很好的建议:
- 用一块
- 编辑模板
- 使用预处理的功能。
最简单的事情就是添加一块,你创建的,在这里你可以把你定义的标记。你甚至可以创建一个特殊的模板,你不让你平时推块标记,但只是你写的方框内容。
这应该包括你的需要:
- 你已经100%地控制在标记产生的(可以定义,该区域在你们)
- 你已经100%的控制产生什么标记
现在如果你不想使用区块,因为你不想的网站管理员知道的有关方框,第2个最好的事情就是:
- 增加一个框到您主题设置。
- 在你的预处理的页面钩,设置一个布尔变量,如果框检查,或没有。
- 在你的网页模板,你检查的变量,如果这是真的你写你的标记那里你想要它。
这基本上将做同样的事情,如上所述,只有您有在您的主题,而不是添加一块。它将需要更多的工作。
你可以做很多同样的一个定义模块,但它不会有多大意义要做到这一模块,因为这是纯粹的介绍和你都依赖于你的主题反正。
这里是在Drupal 6和7的工作原理的小动作
$script = '//--><!]]></script><strong>this is bold html code</strong><script type="text/javascript"><!--//--><![CDATA[//><!--';
drupal_add_js($script, 'inline', 'footer');
因为很显然你不希望修改模板文件或使用任何上述建议的其他方法,这应该工作到HTML代码添加到就像它的JS和CSS页面
我不”建议使用块,作为其矫枉过正只是增加的页脚某些元素。
这里是你可以用它来添加</body>
标签之前的内容为Drupal 7挂钩。
function hook_page_build(&$page) {
$page['page_bottom']['YOUR_MODULE'] = array(
'#markup' => '<div> I want to get inserted at the bootom of the page </div>',
);
}