欧美极品在线观看不卡|国产精品Va免费视频|国产国产人无码在线免费|亚洲精品无码九九九九九|亚洲国产综合精品久久久久|成人国产在线观看高清不卡|制服诱惑一区二区三区六区|国产一区二区精品高清在线观看

新聞中心

Drupal技術(shù)文檔翻譯:解決外部javascript文件在info文件中無法被添加

作者 / 無憂主機(jī) 時(shí)間 2012-10-05 10:32:05

無憂主機(jī)主機(jī)小編(www.gle-technology.com)已經(jīng)寫了一篇“Drupal官方文檔翻譯:Drupal 如何添加javascript”文件的,但根據(jù)drupal官網(wǎng)的國外站長的評(píng)論中發(fā)現(xiàn)是有一些問題需要處理的,那就是引入外部的javascript文件會(huì)遇到一些麻煩。那現(xiàn)在就和無憂主機(jī)小編一起來看看國外的站長的處理辦法吧。 首先,我們知道在主題關(guān)聯(lián)的.info文件中引入javascript是script[] = your_js_file.js,但這個(gè)地方添加js文件的話它是引入一個(gè)相對(duì)主題文件夾的地址,用這個(gè)方法添加外部javascript是完全沒效果的。 更進(jìn)一步說就是在template.php文件中使用的drupal_add_js()函數(shù),這個(gè)函數(shù)在D 6.x中是無法被處理的,在D 7.x被修復(fù)了似乎。 而如果您在使用無憂主機(jī)的php虛擬主機(jī)的話,當(dāng)然是不需要擔(dān)心沒有相關(guān)的drupal中文文獻(xiàn),廢話不多說,直奔主題。 解決方法: 1、把您需要的js文件拷貝下來,并放到相關(guān)聯(lián)的主題的文件夾下,通過.info文件添加。 2、為您的主題創(chuàng)建一個(gè)模版文件,用一個(gè)預(yù)處理函數(shù)來加載使用。 這里呢,國外的小站長呢喜歡這第二種辦法。 這里就來詳細(xì)收一下,先創(chuàng)建一個(gè)名為“external-js.tpl.php”的文件,包含下列代碼:

<?php

<script
 type="text/javascript" src=" 外鏈js文件.jx"></script>

?>
接著,在template.php文件中創(chuàng)建一個(gè)預(yù)處理函數(shù),這個(gè)預(yù)處理函數(shù)被加載進(jìn)一個(gè)變量并加適當(dāng)?shù)墓δ苷{(diào)用到$footer。
<?php

function
 Nefertari_preprocess_page(&$vars){

$path = drupal_get_path('theme',
 'Nefertari');

$vars['external_js'] =
 theme_render_template($path.'/external-js.tpl.php', $vars);

$vars['footer'] .= '<script
 type="text/javascript">_uacct = "UA-GOOGLE-ID";
 urchinTracker(); </script>';

}
最后,在page.tpl.php的$script后打印出$extern_js文件。 而drupal 7.x中只需要在template.php中加入
<?php

/**

* Override or insert
 variables into the html template.

*/

function
 theme_preprocess_html(&$vars) {

//include the js file in the header

drupal_add_js('path_to_your_js_or_url');

//example :
 drupal_add_js(path_to_theme().'/js/google-analytics.js');

}

?>
以上為原文官方技術(shù)文檔翻譯,希望大家多多指正。 原文地址:http://drupal.org/node/171205   純Linux環(huán)境下高端免備案【香港獨(dú)立IP地址】?php空間,僅僅只需199元一年起。商務(wù)中國域名核心代理直銷50元注冊(cè)國際頂級(jí)域名

本文地址:http://www.gle-technology.com/drupal/8970.html

1
1
1
1
1
1
1

客戶服務(wù)熱線

0791-8623-3537

在線客服