SlideShare a Scribd company logo
1 of 12
zen-cart 网站模板复制过程

这里以 zen cart 或者 osc 的模板为例,其他的模板也是同样的方法。
1. 首先在你的模板目录下,建立一个新的模板,例如:
includestemplatesmytemplate
复制includestemplatestemplate_default 下的所有目录和文件到新的目录中
2. 用文本编辑器修改includestemplatesmytemplatetemplate_info.php,修改
其中的名称、版本、作者等内容。
3. 在后台打开新的模板,然后再工具-外观控制中,点击重置
4. 获取网站模板的图片
用整站下载软件实现,例如 Teleport Pro,下载全站的所有图形文件,要保留
原站的文件结构。
图片通常都在/images 目录下,将下载到的/images 下的图形文件都复制到 zen
cart 的/images 目录下。
5. 获取网站模板的按钮
也可以用 Teleport Pro 下载所有按钮,通常是英文的,osc 的按钮图片
在/includes/languages/english/images/buttons 目录下。
将下载的按钮保存到 zen cart 的按钮目
录/includes/templates/mytemplate/buttons/english/ 和
/includes/templates/mytemplate/buttons/schinese/ 中,在 schinese 目录中的
按钮,可以自己用图像处理软件转换成中文。
osc 模板中,可供下载的按钮有:
http://www.domainname.com/osc/includes/ … s_book.gif
http://www.domainname.com/osc/includes/ … ddress.gif
http://www.domainname.com/osc/includes/ … n_back.gif
http://www.domainname.com/osc/includes/ … uy_now.gif
http://www.domainname.com/osc/includes/ … ddress.gif
http://www.domainname.com/osc/includes/ … eckout.gif
http://www.domainname.com/osc/includes/ … _order.gif
http://www.domainname.com/osc/includes/ … ntinue.gif
http://www.domainname.com/osc/includes/ … opping.gif
http://www.domainname.com/osc/includes/ … delete.gif
http://www.domainname.com/osc/includes/ … ccount.gif
http://www.domainname.com/osc/includes/ … n_cart.gif
http://www.domainname.com/osc/includes/ … _login.gif
http://www.domainname.com/osc/includes/ … ations.gif
http://www.domainname.com/osc/includes/ … k_find.gif
http://www.domainname.com/osc/includes/ … ations.gif
http://www.domainname.com/osc/includes/ … eviews.gif
http://www.domainname.com/osc/includes/ … search.gif
http://www.domainname.com/osc/includes/ … ptions.gif
http://www.domainname.com/osc/includes/ … friend.gif
http://www.domainname.com/osc/includes/ … update.gif
http://www.domainname.com/osc/includes/ … e_cart.gif
http://www.domainname.com/osc/includes/ … review.gif
http://www.domainname.com/osc/includes/ … delete.gif
http://www.domainname.com/osc/includes/ … l_edit.gif
http://www.domainname.com/osc/includes/ … l_view.gif
类似的,zen cart 模板的按钮有
http://www.domainname.com/zencart/inclu … ddress.gif
http://www.domainname.com/zencart/inclu … n_back.gif
http://www.domainname.com/zencart/inclu … uy_now.gif
http://www.domainname.com/zencart/inclu … ddress.gif
http://www.domainname.com/zencart/inclu … eckout.gif
http://www.domainname.com/zencart/inclu … _order.gif
http://www.domainname.com/zencart/inclu … ntinue.gif
http://www.domainname.com/zencart/inclu … opping.gif
http://www.domainname.com/zencart/inclu … delete.gif
http://www.domainname.com/zencart/inclu … wnload.gif
http://www.domainname.com/zencart/inclu … n_cart.gif
http://www.domainname.com/zencart/inclu … _login.gif
http://www.domainname.com/zencart/inclu … n_next.gif
http://www.domainname.com/zencart/inclu … eckout.gif
http://www.domainname.com/zencart/inclu … n_prev.gif
http://www.domainname.com/zencart/inclu … redeem.gif
http://www.domainname.com/zencart/inclu … t_list.gif
http://www.domainname.com/zencart/inclu … eviews.gif
http://www.domainname.com/zencart/inclu … search.gif
http://www.domainname.com/zencart/inclu … n_send.gif
http://www.domainname.com/zencart/inclu … imator.gif
http://www.domainname.com/zencart/inclu … ld_out.gif
http://www.domainname.com/zencart/inclu … out_sm.gif
http://www.domainname.com/zencart/inclu … submit.gif
http://www.domainname.com/zencart/inclu … Friend.gif
http://www.domainname.com/zencart/inclu … friend.gif
http://www.domainname.com/zencart/inclu … scribe.gif
http://www.domainname.com/zencart/inclu … update.gif
http://www.domainname.com/zencart/inclu … e_cart.gif
http://www.domainname.com/zencart/inclu … review.gif
http://www.domainname.com/zencart/inclu … delete.gif
http://www.domainname.com/zencart/inclu … l_edit.gif
http://www.domainname.com/zencart/inclu … l_view.gif
上面的列表中,自己替换 www.domainname.com/osc 或
者 http://www.domainname.com/zencart 为你需要复制的网站地址。
6. 获取网站模板的 CSS 文件。
osc 的 stylesheet.css 文件在根目录下。
stylesheet.css 文件的具体路径在查看页
面源代码时能看到。
打开获得的 stylesheet.css 文件,剪贴
到/includes/templates/mytemplate/css/stylesheet.css 文件中,追加在原来的
css 文件后,不要覆盖原有的内容。
7. 打开需要复制的 zen cart 或者 osc 网站,查看源代码。(有些网站不允许你查
看源代码,要一些技巧,这里就不详细讨论这个问题了)
8. 在源代码中复制
<!– header //–> 到 <!– header_eof //–> 之间的内容作
为includestemplatesmytemplatecommontpl_header.php,删除该文件内原
来的内容。
<!– footer //–> 到 <!– footer_eof //–> 之间的内容作
为includestemplatesmytemplatecommontpl_footer.php,删除该文件内原来
的内容。
(有些模板把边框部分的显示也放到 header.php 中,那么你需要找出属于边框
的部分并删除)
9. 现在,整个网站的外观已经基本出来了。需要替换上面的这两个文件内的链
接,这里是模板转换的关键。
根据下面的模式替换,第一行是需要替换的类似链接,第二行是正确的代码:
http://www.domainname.com/osc/index.php
<?php echo zen_href_link(FILENAME_DEFAULT); ?>
http://www.domainname.com/osc/account.php
<?php echo zen_href_link(FILENAME_ACCOUNT, ”, ‘SSL’); ?>
http://www.domainname.com/osc/shopping_cart.php
<?php echo zen_href_link(FILENAME_SHOPPING_CART, ”, ‘NONSSL’); ?>
http://www.domainname.com/osc/checkout_shipping.php
<?php echo zen_href_link(FILENAME_CHECKOUT_SHIPPING, ”, ‘SSL’); ?>
http://www.domainname.com/osc/shipping.php
<?php echo zen_href_link(FILENAME_SHIPPING); ?>
http://www.domainname.com/osc/advanced_search.php
<?php echo zen_href_link(FILENAME_ADVANCED_SEARCH); ?>
http://www.domainname.com/osc/products_new.php
<?php echo zen_href_link(FILENAME_PRODUCTS_NEW); ?>
http://www.domainname.com/osc/specials.php
<?php echo zen_href_link(FILENAME_SPECIALS); ?>
http://www.domainname.com/osc/featured_products.php
<?php echo zen_href_link(FILENAME_FEATURED_PRODUCTS); ?>
http://www.domainname.com/osc/products_all.php
<?php echo zen_href_link(FILENAME_PRODUCTS_ALL); ?>
http://www.domainname.com/osc/upcoming_products.php
<?php echo zen_href_link(FILENAME_UPCOMING_PRODUCTS); ?>
http://www.domainname.com/osc/contact_us.php
<?php echo zen_href_link(FILENAME_CONTACT_US); ?>
还有一些必须的代码包括,
用户登录、登出的代码:
<?php if ($_SESSION['customer_id']) { ?>
<a href=”<?php echo zen_href_link(FILENAME_LOGOFF, ”, ‘SSL’); ?>”><?
php echo HEADER_TITLE_LOGOFF; ?></a>&amp;nbsp;|&amp;nbsp;
<a href=”<?php echo zen_href_link(FILENAME_ACCOUNT, ”, ‘SSL’); ?>”><?
php echo HEADER_TITLE_MY_ACCOUNT; ?></a>
<?php
} else {
if (STORE_STATUS == ‘0′) {
?>
<a href=”<?php echo zen_href_link(FILENAME_LOGIN, ”, ‘SSL’); ?>”><?php
echo HEADER_TITLE_LOGIN; ?></a>
<?php } } ?>
货币选择方框的代码:
<?php
if (isset($currencies) && is_object($currencies)) {
reset($currencies->currencies);
$currencies_array = array();
while (list($key, $value) = each($currencies->currencies)) {
$currencies_array[] = array(‘id’ => $key, ‘text’ => $value['title']);
}
$hidden_get_variables = ”;
reset($_GET);
while (list($key, $value) = each($_GET)) {
if ( ($key != ‘currency’) && ($key != zen_session_name()) && ($key != ‘x’) &&
($key != ‘y’) ) {
$hidden_get_variables .= zen_draw_hidden_field($key, $value);
}
}
}
$content = zen_draw_form(‘currencies’,
zen_href_link(basename(ereg_replace(‘.php’,”, $PHP_SELF)), ”,
$request_type, false), ‘get’);
$content .= zen_draw_pull_down_menu(‘currency’, $currencies_array,
$_SESSION['currency'], ‘onchange=”this.form.submit();” style=”width:
100%”‘) . $hidden_get_variables . zen_hide_session_id();
$content .= ‘</form>’;
echo $content;
?>
语言选择的代码:
<?php
if (!isset($lng) || (isset($lng) && !is_object($lng))) {
$lng = new language;
}
$lng_cnt = 0;
while (list($key, $value) = each($lng->catalog_languages)) {
$content .= ‘<a href=”‘ . zen_href_link($_GET['main_page'],
zen_get_all_get_params(array(‘language’, ‘currency’)) . ‘language=’ . $key,
$request_type) . ‘”>’ . zen_image(DIR_WS_LANGUAGES . $value['directory'] .
‘/images/’ . $value['image'], $value['name']) . ‘</a>&amp;nbsp;&amp;nbsp;’;
$lng_cnt ++;
if ($lng_cnt >= MAX_LANGUAGE_FLAGS_COLUMNS) {
$lng_cnt = 0;
$content .= ‘<br />’;
}
}
echo $content;
?>
经过以上的替换,tpl_header.php 和 tpl_footer.php 中所有的外部链接都应该替
换为你自己的链接了。
如果还有类似 http://www.domainname.com/osc/index.php?cPath=37_28 的链
接,这是单个商品的链接,可以删除,或改成你自己的商品链接。
10. 下一步,将 tpl_header.php 和 tpl_footer.php 这两个文件中的文字,替换为
PHP 代码,以支持多语言。
如果你只用单一语言,直接修改为你需要的文字即可。例如,
类似 “创建帐号” 改为 <?php echo HEADER_TITLE_CREATE_ACCOUNT; ?>
类似 “商品分类” 改为 <?php echo HEADER_TITLE_CATALOG; ?>
类似 “登出” 改为 <?php echo HEADER_TITLE_LOGOFF; ?>
类似 “我的帐号” 改为 <?php echo HEADER_TITLE_MY_ACCOUNT; ?>
类似 “登录” 改为 <?php echo HEADER_TITLE_LOGIN; ?>
类似 “购物车中的货品” 改为 <?php echo
HEADER_TITLE_CART_CONTENTS; ?>
类似 “结帐” 改为 <?php echo HEADER_TITLE_CHECKOUT; ?>
类似“搜索”改为 <?php echo BOX_HEADING_SEARCH; ?>
类似“高级搜索”改为 <?php echo BOX_SEARCH_ADVANCED_SEARCH; ?>
类似 “特价商品” 改为 <?php echo
CATEGORIES_BOX_HEADING_SPECIALS; ?>
类似 “新进商品” 改为 <?php echo
CATEGORIES_BOX_HEADING_WHATS_NEW; ?>
类似 “推荐商品” 改为 <?php echo
CATEGORIES_BOX_HEADING_FEATURED_PRODUCTS; ?>
类似 “所有商品” 改为 <?php echo
CATEGORIES_BOX_HEADING_PRODUCTS_ALL; ?>
类似 “联系我们” 改为 <?php echo BOX_INFORMATION_CONTACT; ?>
类似 “货币” 改为 <?php echo BOX_HEADING_CURRENCIES; ?>
类似 “语言” 改为 <?php echo BOX_HEADING_LANGUAGES; ?>
还有一些可能用到的代码:
<?php echo TEXT_YOUR_IP_ADDRESS . ‘ ‘ .
$_SERVER['REMOTE_ADDR']; ?>
<?php echo FOOTER_TEXT_BODY; ?>
<div>Parse Time: <?php echo $parse_time; ?> – Number of Queries: <?php
echo $db->queryCount(); ?> – Query Time: <?php echo $db->queryTime(); ?
></div>
经过以上的十步操作,基本形成了网站的外观~

