如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

用于收藏精华贴子、网友共享的资料等。可以回复,不能发新贴。

版主: daimadaquan

版面规则
本版面不能发新贴,可以回复

如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Sandwich » 2008-09-17 1:18

是要像 osc 的模版一樣,新增一個配合頁面 id 的模版檔嗎?
還是有其他的方法?

另外,有可能在不同頁面下各自獨立側邊欄的邊訊框嗎?
例如:產品相關頁面,左邊欄出現 商品目錄、暢銷商品、廠商 ...
新聞頁面,左邊欄則只出現 新聞存檔、服務台 ....

這個以前在 osc 裡面很容易做,設置多個 column_left.php 檔,各自包不同的 box 就做到了
ZenCart 裡面該如何定義呢?

懇請指導,感恩!
Sandwich
新手上路
新手上路
 
帖子: 15
注册: 2008-08-22 0:07

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子radnows » 2008-09-17 23:46

ZenCart更容易做, 只需判断该页面才使用该页面的css即可
头像
radnows
论坛版主
论坛版主
 
帖子: 3128
注册: 2005-08-09 23:57
地址: radnows.com

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Sandwich » 2008-09-18 1:49

抱歉,不懂 ....
方便舉個例子嗎 ><
Sandwich
新手上路
新手上路
 
帖子: 15
注册: 2008-08-22 0:07

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Sandwich » 2008-09-19 1:36

麻煩版主幫忙,爬文爬好久,還是不知該如何單獨定義單一產品頁面的外觀 ><
我想要讓某一項商品,或是某一個分類目錄顯示不同的樣貌
而其他商品或分類維持原來的外觀
該怎麼設?
Sandwich
新手上路
新手上路
 
帖子: 15
注册: 2008-08-22 0:07

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Jack » 2008-09-19 9:03

如果只是css不同,只要创建多个不同的CSS文件就可以了,zencart 会按照以下顺序加载css文件:

style*.css // 全站css样式
language_stylesheet.css // 相应语言页面的css
page_name.css // 某个页面的css
language_page_name.css // 某个页面在相应语言下的css
c_??_??.css // 某个分类下的所有商品信息页面的css
language_c_??_??.css // 某个分类下的特定语言的所有商品信息页面的css
m_??.css // 特定厂商页面的css
language_m_??.css // 特定厂商的特定语言的页面css
p_??.css // 某个产品页面的css
language_p_??.css // 某个产品页面的特定语言的css
print*.css // 打印用css

所以,要给分类3_12使用不同的css,只要新建一个 c_3_12.css ,然后在其中使用该商品分类的css样式就好了。
要给商品19使用另一个css,则新建 p_19.css ,然后在其中设定商品信息页面的css样式。
同样原理,可以设定不同语言下的不同css样式
头像
Jack
论坛版主
论坛版主
 
帖子: 11665
注册: 2004-12-16 10:04

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Sandwich » 2008-09-19 10:50

感謝 Jack 大大回覆 ^^

不過,我需要的不只是 CSS 不同
我是希望在某一個分類或某一個商品資訊頁面中
整個呈現與其他分類或商品資訊不同的編排方式
甚至安插特定的 javascript

這個在以前 osc 的 sts 模版中,只要針對該分類或是該頁面的 id 單獨製作一個 檔名_id.html 的模版就可以做到了
在 zencart 的模版中可以這樣做嗎?

另外,側邊欄的部份,爬了英文支援網站的結果
發現要在每個 sidebox 中寫入判別式,來決定要不要讓它出現在某個特定頁面
不知道有沒有更好的方法呢?
Sandwich
新手上路
新手上路
 
帖子: 15
注册: 2008-08-22 0:07

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Jack » 2008-09-19 11:17

如果是某个页面的外观,可以通过 \includes\templates\Your_Template\page_name\tpl_main_page.php 来覆盖 common\tpl_main_page.php

如果是某个商品、分类的外观,则要使用代码判断,参考:http://www.zen-cart.cn/forum/post20492.html
头像
Jack
论坛版主
论坛版主
 
帖子: 11665
注册: 2004-12-16 10:04

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Sandwich » 2008-09-19 12:39

http://www.zen-cart.cn/forum/post20492.html


這篇我之前看過了,事實上我現在就是這樣做的 ...
不過這種方式改的仍是半全局的
它只能定義某個通用的頁面(如:全部的商品訊息頁面)顯示二欄或三欄 ...

我現在的問題是
我如果只要改 index.php?main_page=product_info&cPath=1_8&products_id=2 這個單一商品的頁面
或是只要改 index.php?main_page=index&cPath=2 這個分類的佈局
有辦法透過建立一個像這樣 tpl_index_c_1_2.php (這是我假設的檔名 ... 不能用)的模版檔案來單獨製作嗎?

如果是某个页面的外观,可以通过 \includes\templates\Your_Template\page_name\tpl_main_page.php 来覆盖 common\tpl_main_page.php


這個方式我也已經在用了,不過我不知道遇到像 index.php?main_page=product_info&cPath=1_8&products_id=2 這樣的單一頁面,我的 page_name 該怎麼取名,取名 product_info 是定義所有的產品說明頁面,但是我只要改其中一類的外觀而已 ><

感激 jack 大的勤快回覆!附上我製作中的網站(尚未正式公開),敬請批評指導 ^^
http://kc3.cx901.com/~ecentre/
Sandwich
新手上路
新手上路
 
帖子: 15
注册: 2008-08-22 0:07

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Sandwich » 2008-09-20 0:13

style*.css // 全站css样式
language_stylesheet.css // 相应语言页面的css
page_name.css // 某个页面的css
language_page_name.css // 某个页面在相应语言下的css
c_??_??.css // 某个分类下的所有商品信息页面的css
language_c_??_??.css // 某个分类下的特定语言的所有商品信息页面的css
m_??.css // 特定厂商页面的css
language_m_??.css // 特定厂商的特定语言的页面css
p_??.css // 某个产品页面的css
language_p_??.css // 某个产品页面的特定语言的css
print*.css // 打印用css


Jack 老大,我嘗試用 css 調整版面每個元素的開關 (display: none;/block;)
目前還蠻成功的
但是請教一下,只給首頁專用的 css 檔名要怎麼設?
Sandwich
新手上路
新手上路
 
帖子: 15
注册: 2008-08-22 0:07

Re: 如何單獨定義某商品資訊頁面/某分類/某個簡易頁面的外觀?

帖子Jack » 2008-09-20 9:03

index_home.css
头像
Jack
论坛版主
论坛版主
 
帖子: 11665
注册: 2004-12-16 10:04

下一页

回到 精华共享

在线用户

正在浏览此版面的用户:没有注册用户 和 0 位游客