2011-11-28 27 views
1

我使用顯示套件來顯示「文章」類型的完整節點。我想在包含文章節點的頁面上添加一些css和js,但添加這些不能依賴於主題。所以我不能使用template.php文件如何在獨立於主題的節點頁上添加CSS和js文件?

我將如何能夠做到這一點?

+0

您是否在尋找獨立主題您的文章類型節點?看看這個http://drupal.org/node/17565 –

+0

我寧可不使用tpl文件。 – Nealv

+0

什麼版本的drupal? – Coder1

回答

1

創建一個新的模塊,並把它放在:/網站/所有/模塊/自定義

的模塊結構和文件應該是這樣的:

ahelper/ 
ahelper/css/article_node.css 
ahelper/js/article_node.js 
ahelper/ahelper.info 
ahelper/ahelper.module 

ahelper/ahelper.info

core = "7.x" 
name = "Article Helper" 
project = "ahelper" 
version = "7.x-1.0" 

ahelper/ahelper.module

<?php 
/** 
* Implements hook_node_view() 
*/ 
function ahelper_node_view($node, $view_mode, $langcode) { 
    // if node is an article, and we're looking at a full page view 
    if ($node->type == 'article' && $view_mode == 'full') { 
    // then add this javascript file 
    drupal_add_js(drupal_get_path('module', 'ahelper') .'/js/article_node.js'); 
    // and add this css file 
    drupal_add_css(drupal_get_path('module', 'ahelper') .'/css/article_node.css'); 
    } 
} 

然後,只需使該模塊。你可以玩node_view鉤子。

+0

謝謝,這是我所需要的 – Nealv

1

使用函數drupal_add_js和drupal_add_css創建一個自定義模塊幷包含您的js和css文件。您可以根據您想要包含文件的方式,在自定義模塊的hook_init或hook_nodeapi(或Drupal 7中的Node Api鉤子)中調用它們。無論使用什麼主題,都可以調用這些函數。

參考文獻: http://api.drupal.org/api/drupal/includes--common.inc/function/drupal_add_js

http://api.drupal.org/api/drupal/includes--common.inc/function/drupal_add_css

+0

Myes,我正在尋找同一個方向:)。在模塊中,我想定義一些我目前在主題中使用的模板。這些tpl文件是視圖重寫:lik - > block - views - article-images - block.tpl使用hook_theme_registry_alter函數。你能幫忙嗎? – Nealv

+0

好的,我能夠將模板放在我的模塊文件夾中。 THX的幫助:) – Nealv

相關問題