More Related Content

What's hot

旺铺前端设计和实现
旺铺前端设计和实现旺铺前端设计和实现
旺铺前端设计和实现hua qiu
 
6kbbs vulnerability report
6kbbs vulnerability report6kbbs vulnerability report
6kbbs vulnerability reportinsight-labs
 
OpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part IOpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part IHung-yu Lin
 
Maintainable PHP Source Code
Maintainable PHP Source CodeMaintainable PHP Source Code
Maintainable PHP Source CodeBo-Yi Wu
 
[DCTPE2010] Drupal 模組開發入門
[DCTPE2010] Drupal 模組開發入門[DCTPE2010] Drupal 模組開發入門
[DCTPE2010] Drupal 模組開發入門Drupal Taiwan
 
Zen cart全集
Zen cart全集Zen cart全集
Zen cart全集fxiong99
 
Perl 6 news at 2010-06
Perl 6 news at 2010-06Perl 6 news at 2010-06
Perl 6 news at 2010-06March Liu
 

What's hot (7)

旺铺前端设计和实现
旺铺前端设计和实现旺铺前端设计和实现
旺铺前端设计和实现
 
6kbbs vulnerability report
6kbbs vulnerability report6kbbs vulnerability report
6kbbs vulnerability report
 
OpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part IOpenWebSchool - 02 - PHP Part I
OpenWebSchool - 02 - PHP Part I
 
