wordpress高级教程
1.获取博客信息
<?php bloginfo(''); ?> // 显示博客的信息 /* 部分常用参数: default:默认 name:名称 description:说明 url、home、siteurl:网址 charset:网页的编码方式 stylesheet_url:css 文件地址 version:博客所使用的 WordPress 的的版本 */
例如:
<?php bloginfo('description'); ?>
2.列表显示页面链接
<?php wp_list_pages(''); ?> /* 部分常用参数: post_title:按标题字母顺序排列(默认) post_date:按创建时间排序 post_modified:按最后修改时间排序 ID:按照 id 排序 post_author:按照作者 id 排序
depth: 限制显示列表的层数
title_li: 是一个用来定制化页面链接列表的标题的参数 */
例如:
<?php wp_list_pages(‘title_li=<h2>Pages</h2>’); ?>
3.获取日志内容页系相关信息
<?php the_ID(); ?>:特定内容页(Post)自动生成的 ID(无参数) <?php the_permalink() ?>:得到内容页(Post) URL(无参数) <?php the_title(); ?>:显示或返回内容页(Post)标题 用法: <?php the_title('before','after',display); ?> before:(字符串)标题前面的文字,默认情况下不显示, after:(字符串)标题前面的文字,默认情况下不显示 display:(布尔)当布尔值为真时,显示标题(默认),当布尔值为假时,得到标题的值但不显示 例如: <a href=”<?php the_permalink(); ?>“><?php the_title(); ?></a>
<?php the_time('F j S, Y') ?>:日志发表的日期 格式:月日年
<?php the_author() ?>:显示日志的作者(无参数)
<?php the_content('Read the rest of this entry »'); ?>:日志的内容
用法: <?php the_content('more_link_text', strip_teaser, ''); ?>
more_link_text:(字符串),当日志有 more 标记时,链接到日志页面
strip_teaser:(布尔),日志“更多”链接的隐藏(true)或显示(false)(默认)
<?php the_tags('Tags: ', ', ', '<br />'); ?>:日志的 tag 标签
用法 : <?php the_tags ( 'before' , 'separator' , 'after' ); ?>
before:(字符串)用在标签的前面,默认为“tags:”
separator:(字符串)分隔符,默认情况下不显示
after:(字符串)用在标签的后面,默认情况下不显示
<?php edit_post_link('Edit', '', ' | '); ?>:当用户已登录并具有权限时,所显示的日志编辑链接
<?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?>:日志的评论情况
<?php next_posts_link('« Older Entries') ?>:较早日志页面的链接
<?php previous_posts_link('Newer Entries »') ?>:较新日志页面的链
<?php wp_get_archives('type=monthly');?>:按月显示内容存档
用法:<?php wp_get_archives('type=&limit= &format=&before=&after=&show_post_count=')
参数及值:
type :(字符串)显示档案的方法
l yearly :年
l monthly (默认) :月
l daily :日
l weekly :周
limit :(字符串)显示文章数目的限制,默认情况下无限制
format:(字符串)文档清单的格式
html:添加 HTML 列表( <li> )标签(默认)
option:添加选择( <select> )或下拉式选项( <option> )标记
link:添加链接(<link>)标记
custom:自定义列表使用之前和之后的字符串。
before:(字符串)当有 format 标记时用在 format 前面
after:(字符串)当有 format 标记时用在 format 后面
show_post_count:(布尔)是否显示文档里面日志的数目,1 显示 0 不显示(默认)
<?php wp_tag_cloud(''):?>:显示 tag 标签
用法:
<?php wp_tag_cloud('smallest=,
largest=,unit=,number=,format=,orderby=name,order=ASC,exclude=,include='); ?>
参数:
smallest :( 整数 )文字的最小尺寸(unit 给予单位)
largest:( 整数 )文字的最大尺寸(unit 给予加单位)
unit :( 字符串 )给 smallest 和 largesti 添加的单位
number:( 整数 )显示的 tag 的数目
format :( 字符串 )标签云显示的格式值:
l flat:由空格分开(默认)
l list:以有序列表排列
l array:标签被放在一个数组里面,并且函数将标签云返回为调用。注意:数组是返回,而不显示
orderby:( 字符串 )标签的排列的顺序值:
l name:名字(默认)
l count:数字
order :( 字符串 )排序的次序(要大写才有效)值:
l ASC:升序(默认)
l DESC:降序
l RAND:随机
exclude:( 字符串 )排除某个特定的标签
include:( 字符串 )只包含某个特定的标签
<?php get_posts(' '); ?>:得到日志的信息
用法:<?php get_posts('numberposts=, offset=, category=, category_name=, tag=, orderby= ,……'); ?> 参数及值:
numberposts:( 整数 )返回日志的数目,默认值:5
offset:( 整数 )最新文章的起始点,默认值:0
category:( 整数 )只显示这一类别的文章(根据 ID),默认值:无
category_name:( 字符串 )只显示这一类别的文章(根据名称或缩写),默认值:无
tag:( 字符串 )只显示这一标签的文章,若有多个标签,用逗号隔开,则一个不显示,应用空格隔开
orderby:( 字符串 )文章的排列顺序(默认:post_date) 值:
l author:作者 id
l category:分类 id
l content:内容 id
l date:日期 id
l ID:文章本身的 id
l menu_order:按菜单命令(只应用于网页 page)
l mime_type:按 MIME 类型(只应用于带附件的)
l modified:最后修改的日期
l name:按缩略名
l parent:按父文章的 id
l password:按密码
l rand:随机
l status:按状态
l title:按标题
l type:按类型
order:( 字符串 )排序的次序(要大写才有效) 值:
l ASC:升序
l DESC:降序(默认)
include:( 字符串 )显示拥有某些 ID 的文章,多个以逗号、/、空格隔开,默认值:无
exclude:( 字符串 )排除拥有某些 ID 的文章,多个以逗号、/、空格隔开,默认值:无
meta_key 和 meta_value:( 字符串 )只显示那些有特定键值对的自定义域,(如果要用的话,两个值一起),默认值:无
post_type:( 字符串 )文章的类型值:
l post(默认)
l page
l attachment
l any
post_status:( 字符串 )查看文章的特殊状态 值:
l publish(默认)
l private
l draft
l future
l inherit
post_parent:( 整数 )只显示这个拥有这个 id 的文章的子文章,默认值:无
nopaging:( 布尔 )启用或禁用分页,默认值:无
例如:
<?php $myposts=get_posts('numberposts=10$offset=1');foreach($myposts
as $post):?><li><a href="<?php the_permalink();?>"><?php the_title();?></a></li><?php
endforeach;?>:显示从第一篇开始取 10 篇日志的列表
4.获取分类信息
<?php wp_list_categories('sort_column=&optioncount=&hierarchical=&……');?>: 按照字符顺序显示分类列表 参数show_option_all :( 字符串 )当 style 设置为 list 的时候,会有一个值来显示到所有分类的链接,默认是不显示所有链接 orderby:( 字符串 )排序的依据,默认值:name 值: l ID l name(默认) l count order:ASC(升序)或 DESC(降序) show_last_update:是(真)否(假)显示最后修改时间,1 为真,0(默认)为假 style:( 字符串 )显示分类的方式,值:list(默认);none show_count:( 布尔 )是(真)否(假)显示日志的数目,1 为真,0(默认)为假 hide_empty:( 布尔 )是(真)否(假)隐藏无日志的分类,1(默认)为真,0 为假 use_desc_for_title:( 布尔 )是(真)否(假)给标题设置分类信息,1(默认)为真,0 为假 child_of:( 整数 )只显示这个分类的子分类,没有默认值 exclude:除了 include:只包括 hierarchical:( 布尔 )是(真)否(假)让子分类显示时缩进,1(默认)为真,0 为假 number:( 整数 )设置显示的数目,默认无限制 echo:( 布尔 )得到的结果是(真)否(假)存在一个变量中,1(默认)为真,0 为假 depth:( 整数 )显示分类的深度,0(默认)为无限制
5.获取其他信息
<?php wp_list_bookmarks('categorize=&title_after=&title_before=&……');?>:显示友情链接 <?php wp_list_pages('sort_column=menu_order&depth=3&title_li='); ?>:显示深度到 3 的页面链接 <?php include(TEMPLATEPATH. '/searchform.php'); ?>:调用 searchform 的文件生成搜索栏 <?php get_calendar(); ?>:调用 WordPress 自带的日历
6.基本条件判断
· is_home() : 是否为主页 · is_single() : 是否为内容页(Post) · is_page() : 是否为内容页(Page) · is_category() : 是否为 Category/Archive页 · is_tag() : 是否为 Tag存档页 · is_date() : 是否为指定日期存档页 · is_year() : 是否为指定年份存档页 · is_month() : 是否为指定月份存档页 · is_day() : 是否为指定日存档页 · is_time() : 是否为指定时间存档页 · is_archive() : 是否为存档页 · is_search() : 是否为搜索结果页 · is_404() : 是否为 “HTTP 404: Not Found” 错误页 · is_paged() : 主页/Category/Archive页是否以多页显示
1.Header部分常用到的 PHP函数
· <?php bloginfo(’name’); ?> : 博客名称(Title) · <?php bloginfo(’stylesheet_url’); ?> : CSS文件路径 · <?php bloginfo(’pingback_url’); ?> : PingBack Url · <?php bloginfo(’template_url’); ?> : 模板文件路径 · <?php bloginfo(’version’); ?> : WordPress版本 · <?php bloginfo(’atom_url’); ?> : Atom Url · <?php bloginfo(’rss2_url’); ?> : RSS 2.o Url · <?php bloginfo(’url’); ?> : 博客 Url · <?php bloginfo(’html_type’); ?> : 博客网页Html 类型 · <?php bloginfo(’charset’); ?> : 博客网页编码 · <?php bloginfo(’description’); ?> : 博客描述 · <?php wp_title(); ?> : 特定内容页(Post/Page)的标题
2.模板常用的 PHP函数及命令
· <?php get_header(); ?> : 调用Header模板 · <?php get_sidebar(); ?> : 调用Sidebar 模板 · <?php get_footer(); ?> : 调用Footer模板 · <?php the_content(); ?> : 显示内容(Post/Page) · <?php if(have_posts()) : ?> : 检查是否存在Post/Page · <?php while(have_posts()) : the_post(); ?> : 如果存在Post/Page则予以显示 · <?php endwhile; ?> : While 结束 · <?php endif; ?> : If 结束 · <?php the_time(’字符串’) ?> : 显示时间,时间格式由“字符串”参数决定,具体参考PHP手册 · <?php comments_popup_link(); ?> : 正文中的留言链接。如果使用 comments_popup_script() ,则留言会在新窗口中打开,反之,则在当前窗口打开 · <?php the_title(); ?> : 内容页(Post/Page)标题 · <?php the_permalink() ?> : 内容页(Post/Page) Url · <?php the_category(’, ‘) ?> : 特定内容页(Post/Page)所属Category · <?php the_author(); ?> : 作者 · <?php the_ID(); ?> : 特定内容页(Post/Page) ID · <?php edit_post_link(); ?> : 如果用户已登录并具有权限,显示编辑链接 · <?php get_links_list(); ?> : 显示Blogroll 中的链接 · <?php comments_template(); ?> : 调用留言/回复模板 · <?php wp_list_pages(); ?> : 显示Page列表 · <?php wp_list_categories(); ?> : 显示Categories列表 · <?php next_post_link(’ %link ‘); ?> : 下一篇文章链接 · <?php previous_post_link(’%link’); ?> : 上一篇文章链接 · <?php get_calendar(); ?> : 日历 · <?php wp_get_archives() ?> : 显示内容存档 · <?php posts_nav_link(); ?> : 导航,显示上一篇/下一篇文章链接 · <?php include(TEMPLATEPATH . ‘/文件名’); ?> : 嵌入其他文件,可为定制的模板或其他类型文件
3.与模板相关的其他函数
· <?php _e(’Message’); ?> : 输出相应信息 · <?php wp_register(); ?> : 显示注册链接 · <?php wp_loginout(); ?> : 显示登录/注销链接 · <!–next page–> : 将当前内容分页 · <!–more–> : 将当前内容截断,以不在主页/目录页显示全部内容 · <?php timer_stop(1); ?> : 网页加载时间(秒) · <?php echo get_num_queries(); ?> : 网页加载查询量