站的內容初步完成了一半,正開始在給站作theming
其中有幾個不同node 的background 會有幅不同的background image
比如
node/10
那麼我抄node.tpl.php 修改為 node-10.tpl.php 但不生效
但如果是抄page.tpl.php 修改為 page-node-10.tpl.php
請問這是正常的嗎???
page.tpl.php 是包括了整個站的layout, 萬一要修改layout, 其他page-node-*.tpl.php 都要重新修改???
Re: drupal 6.x theming 問題
改為在 node.tpl.php 裡面判斷 $node->nid == 10 的時候輸出不同的顯示
Re: drupal 6.x theming 問題
哦~~~~~~~~原來node 的theming 不支援這種 node-[nid]-tpl.php 的
再想問問, 因為個站是多語言的, 英文和中文文,像第一貼所講不同node 會有不同的background image
那麼同一個node 的不同語言豈不是要重複 用$node->nid == XX來判斷???
比如
某個content 英文的是 node/10, 中文是 node/11
那就要同時判斷 if (($node->nid == 10) or ($node->nid == 11)) { // html code }
對吧??!!!!
Re: drupal 6.x theming 問題
似乎只有支援 node-[type].tpl.php
另外
如果有很多個 node 需要作判斷
我會把 node.tpl.php 或 node-[type].tpl.php 當作用來 include 的檔案
<?php
switch($node->nid){
case 10:
case 11:
?>
<?php include 'node_10-11.tpl.php';?>
<?php
break;
case 12:
case 13:
?>
<?php include 'node_12-13.tpl.php';?>
<?php
break;
default:
?>
<?php include 'node_default.tpl.php';?>
<?php
}
?>
Re: drupal 6.x theming 問題
詳看themes/engine/phptemplate/phptemplate.engine
page的部份在這兒
// Build a list of suggested template files in order of specificity. One
// suggestion is made for every element of the current path, though
// numeric elements are not carried to subsequent suggestions. For example,
// http://www.example.com/node/1/edit would result in the following
// suggestions:
//
// page-node-edit.tpl.php
// page-node-1.tpl.php
// page-node.tpl.php
// page.tpl.php
node的部份在這兒
return _phptemplate_callback('node', $variables, array('node-' . $node->type));
--
from open mind to open source~
Re:
_phptemplate_callback() 這個 function 我在 5.x 的 theme 裡面常用
但是在 6.x 的API 查詢裡面找不到這個函式了
之前去搜尋了一下
看到這篇
http://drupal.org/node/223430
另外還有
phptemplate_theme 這個 function 的資料
http://api.drupal.org/api/function/phptemplate_theme/6
看起來6.x下面應該得改用新的方法
但是還沒時間仔細研究
不是很清楚這一長串的新 function 要怎麼用
Re:
請問 drupal 規管的node.tpl.php 是firebug shaded area ?
這個area以外的空間是page.tpl.php 嗎??
Re: drupal 6.x theming 問題
那部份不在 node 內
沒有所屬的區域
自然是落到最後的 page.tpl.php