Maintainable PHP Source Code
Maintainable PHP Source CodeMaintainable PHP Source Code
Maintainable PHP Source Code
 
[DCTPE2010] Drupal 模組開發入門
[DCTPE2010] Drupal 模組開發入門[DCTPE2010] Drupal 模組開發入門
[DCTPE2010] Drupal 模組開發入門
 
Zen cart全集
Zen cart全集Zen cart全集
Zen cart全集
 
Perl 6 news at 2010-06
Perl 6 news at 2010-06Perl 6 news at 2010-06
Perl 6 news at 2010-06
 

Viewers also liked

20150825 - Thesis Corneel den Hartogh
20150825 - Thesis Corneel den Hartogh20150825 - Thesis Corneel den Hartogh
20150825 - Thesis Corneel den HartoghCorneel den Hartogh
 
Welcome to the library 2015
Welcome to the library 2015Welcome to the library 2015
Welcome to the library 2015tunderbrink
 
Reginald Cover Letter v6.1
Reginald Cover Letter v6.1Reginald Cover Letter v6.1
Reginald Cover Letter v6.1Reginald White
 
Construcaodecisternas rodolfo luiz bezerra nobreg
Construcaodecisternas rodolfo luiz bezerra nobregConstrucaodecisternas rodolfo luiz bezerra nobreg
Construcaodecisternas rodolfo luiz bezerra nobregCarlos Martins
 
