文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>WordPress-2次开发常用函数

WordPress-2次开发常用函数

时间:2010-04-16  来源:yuling520169

全函数列表请参见这里:《WordPress模板标签Template_Tags》
这里只列出最常用的几个。先是重要的bloginfo(),不直接echo数值的函数为get_bloginfo();恩,不少函数都是按照这个规则写的,PS:并不是全部!echo出函数值的函数为xxx()的话,那么不echo出结果值的的函数为get_xxx()。
该函数范围的是WordPress的配置参数,主要参数和值举例如下,常用的黑体标出:

admin_email = admin@example
atom_url = http://example/home/feed/atom
charset = UTF-8
comments_atom_url = http://example/home/comments/feed/atom
comments_rss2_url = http://example/home/comments/feed
description = Just another WordPress blog
home = http://example/home这个是网站首页地址
html_type = text/html
language = en-US
name = Testpilot网站名称
pingback_url = http://example/home/wp/xmlrpc.php
rdf_url = http://example/home/feed/rdf
rss2_url = http://example/home/feed
rss_url = http://example/home/feed/rss
siteurl = http://example/home也是网站地址
stylesheet_directory = http://example/home/wp/wp-content/themes/largo
stylesheet_url = http://example/home/wp/wp-content/themes/largo/style.css主题文件夹下的style.css地址
template_directory = http://example/home/wp/wp-content/themes/largo主题包地址
template_url = http://example/home/wp/wp-content/themes/largo
text_direction = ltr
url = http://example/home
version = 2.7
wpurl = http://example/home/wp
举例,bloginfo(”wpurl “)会输出“http://example/home/wp”。


下边是主题中的几个常用函数。

< ?php get_header();//调用header.php ?>
< ?php get_sidebar();//调用sidebar.php ?>
< ?php get_footer();//调用footer.php ?>
//下边就比较多了,先来分类的。
< ?php wp_list_categories( $args ); ?>
< ?php $args = array(
    'show_option_all'    => ,
    'orderby'            => 'name',
    'order'              => 'ASC',
    'show_last_update'   => 0,
    'style'              => 'list',
    'show_count'         => 0,
    'hide_empty'         => 1,
    'use_desc_for_title' => 1,
    'child_of'           => 0,
    'feed'               => ,
    'feed_type'          => ,
    'feed_image'         => ,
    'exclude'            => ,
    'exclude_tree'       => ,
    'include'            => ,
    'current_category'   => 0,
    'hierarchical'       => true,
    'title_li'           => __( 'Categories' ),
    'number'             => NULL,
    'echo'               => 1,
    'depth'              => 0
); ?>
//我估计这个是参数最复杂的一个函数了,改函数的用途自然是输出分类,对了,WordPress最多支持4级分类。
//另外经常用到的就是get_the_category(),例:
< ?php
foreach((get_the_category()) as $category) {
    echo $category->cat_name . ' ';
}
?>
可以在循环读取分类后,输出每个分类的名称,该项全部变量为:
cat_ID
    the category id (also stored as 'term_id') 分类ID
cat_name
    the category name (also stored as 'name') 分类名称
category_nicename
    a slug generated from the category name (also stored as 'slug') slug名称
category_description
    the category description (also stored as 'description') 分类描述
category_parent
    the category id of the current category's parent. '0' for no parents. (also stored as 'parent') 父分类id
category_count
    the number of uses of this category (also stored as 'count') 分类包含的日志数。
//接下去是判断分类的,通常用在sidebar和single里用来判断当前内容的分类信息。
< ?php in_category( $category, $_post ) ?>
//例子:
< ?php
if ( in_category( 'pachoderms' )) {
        // 分类pachoderms
} elseif ( in_category( array( 'Tropical Birds', 'small-mammals' ) )) {
        // 分类Tropical Birds和small-mammals
}  elseif ( in_category( array( '1', '5' ) )) {
        // 分类1,5
} else{
        // & c.
}
?>
//page页的,Displays a list of pages in a select (i.e dropdown) box with no submit button. 输入全部page的下拉选择框。
< ?php wp_dropdown_pages( $args ); ?>
//$args默认设置,恩,只介绍常用的。
< ?php $args = array(
    'depth'            => 0,
    'child_of'         => 0,//父类page的ID
    'selected'         => 0,
    'echo'             => 1,
    'name'             => 'page_id',//page_id
    'show_option_none' => //是否列出空项
    'exclude'          => //不包含的page_id
    'exclude_tree'     => //不包含某个page_id为顶点的page树
);?>
//Displays a list of WordPress Pages as links.直接输出page页,当然是带链接的。
< ?php wp_list_pages( $args ); ?>
< ?php $args = array(
    'depth'        => 0,
    'show_date'    => ,
    'date_format'  => get_option('date_format'),
    'child_of'     => 0,
    'exclude'      => ,
    'title_li'     => __('Pages'),//列表前的标题,不要就留空。
    'echo'         => 1,
    'authors'      => ,//作者
    'sort_column'  => 'menu_order, post_title',
    'link_before'  => ,//内容输出前的内容
    'link_after'   => ,//内容输出后的内容,这2个通常用来做custom化。
    'exclude_tree' =>
); ?>
//友情链接部分
< ?php wp_list_bookmarks( $args ); ?>
< ?php $args = array(
    'orderby'          => 'name',
    'order'            => 'ASC',
    'limit'            => -1,
    'category'         => ,
    'category_name'    => ,
    'hide_invisible'   => 1,
    'show_updated'     => 0,
    'echo'             => 1,
    'categorize'       => 1,
    'title_li'         => __('Bookmarks'),
    'title_before'     => '<h2>',
    'title_after'      => '</h2>',
    'category_orderby' => 'name',
    'category_order'   => 'ASC',
    'class'            => 'linkcat',
    'category_before'  => '<li id=\"%id\" class=\"%class\">',
    'category_after'   => '</li>'
);
//相对来说比较复杂的函数,不过基本不传任何参数,使用默认的就行。
//不怎么用的的wp_list_comments()回复列表函数,参数也不介绍了~
< ?php wp_list_comments();?>

接着嘛,是万用数据库查询函数,记住不是query_posts()而是WP_Query()哦!这个函数很强大,具体参照《WordPress-WP_Query》,里边也有讲为何不建议使用query_posts()的原因。

//最后是设计到具体内容后的函数部分,这部分通常是在循环体内,比如:
< ?php if (have_posts()) : while (have_posts()) : the_post(); ?>
//code here~
< ?php endif; ?>
也有带循环的:
< ?php while (have_posts()) : the_post(); ?>
//code here~
< ?php endwhile; ?>
the_ID()
the_title() 标题,常用
the_title_attribute() (Version 2.3)
single_post_title()
the_title_rss()
the_content() 内容,常用
the_content_rss()
the_excerpt() 日志中有more标签时输出more前的内容,参数是查看全部内容的链接名,重要
the_excerpt_rss()
next_post_link() 后一个日志的链接,重要
previous_post_link() 前一个日志的链接,重要
next_posts_link() 后xx个日志,基本上用不到这个,而用WP-PageNavi插件实现
previous_posts_link() 同上
posts_nav_link()
sticky_class() (Version 2.7)
the_meta()
the_tags() (Version 2.3) 日志tag,重要
the_time() 时间
the_date() 日期
the_permalink() 固定链接
wp_loginout() 登出
wp_register() 注册用户

下边么,介绍个主题,sandbox,用于主题制作最好的模板了,恩,搭配前边所有的内容,自己做个主题应该是没有任何问题了。~

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载