以下以最新版Wordpress Version 2.9.1为例
1.修改模版
1.1 不同分类使用不同模版
引用
以建立promotion和tournament两个分类为例:
假设它们的分类ID--category id分别为2、3,
wordpress存放路径为 htdocs\wordpress\
那么在文件夹wordpress\wp-content\themes\your-theme下
复制两个category.php模板文件,重命名为category-2.php和category-3.php
这样分别修改两个模版文件,即可定制出你需要的、独特的分类页面
1.2 不同页面使用不同模版
引用
再来定制不同pages的模板,以about页面为例:
复制文件夹wordpress\wp-content\themes\yourtheme下page.php模版文件
重命名为about.php,
注意在此文件最顶端加上如下代码,否则在后台管理面板读不到:
<?php
/*
Template Name: about
*/
?>
然后在管理后台->Pages->Edit 编辑about页面,
在Template模板下拉菜单中选择about,
保存即可
1.3 不同日志使用不同模版
引用
例如为日志http://localhost/wordpress/?p=4应用特别的模板:
复制文件夹wordpress\wp-content\themes\yourtheme下single.php模版文件
重命名为single-4.php,按需求进行单独修改
打开single.php模版文件
将其中的所有代码以如下代码包裹,形如
<?php
$current_cat = get_the_category();
$current_single_file = TEMPLATEPATH . '/single-'.$current_cat[0]->cat_ID.'.php';
if ( is_file($current_single_file) ) {
include($current_single_file);
} else {
?>
此处为原来single.php中的所有代码
<?php } ?>
保存即可
以下 2.优化url 作废,更好的方法见更新
2.优化url
引用
目前url形如:
Post
http://localhost/wordpress/?p=4
Category
http://localhost/wordpress/?cat=3
Page
http://localhost/wordpress/?page_id=2
优化后url形如:
Post
单级分类 http://localhost/wordpress/promotion/your-promotion-name/
多级分类 http://localhost/wordpress/promotion/sub-promotion/your-promotion-name/
Category
单级分类 http://localhost/wordpress/promotion/
多级分类 http://localhost/wordpress/promotion/sub-promotion/
Page
单级分类 http://localhost/wordpress/about/
多级分类 http://localhost/wordpress/about/the-history/
在管理后台->Settings->Permalinks->Common settings 中选择Custom Structure
并填写上 /%category%/%postname%/
保存,此时我们的url应该形如:
Post
单级分类 http://localhost/wordpress/promotion/your-promotion-name/
多级分类 http://localhost/wordpress/promotion/sub-promotion/your-promotion-name/
Category
单级分类 http://localhost/wordpress/category/promotion/
多级分类 http://localhost/wordpress/category/promotion/sub-promotion/
Page
单级分类 http://localhost/wordpress/about/
多级分类 http://localhost/wordpress/about/the-history/
此时存在2个问题
1.Category的url中存在category/部分,出于优化考虑需要去除
2.Post的多级分类url链接打开后显示404 Not Found (单级分类链接是好的)
解决办法
1.用插件 WP No Category Base Version 0.7 | By iDope 去除category/部分
2.修改htdocs\wordpress文件夹下.htaccess文件
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
# @zycbob added one line below
# 只支持二级分类,三级或更多级分类需要分开写RewriteRule
# 增改分类时需要修改下边的正则部分
# 增改分类或永久链接时,Wordpress可能会重新生成.htaccess文件
RewriteRule ^(promotion|tournament)/[^/]+/(.+)$ /wordpress/index.php/$1/$2 [L]
RewriteBase /wordpress/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
# END WordPress
2.优化url(更新)
引用
目前url形如:
Post
http://localhost/wordpress/?p=4
Category
http://localhost/wordpress/?cat=3
Page
http://localhost/wordpress/?page_id=2
优化后url形如:
Post
单级分类 http://localhost/wordpress/promotion/your-promotion-name.html
多级分类 http://localhost/wordpress/promotion/sub-promotion/your-promotion-name.html
Category
单级分类 http://localhost/wordpress/promotion
多级分类 http://localhost/wordpress/promotion/sub-promotion
Page
单级分类 http://localhost/wordpress/about
多级分类 http://localhost/wordpress/about/the-history
在管理后台->Settings->Permalinks->Common settings 中选择Custom Structure
并填写上 /%category%/%postname%.html
保存,此时我们的url应该形如:
Post
单级分类 http://localhost/wordpress/promotion/your-promotion-name.html
多级分类 http://localhost/wordpress/promotion/sub-promotion/your-promotion-name.html
Category
单级分类 http://localhost/wordpress/category/promotion
多级分类 http://localhost/wordpress/category/promotion/sub-promotion
Page
单级分类 http://localhost/wordpress/about
多级分类 http://localhost/wordpress/about/the-history
此时存在1个问题
1.Category的url中存在category/部分,出于优化考虑需要去除
解决办法
1.用插件 WP No Category Base Version 0.7 | By iDope 去除category/部分