Diabetes Gestacional
Diabetes GestacionalDiabetes Gestacional
Diabetes GestacionalVera Pérez
 
Latihan ips akhir semester GANJIL kelas x smk
Latihan ips akhir semester GANJIL kelas x smkLatihan ips akhir semester GANJIL kelas x smk
Latihan ips akhir semester GANJIL kelas x smkJaya Gemilang Toga
 

Viewers also liked (11)

jp tiwary
jp tiwaryjp tiwary
jp tiwary
 
U1.1
U1.1U1.1
U1.1
 
20150825 - Thesis Corneel den Hartogh
20150825 - Thesis Corneel den Hartogh20150825 - Thesis Corneel den Hartogh
20150825 - Thesis Corneel den Hartogh
 
Fé de cientistas
Fé de cientistasFé de cientistas
Fé de cientistas
 
Welcome to the library 2015
Welcome to the library 2015Welcome to the library 2015
Welcome to the library 2015
 
Reginald Cover Letter v6.1
Reginald Cover Letter v6.1Reginald Cover Letter v6.1
Reginald Cover Letter v6.1
 
Construcaodecisternas rodolfo luiz bezerra nobreg
Construcaodecisternas rodolfo luiz bezerra nobregConstrucaodecisternas rodolfo luiz bezerra nobreg
Construcaodecisternas rodolfo luiz bezerra nobreg
 
Peta ithnik
Peta ithnikPeta ithnik
Peta ithnik
 
Kисеоник
KисеоникKисеоник
Kисеоник
 
Diabetes Gestacional
Diabetes GestacionalDiabetes Gestacional
Diabetes Gestacional
 
Latihan ips akhir semester GANJIL kelas x smk
Latihan ips akhir semester GANJIL kelas x smkLatihan ips akhir semester GANJIL kelas x smk
Latihan ips akhir semester GANJIL kelas x smk
 

Similar to Zencart网站模板复制过程

第九章解答
第九章解答第九章解答
第九章解答jiannrong
 
PHP & MySQL 教學
PHP & MySQL 教學PHP & MySQL 教學
PHP & MySQL 教學Bo-Yi Wu
 
Drupal 版型設計 - 瞭解版型程式
Drupal 版型設計 - 瞭解版型程式Drupal 版型設計 - 瞭解版型程式
Drupal 版型設計 - 瞭解版型程式Chris Wu
 
Migrations 與 Schema操作
Migrations 與 Schema操作Migrations 與 Schema操作
Migrations 與 Schema操作Shengyou Fan
 
第八章解答
第八章解答第八章解答
第八章解答jiannrong
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎Shengyou Fan
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎Shengyou Fan
 
Moodle 项目帮助手册:程序编写准则
Moodle 项目帮助手册:程序编写准则Moodle 项目帮助手册:程序编写准则
Moodle 项目帮助手册:程序编写准则YUCHENG HU
 
Magento页面载入的执行流程
Magento页面载入的执行流程Magento页面载入的执行流程
Magento页面载入的执行流程Sim Jiason
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作Shengyou Fan
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and DesignHo Kim
 
JavaScript 脚本控件(二)
JavaScript 脚本控件(二)JavaScript 脚本控件(二)
JavaScript 脚本控件(二)RANK LIU
 
Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422Jinrong Ye
 
解读html
解读html解读html
解读htmlcssrain
 
Introduction to MVC of CodeIgniter 2.1.x
Introduction to MVC of CodeIgniter 2.1.xIntroduction to MVC of CodeIgniter 2.1.x
Introduction to MVC of CodeIgniter 2.1.xBo-Yi Wu
 
Word press theme主题制作教程
Word press theme主题制作教程Word press theme主题制作教程
Word press theme主题制作教程pangyuxing
 

Similar to Zencart网站模板复制过程 (20)

Html&css基础
Html&css基础Html&css基础
Html&css基础
 
第九章解答
第九章解答第九章解答
第九章解答
 
PHP & MySQL 教學
PHP & MySQL 教學PHP & MySQL 教學
PHP & MySQL 教學
 
Drupal 版型設計 - 瞭解版型程式
Drupal 版型設計 - 瞭解版型程式Drupal 版型設計 - 瞭解版型程式
Drupal 版型設計 - 瞭解版型程式
 
Migrations 與 Schema操作
Migrations 與 Schema操作Migrations 與 Schema操作
Migrations 與 Schema操作
 
第八章解答
第八章解答第八章解答
第八章解答
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
Moodle 项目帮助手册:程序编写准则
Moodle 项目帮助手册:程序编写准则Moodle 项目帮助手册:程序编写准则
Moodle 项目帮助手册:程序编写准则
 
Magento页面载入的执行流程
Magento页面载入的执行流程Magento页面载入的执行流程
Magento页面载入的执行流程
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and Design
 
JavaScript 脚本控件(二)
JavaScript 脚本控件(二)JavaScript 脚本控件(二)
JavaScript 脚本控件(二)
 
NextGen
NextGenNextGen
NextGen
 
Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422
 
Eloquent ORM
Eloquent ORMEloquent ORM
Eloquent ORM
 
解读html
解读html解读html
解读html
 
Introduction to MVC of CodeIgniter 2.1.x
Introduction to MVC of CodeIgniter 2.1.xIntroduction to MVC of CodeIgniter 2.1.x
Introduction to MVC of CodeIgniter 2.1.x
 
Eloquent ORM
Eloquent ORMEloquent ORM
Eloquent ORM
 
Word press theme主题制作教程
Word press theme主题制作教程Word press theme主题制作教程
Word press theme主题制作教程
 

Zencart网站模板复制过程

  • 1. zen-cart 网站模板复制过程 这里以 zen cart 或者 osc 的模板为例,其他的模板也是同样的方法。 1. 首先在你的模板目录下,建立一个新的模板,例如: includestemplatesmytemplate 复制includestemplatestemplate_default 下的所有目录和文件到新的目录中 2. 用文本编辑器修改includestemplatesmytemplatetemplate_info.php,修改 其中的名称、版本、作者等内容。 3. 在后台打开新的模板,然后再工具-外观控制中,点击重置 4. 获取网站模板的图片 用整站下载软件实现,例如 Teleport Pro,下载全站的所有图形文件,要保留 原站的文件结构。 图片通常都在/images 目录下,将下载到的/images 下的图形文件都复制到 zen cart 的/images 目录下。 5. 获取网站模板的按钮 也可以用 Teleport Pro 下载所有按钮,通常是英文的,osc 的按钮图片 在/includes/languages/english/images/buttons 目录下。 将下载的按钮保存到 zen cart 的按钮目
  • 2. 录/includes/templates/mytemplate/buttons/english/ 和 /includes/templates/mytemplate/buttons/schinese/ 中,在 schinese 目录中的 按钮,可以自己用图像处理软件转换成中文。 osc 模板中,可供下载的按钮有: http://www.domainname.com/osc/includes/ … s_book.gif http://www.domainname.com/osc/includes/ … ddress.gif http://www.domainname.com/osc/includes/ … n_back.gif http://www.domainname.com/osc/includes/ … uy_now.gif http://www.domainname.com/osc/includes/ … ddress.gif http://www.domainname.com/osc/includes/ … eckout.gif http://www.domainname.com/osc/includes/ … _order.gif http://www.domainname.com/osc/includes/ … ntinue.gif http://www.domainname.com/osc/includes/ … opping.gif http://www.domainname.com/osc/includes/ … delete.gif http://www.domainname.com/osc/includes/ … ccount.gif http://www.domainname.com/osc/includes/ … n_cart.gif http://www.domainname.com/osc/includes/ … _login.gif http://www.domainname.com/osc/includes/ … ations.gif http://www.domainname.com/osc/includes/ … k_find.gif http://www.domainname.com/osc/includes/ … ations.gif http://www.domainname.com/osc/includes/ … eviews.gif
  • 3. http://www.domainname.com/osc/includes/ … search.gif http://www.domainname.com/osc/includes/ … ptions.gif http://www.domainname.com/osc/includes/ … friend.gif http://www.domainname.com/osc/includes/ … update.gif http://www.domainname.com/osc/includes/ … e_cart.gif http://www.domainname.com/osc/includes/ … review.gif http://www.domainname.com/osc/includes/ … delete.gif http://www.domainname.com/osc/includes/ … l_edit.gif http://www.domainname.com/osc/includes/ … l_view.gif 类似的,zen cart 模板的按钮有 http://www.domainname.com/zencart/inclu … ddress.gif http://www.domainname.com/zencart/inclu … n_back.gif http://www.domainname.com/zencart/inclu … uy_now.gif http://www.domainname.com/zencart/inclu … ddress.gif http://www.domainname.com/zencart/inclu … eckout.gif http://www.domainname.com/zencart/inclu … _order.gif http://www.domainname.com/zencart/inclu … ntinue.gif http://www.domainname.com/zencart/inclu … opping.gif http://www.domainname.com/zencart/inclu … delete.gif http://www.domainname.com/zencart/inclu … wnload.gif http://www.domainname.com/zencart/inclu … n_cart.gif
  • 4. http://www.domainname.com/zencart/inclu … _login.gif http://www.domainname.com/zencart/inclu … n_next.gif http://www.domainname.com/zencart/inclu … eckout.gif http://www.domainname.com/zencart/inclu … n_prev.gif http://www.domainname.com/zencart/inclu … redeem.gif http://www.domainname.com/zencart/inclu … t_list.gif http://www.domainname.com/zencart/inclu … eviews.gif http://www.domainname.com/zencart/inclu … search.gif http://www.domainname.com/zencart/inclu … n_send.gif http://www.domainname.com/zencart/inclu … imator.gif http://www.domainname.com/zencart/inclu … ld_out.gif http://www.domainname.com/zencart/inclu … out_sm.gif http://www.domainname.com/zencart/inclu … submit.gif http://www.domainname.com/zencart/inclu … Friend.gif http://www.domainname.com/zencart/inclu … friend.gif http://www.domainname.com/zencart/inclu … scribe.gif http://www.domainname.com/zencart/inclu … update.gif http://www.domainname.com/zencart/inclu … e_cart.gif http://www.domainname.com/zencart/inclu … review.gif http://www.domainname.com/zencart/inclu … delete.gif http://www.domainname.com/zencart/inclu … l_edit.gif http://www.domainname.com/zencart/inclu … l_view.gif
  • 5. 上面的列表中,自己替换 www.domainname.com/osc 或 者 http://www.domainname.com/zencart 为你需要复制的网站地址。 6. 获取网站模板的 CSS 文件。 osc 的 stylesheet.css 文件在根目录下。 stylesheet.css 文件的具体路径在查看页 面源代码时能看到。 打开获得的 stylesheet.css 文件,剪贴 到/includes/templates/mytemplate/css/stylesheet.css 文件中,追加在原来的 css 文件后,不要覆盖原有的内容。 7. 打开需要复制的 zen cart 或者 osc 网站,查看源代码。(有些网站不允许你查 看源代码,要一些技巧,这里就不详细讨论这个问题了) 8. 在源代码中复制 <!– header //–> 到 <!– header_eof //–> 之间的内容作 为includestemplatesmytemplatecommontpl_header.php,删除该文件内原 来的内容。 <!– footer //–> 到 <!– footer_eof //–> 之间的内容作 为includestemplatesmytemplatecommontpl_footer.php,删除该文件内原来 的内容。
  • 6. (有些模板把边框部分的显示也放到 header.php 中,那么你需要找出属于边框 的部分并删除) 9. 现在,整个网站的外观已经基本出来了。需要替换上面的这两个文件内的链 接,这里是模板转换的关键。 根据下面的模式替换,第一行是需要替换的类似链接,第二行是正确的代码: http://www.domainname.com/osc/index.php <?php echo zen_href_link(FILENAME_DEFAULT); ?> http://www.domainname.com/osc/account.php <?php echo zen_href_link(FILENAME_ACCOUNT, ”, ‘SSL’); ?> http://www.domainname.com/osc/shopping_cart.php <?php echo zen_href_link(FILENAME_SHOPPING_CART, ”, ‘NONSSL’); ?> http://www.domainname.com/osc/checkout_shipping.php <?php echo zen_href_link(FILENAME_CHECKOUT_SHIPPING, ”, ‘SSL’); ?> http://www.domainname.com/osc/shipping.php <?php echo zen_href_link(FILENAME_SHIPPING); ?> http://www.domainname.com/osc/advanced_search.php
  • 7. <?php echo zen_href_link(FILENAME_ADVANCED_SEARCH); ?> http://www.domainname.com/osc/products_new.php <?php echo zen_href_link(FILENAME_PRODUCTS_NEW); ?> http://www.domainname.com/osc/specials.php <?php echo zen_href_link(FILENAME_SPECIALS); ?> http://www.domainname.com/osc/featured_products.php <?php echo zen_href_link(FILENAME_FEATURED_PRODUCTS); ?> http://www.domainname.com/osc/products_all.php <?php echo zen_href_link(FILENAME_PRODUCTS_ALL); ?> http://www.domainname.com/osc/upcoming_products.php <?php echo zen_href_link(FILENAME_UPCOMING_PRODUCTS); ?> http://www.domainname.com/osc/contact_us.php <?php echo zen_href_link(FILENAME_CONTACT_US); ?> 还有一些必须的代码包括,
  • 8. 用户登录、登出的代码: <?php if ($_SESSION['customer_id']) { ?> <a href=”<?php echo zen_href_link(FILENAME_LOGOFF, ”, ‘SSL’); ?>”><? php echo HEADER_TITLE_LOGOFF; ?></a>&amp;nbsp;|&amp;nbsp; <a href=”<?php echo zen_href_link(FILENAME_ACCOUNT, ”, ‘SSL’); ?>”><? php echo HEADER_TITLE_MY_ACCOUNT; ?></a> <?php } else { if (STORE_STATUS == ‘0′) { ?> <a href=”<?php echo zen_href_link(FILENAME_LOGIN, ”, ‘SSL’); ?>”><?php echo HEADER_TITLE_LOGIN; ?></a> <?php } } ?> 货币选择方框的代码: <?php if (isset($currencies) && is_object($currencies)) { reset($currencies->currencies); $currencies_array = array(); while (list($key, $value) = each($currencies->currencies)) {
  • 9. $currencies_array[] = array(‘id’ => $key, ‘text’ => $value['title']); } $hidden_get_variables = ”; reset($_GET); while (list($key, $value) = each($_GET)) { if ( ($key != ‘currency’) && ($key != zen_session_name()) && ($key != ‘x’) && ($key != ‘y’) ) { $hidden_get_variables .= zen_draw_hidden_field($key, $value); } } } $content = zen_draw_form(‘currencies’, zen_href_link(basename(ereg_replace(‘.php’,”, $PHP_SELF)), ”, $request_type, false), ‘get’); $content .= zen_draw_pull_down_menu(‘currency’, $currencies_array, $_SESSION['currency'], ‘onchange=”this.form.submit();” style=”width: 100%”‘) . $hidden_get_variables . zen_hide_session_id(); $content .= ‘</form>’; echo $content; ?>
  • 10. 语言选择的代码: <?php if (!isset($lng) || (isset($lng) && !is_object($lng))) { $lng = new language; } $lng_cnt = 0; while (list($key, $value) = each($lng->catalog_languages)) { $content .= ‘<a href=”‘ . zen_href_link($_GET['main_page'], zen_get_all_get_params(array(‘language’, ‘currency’)) . ‘language=’ . $key, $request_type) . ‘”>’ . zen_image(DIR_WS_LANGUAGES . $value['directory'] . ‘/images/’ . $value['image'], $value['name']) . ‘</a>&amp;nbsp;&amp;nbsp;’; $lng_cnt ++; if ($lng_cnt >= MAX_LANGUAGE_FLAGS_COLUMNS) { $lng_cnt = 0; $content .= ‘<br />’; } } echo $content; ?> 经过以上的替换,tpl_header.php 和 tpl_footer.php 中所有的外部链接都应该替 换为你自己的链接了。
  • 11. 如果还有类似 http://www.domainname.com/osc/index.php?cPath=37_28 的链 接,这是单个商品的链接,可以删除,或改成你自己的商品链接。 10. 下一步,将 tpl_header.php 和 tpl_footer.php 这两个文件中的文字,替换为 PHP 代码,以支持多语言。 如果你只用单一语言,直接修改为你需要的文字即可。例如, 类似 “创建帐号” 改为 <?php echo HEADER_TITLE_CREATE_ACCOUNT; ?> 类似 “商品分类” 改为 <?php echo HEADER_TITLE_CATALOG; ?> 类似 “登出” 改为 <?php echo HEADER_TITLE_LOGOFF; ?> 类似 “我的帐号” 改为 <?php echo HEADER_TITLE_MY_ACCOUNT; ?> 类似 “登录” 改为 <?php echo HEADER_TITLE_LOGIN; ?> 类似 “购物车中的货品” 改为 <?php echo HEADER_TITLE_CART_CONTENTS; ?> 类似 “结帐” 改为 <?php echo HEADER_TITLE_CHECKOUT; ?> 类似“搜索”改为 <?php echo BOX_HEADING_SEARCH; ?> 类似“高级搜索”改为 <?php echo BOX_SEARCH_ADVANCED_SEARCH; ?> 类似 “特价商品” 改为 <?php echo CATEGORIES_BOX_HEADING_SPECIALS; ?> 类似 “新进商品” 改为 <?php echo CATEGORIES_BOX_HEADING_WHATS_NEW; ?>
  • 12. 类似 “推荐商品” 改为 <?php echo CATEGORIES_BOX_HEADING_FEATURED_PRODUCTS; ?> 类似 “所有商品” 改为 <?php echo CATEGORIES_BOX_HEADING_PRODUCTS_ALL; ?> 类似 “联系我们” 改为 <?php echo BOX_INFORMATION_CONTACT; ?> 类似 “货币” 改为 <?php echo BOX_HEADING_CURRENCIES; ?> 类似 “语言” 改为 <?php echo BOX_HEADING_LANGUAGES; ?> 还有一些可能用到的代码: <?php echo TEXT_YOUR_IP_ADDRESS . ‘ ‘ . $_SERVER['REMOTE_ADDR']; ?> <?php echo FOOTER_TEXT_BODY; ?> <div>Parse Time: <?php echo $parse_time; ?> – Number of Queries: <?php echo $db->queryCount(); ?> – Query Time: <?php echo $db->queryTime(); ? ></div> 经过以上的十步操作,基本形成了网站的外观~