目录
准备页面:
一、wordpress导航菜单调用调用标签
二、wordpress首页模板主题开发调用标签
三、wordpress列表页模板主题开发(聚合页)调用标签
四、wordpress内容页模板主题开发(文章页)调用标签
五、wordpress独立单页调用标签
六、wordpress系统公共产数调用标签
七、wordpress自定义字段调用标签
八、wordpress搜索页调用标签
九、wordpress Tag调用标签
十、wordpress自定义评论留言表单调用标签
十一、wordpress自定义会员登陆注册调用标签
十二、wordpress自定义侧边栏制作
准备页面说明(模板文件):
header.php 头部默认公共模板
footer.php 底部默认公共模板模板
sidebar.php 侧边栏目默认模板
searchform.php 搜索表单默认模板(不是搜索页模板哦)
index.php 首页默认主题模板
category.php 分类列表页默认主题模板
category-别名或id.php 分类列表页 指定模板
single.php 文章内容默认主题模板
single-别名或id.php 文章 指定模板
singular.php 没有对应模板的文章的默认模板
page.php 单页默认主题模板
page-别名或id.php 单页面 指定模板
archive.php 存档模板
tag.php 标签模板
author.php 作者模板(访问该作者详情时)
404.php 404模板
search.php 搜索页默认模板
2-1、头部制作
1、制作style.css
1-1、移动images文件夹下面的css到主题文件夹下面,重命名为style.css
添加主题版权信息:
/*
Theme Name: 主题名称
Theme URI: https://www.nongyejing.com
Description: 主题描述
Author: 主题作者
Author URI: https://www.nongyejing.com
Version: 1.0
Tags: 标签1,标签2
*/
如果后台乱码:要修改,css 的页面属性,如果网页出现乱码,要修改index.php的页面属性。修改——页面属性——编码。
后台缩略图:在主题文件来下面放一个缩略图图片,缩略图的名字必须是:screenshot.png或者screenshot.jpg(1200*900)做主题封面
1-2、制作index.php
1-2-1、修改css文件路径
Style.css路径调用:<?php bloginfo( 'stylesheet_url' ); ?>
jS调用:<?php echo get_template_directory_uri(); ?>/js/jquery.js
调用顶部标签:<?php get_header();?>
调用底部标签:<?php get_footer();?>
侧边栏调用:<?php get_sidebar()?>
搜索form表调用:<?php get_searchform()?>
模板调用:<?php get_template_part('模板名');?>
底部菜单调用:<?php wp_nav_menu( array( 'theme_location' =>'footmenu','container' => '','menu_class' => 'navigation','menu_id' => "nav_sgBhgn",'depth' => 2, ) ); ?>
版权信息:Copyright © 2012<a href=" <?php echo get_option('home'); ?>"> <?php bloginfo('name'); ?></a>
缩略图的调用:<img src="<?php echo get_first_image(); ?>" alt="<?php the_title(); ?>" />
网站标题:<?php if (is_home()||is_search()) { bloginfo('name'); } else { wp_title(''); print " - "; bloginfo('name'); } ?>
HOOK函数:<?php wp_head(); ?>
网站域名地址:<?php bloginfo('url');?>
获取主题目录:
//第一种方法
<?php bloginfo('template_url');?>
//第二种方法
<?php bloginfo('template_directory'); ?>
//第三种方法
<?php echo get_template_directory_uri(); ?>
调用侧边栏标签:<?php get_sidebar();?>
调用特定分类下的文章:直接复制到要显示分类的地方。cat=1为id=1下面的文章,showposts=5为显示5片文章。
<?php if (have_posts()) : ?>
<?php query_posts('cat=1' . $mcatID. '&caller_get_posts=1&showposts=5'); ?>
<?php while (have_posts()) : the_post(); ?>
<?php endwhile;?>
<?php endif; wp_reset_query(); ?>
文章标题的调用(控制字数):<a href="<?php the_permalink() ?>"> <?php echo mb_strimwidth(get_the_title(), 0, 32, ''); ?></a>
标题不控制字数:<?php the_title(); ?>
更多按钮链接,直接进入该分类页面地址调用::<?php echo get_option('home'); ?>/?cat=1
产品树形结构调用: <?php wp_list_categories('title_li=0&orderby=name&show_count=0&depth=3'); ?>
wordpress钩子调用自定义link.php:<? php get_template_part('link' ); ?>
友情链接调用:<? php wp_list_bookmarks(参数);?>
友情链接只在首页显示:
<?php if ( is_home()) { ?>
<?php wp_list_bookmarks('title_li=&categorize=0&orderby=rand&limit=24'); ?>
<?php } ?>
分页代码:<?php kriesi_pagination($query_string); ?>
基本条件判断函数:
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 页是否以多页显示
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) 的标题
模板常用的 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 . '/文件名'); ?>:嵌入其他文件,可为定制的模板或其他类型文件
与模板相关的其他函数:
<?php _e('Message'); ?>:输出相应信息
<?php wp_register(); ?>:显示注册链接
<?php wp_loginout(); ?>:显示登录/注销链接
<!–next page–>:将当前内容分页
<!–more–>:将当前内容截断,以不在主页/目录页显示全部内容
<?php timer_stop(1); ?>:网页加载时间(秒)
<?php echo get_num_queries(); ?>:网页加载查询量
---------------------
一、wordpress导航菜单调用调用标签
<? wp_nav_menu() ?> 方法一(默认菜单调用方法)
<?php 方法二(默认菜单调用方法,可更改样式)
wp_nav_menu( array(
'theme_location' => '', //导航别名
'menu' => '', //期望显示的菜单
'container' => 'div', //容器标签
'container_class' => '', //ul父节点class值
'container_id' => '', //ul父节点id值
'menu_class' => 'menu', //ul节点class值
'menu_id' => '', //ul节点id值
'echo' => true, //是否输出菜单,默认为真
'fallback_cb' => 'wp_page_menu', //菜单不存在时,返回默认菜单,设为false则不返回
'before' => '', //链接前文本
'after' => '', //链接后文本
'link_before' => '', //链接文本前
'link_after' => '', //链接文本后
'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>', //如何包装列表
'depth' => 0, //菜单深度,默认0
'walker' => '' //自定义walker
) );
?>
二、wordpress首页模板主题开发调用标签
1、wordpress首页调用指定栏目循环标签
/**其中cat=20代表分类ID,posts_per_page=4代表显示几条记录 **/
<?php query_posts('cat=20&posts_per_page=4'); while(have_posts()): the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>" target="_blank"> //链接
<img src=" <?php $url = wp_get_attachment_url(get_post_thumbnail_id($post->ID)); echo $url; ?>" title="<?php the_title();?>" /> //特色图片缩略图
<h2><?php the_title();?></h2> //文章标题一
<h2><?php echo mb_strimwidth(get_the_title(), 0, 16, ''); ?></h2> //可控字数:文章标题二
<p><?php the_excerpt(); ?></p> //文章简介方法一
<p><?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 200,"……"); ?></p> //可控字数:文章简介方法二
<p><?php the_date_xml()?></p> //文章发布时间 方法一
<p><?php the_time('F d, Y') ?></p> //文章发布时间 方法二
<p><?php the_time('y-m-d H:i:s') ?></p> //文章发布时间 方法三
</a>
</li>
<?php endwhile; wp_reset_query(); ?>
2、调用指定分类栏目名
//数字2指的是栏目id
<?php echo get_cat_name(2);?>
3、调用指定分类的栏目链接:
//数字2指的是栏目id
<?php echo get_category_link(2); ?>
4、调用指定分类的栏目别名:
//2为栏目id
<?php $cat = get_category(2);echo $cat->slug;?>
5、调用指定栏目子菜单
//child_of=3 为调用指定分类的ID号,
//sort_column=name 分类名
//hide_empty=0 是否隐藏没有文章的分类
<?php wp_list_cats('sort_column=name&optioncount=0&hierarchical=1&hide_empty=0&child_of=3'); ?>
6、调用指定id的文章
输出ID为13的文章标题
<?php $id=13; $title = get_post($id)->post_title; echo $title; ?>
7、获取指定单页栏目id的标题与内容
// 获取单页栏目id为6的栏目名
<?php
$page_id = 6;
$page_data = get_page($page_id);
echo $page_data -> post_title;
?>
// 获取单页栏目id为6的栏目内容
<?php
$page_id = 6;
$page_data = get_page($page_id);
echo apply_filters('the_content', $page_data -> post_content);
?>
8、友情链接调用标签
注:方法一与方法二为同一种方法,只不过一个输出默认样式,另一个可根据要求设置更灵活.
方法一、<?php wp_list_bookmarks( $args );?>
方法二、
<?php
$args=array(
'orderby' => 'name', //根据名称排序
'order' => 'ASC', //升序或降序
'limit' => -1, //设置输出链接的最大条数 -1为输出全部
'category' => '', //字符串,链接分类id 有显示分类下链接 没有显示全部链接
'category_name' => '', //字符串,链接分类名 有在链接前显示该分类名,没有显示所有链接分类名
'hide_invisible' => 1,
'show_updated' => 0,
'echo' => 1,
'categorize' => 1, //布尔型,设置是否按各自分类显示 1 按照分类显示 0显示全部链接
'title_li' => __('Bookmarks'), //字符串,链接标题的头文字或代码,默认是:Bookmarks设置是否按照列表的方式排列
'title_before' => '', //字符串,分类标题前文字或代码
'title_after' => '', //字符串,分类标题后文字或代码
'category_orderby' => 'name', //字符串,根据分类名称排序
'category_order' => 'ASC', //字符串,分类链接的升降序排列
'class' => 'linkcat', //字符串,链接的class属性
'category_before' => '', //字符串,分类链接前的文字或代码
'category_after' => '', //字符串,分类链接后的文字或代码
);
wp_list_bookmarks( $args );
?>
方法三、<?php get_links_list(); ?>
三、wordpress列表页模板主题开发(聚合页)调用标签
1、wordpress列表页循环调用标签
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<li class=" homebk1-item">
<a href="<?php the_permalink(); ?>"> //链接
<div class="homebk1-img">
<img src="<?php $full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full'); echo $full_image_url[0]; ?>" /> //缩略图(特色图片)
</div>
<h3><?php the_title();?></h3> //标题方法一
<h3><?php wp_trim_words( get_the_title(), 10 );?></h3> //标题方法二 可限制字数
<p><? the_excerpt(); ?></p> //简介方法一
<p><?php wp_trim_words( get_the_excerpt(), 20 );?></p> //简介方法二 可限制字数
</a>
<p><?php the_date_xml()?> </p>
</li>
<?php endwhile;?>
<?php endif; ?>
2、当前分类栏目名、分类栏目id、栏目链接
<?
$category_title= single_cat_title('', false );
$category_id = get_cat_ID($category_title);
$category_link = get_category_link( $category_id );
echo $category_title; //输出当前分类名
echo $category_id; //输出当前分类id
echo $category_link //输出当前分类链接
?>
3、当前分类栏目简介描述(Description)
<?php echo category_description(); ?>
4、当前分类所属的顶级分类栏目的分类名、分类链接
<a href="<?php echo get_category_link(get_category_root_id($cat)); ?>">
<?php echo get_cat_name(get_category_root_id($cat)); ?></a>
5、wordpress分页标签 (方法三:functions添加分页代码)
<? posts_nav_link(); ?> //方法一 官方默认调用方法
<?php if(function_exists('wp_page_numbers')) : wp_page_numbers(); endif; ?> //方法二 需用插件 wp-page-numbers
<?php kriesi_pagination($query_string); ?> //方法三:自定义分页代码,可以根据需要更改分页代码-需在functions添加分页代码
6、栏目页面包屑调用标签
//方法一 直接在需要放置面包屑的地方添加如下代码
<a href="<? bloginfo('url'); ?>">首页</a></li>>
<?
if(is_category()){single_cat_title();}
elseif(is_search()){echo $s;}
elseif(is_single()){
$cat=get_the_category();
$cat=$cat[0];
echo '<a href="'.get_category_link($cat).'">'.$cat->name. ' </a>';
}elseif(is_page()){
the_title();
}elseif(is_404()){echo '404错误页面';}
?>
方法二 在functions.php文件下添加如下代码
function wz(){
$cat=get_the_category();
$cat=$cat[0];
$positions = '<li><a href="'.get_category_link($cat).'">'.$cat->name. '</a></li>>';
if(!is_home() ){
echo '<li><a href="'. get_settings('home') .'">'. '首页></a></li>';
if(is_category()){
echo $positions;
}
elseif(is_single()){
echo $positions ;
echo the_title();
}
elseif(is_search()){echo $s;}
elseif(is_page()){
the_title();
}elseif(is_404()){echo '404错误页面';}
}
}
//前台调用代码 <? wz(); ?>
6、调用当前栏目子菜单
在需要调用当前顶级分类栏目的子分类处添加如下代码
<?php
if(is_single()||is_category()) { //如果是文件页面或分类页
if(get_category_children(get_category_root_id(the_category_ID(false)))!= "" ) {//如果有子分类
echo '<ul class="sidebar-list1">';
echo wp_list_categories("child_of=".get_category_root_id(the_category_ID(false)). "&depth=0&hide_empty=0&title_li=&orderby=id&order=ASC");
echo '</ul>';
}else{
//如果没有获取顶级分类
}
}
?>
7、不同分类栏目调用不同的模板
category.php //默认分类模板
方法一
category-10.php //10是分类id categor后跟-id 系统会自动获取与之对应的模板 没有对应模板就找对应模板
方法二
category-别名.php //后台分类目录名称后有一个别名 分类模板category-别名会自动调用别名相同的模板
四、wordpress内容页模板主题开发(文章页)调用标签
<?php the_title(); ?> 1、标题文章内容页调用标签
<?php the_excerpt(); ?> 2、简介文章调用标签
<? the_post_thumbnail(); ?> 3、缩略图文章页(特色图片)调用标签 方法一
<?php the_author(); ?> 4、作者文章页调用标签
<?php the_time('y-m-d H:i:s') ?> 5、发布时间文章也调用标签
<?php the_content(""); ?> 6、文章内容文章页调用标签
<?php the_permalink();?> 7、当前文章页链接地址
<? get_the_id() ?> 8、当前文章页ID
<?php foreach((get_the_category()) as $category){echo $category->cat_name;}?> 9、当前文章所属分类栏目名
<?php foreach((get_the_category()) as $category){echo get_category_link($category);}?> 10、当前文章所属分类栏目链接
<? previous_post_link('上一篇: %link'); ?> <? next_post_link('下一篇: %link'); ?> 11、上一篇、下一篇调用
<?php comments_popup_link('0 条评论', '1 条评论', '% 条评论', '', '评论已关闭'); ?> 12、输出评论数
<?php echo get_avatar( get_the_author_email(), 36 ); ?> 13、调用作者头像
<img src="<?php $full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full'); echo $full_image_url[0]; ?>" alt="" /> 3、特色图片调用标签方法二,只调用图片地址链接
wordpress上一篇下一篇案例
<div class="next">
<div class="shang"><?php if (get_previous_post()) { previous_post_link('上一条: %link');} else {echo "没有了,已经是最后文章";} ?></div>
<div class="xia"><?php if (get_next_post()) { next_post_link('下一条: %link');} else {echo "没有了,已经是最新文章";} ?></div>
</div>
2、wordpress文章内容页面包屑调用标签,同上述列表页调用标签相同
3、文章内容single.php页面,根据文章所属不同分类选择不同的文章页模板(注:新创建content.php为文章默认页面,比如新闻栏目别名为new,新闻文章页为 content-new.php 如果没有该页面就自动调用默认content.php为文章页)
3.1、不同分类下的文章调用不同模板
<? the_post();
//获取当前文章id
$cat=get_the_category(get_the_id());
//获取当前文章分类
$name=$cat[0]->slug;
//加载content-$name.php 指定模板文件不存在 就调用默认文章模板content.php
get_template_part( 'content', $name )
?>
五、wordpress独立单页调用标签
1、不同独立页面调用不同模板
page.php 独立页默认模板文件
page-13.php 方法一 13为独立页id id对应不同页面id即可
page-about.php about为独立页别名 方法同上
2、当前单页栏目名 与 当前单页栏目内容
<?php wp_title('');?> //当前栏目名
<?php the_content(""); ?> //当前栏目内容
六、wordpress系统公共产数调用标签
<? bloginfo('charset'); ?> 调用网站编码
<? bloginfo('name'); ?> 调用网站名称
<? bloginfo('description'); ?> 调用网站描述
<? bloginfo('stylesheet_url'); ?> 调用网站css路径(绝对路径 href="<?php bloginfo('template_url'); ?>/css/abc.css" )
<? wp_head(); ?> wordpress钩子调用公共头部
<? wp_footer(); ?> 调用公共底部
<?php get_sidebar(); ?> 调用默认侧边栏
<?php get_template_part( 'link' ); ?> 调用自定义公共部分link.php
<?php /*Template Name: about*/ ?> 自定义模板调用, 在自定义模板头部添加
<?php echo get_option('home'); ?> 输出网站首页网址|调用系统产数options表中home字段(其他字段同理)
<? wp_loginout(); ?> 登陆|退出 ,获取退出链接(未登录显示登陆)陆
<? wp_register (); ?> 获取注册链接(登陆成功显示管理站点)需在后台开启注册功能
七、wordpress自定义字段调用标签
1、自定义图片字段调用
<?php $image = get_field('pro-img1'); echo $image['url'];?> //pro-img1为自定义图片的字段别名
案列:<img src="<?php $image = get_field('pro-img1'); echo $image['url'];?>" alt="<?php echo $image['alt']; ?>" />
2、自定义字段调用
<?php the_field('pro-cc'); ?> //方法一 pro-cc为自定义字段别名
<?php $key="pro-cc"; echo get_post_meta($post->ID, $key, true); ?> //方法二
获取多个相同自定义字段值
<? $ziduan = get_post_meta($post->ID,'ziduan', false); ?>
<? foreach( $ziduan as $ziduan ){ echo $ziduan }?>
使用插件增加的字段
<?php echo get_field('seo-keywords'); ?>
八、wordpress搜索页调用标签
1、自定义wordpress模板主题搜索框制作
wordpress自定义全站搜索框
<form class="search-form" method="get" action="<?php bloginfo('home'); ?>">
<input type="text" placeholder="搜索..." name="s" />
<button type="submit"> <i class="iconfont icon-search"></i> </button>
</form>
wordpress自定义搜索指定栏目分类 (value="" 为指定分类的id)
<form class="search-form" method="get" action="<?php bloginfo('home'); ?>">
<input type="text" placeholder="搜索..." name="s" />
<input type="hidden" name="cat" value="4,11,9,22,20,10,18,14,12,13,1" />
<button type="submit"> <i class="iconfont icon-search"></i> </button>
</form>
wordpress自定义不搜索该分类下的文章 (value="" 为指定分类的id)
<form class="search-form" method="get" action="<?php bloginfo('home'); ?>">
<input type="text" placeholder="搜索..." name="s" />
<input type="hidden" name="cat" value="-4,-11,-9,-22" />
<button type="submit"> <i class="iconfont icon-search"></i> </button>
</form>
2、wordpress搜索页search.php制作
获取搜索词
<? echo get_search_query()?>
搜索列表页 方法一 直接使用分类列表页循环方式即可
搜索列表页 方法二
<?
if(have_posts()){
while(have_posts() ){
the_post();
?>
<li>
<div class="shijian">
<?php the_time('y-m') ?>
<span><?php the_time('d') ?></span>
</div> <a href="<?php the_permalink(); ?>" title="<?php the_title();?>"><?php the_title();?></a>
<p><? the_excerpt(); ?></p>
<p></p>
</li>
<? }
}else{
echo "没有搜索到文章";
}
?>
九、wordpress Tag调用标签
wordpress tag标签调用,默认方式
<?php wp_tag_cloud(); ?>
带参数方式调用
<?php wp_tag_cloud(‘number=50&orderby=count&order=DESC&smallest=12&largest=12&unit=px’); ?>
smallest:标签文字最小字号,默认为8pt;
largest:标签文字最大字号,默认为22pt;
unit:标签文字字号的单位,默认为pt,可以为px、em、pt、百分比等;
number:调用的标签数量,默认为45个,设置为“0”则调用所有标签;
format:调用标签的格式,可选“flat”、“list”和“array”,默认为“flat”平铺,“list”为列表方式;
orderby:调用标签的排序,默认为“name”按名称排序,“count”则按关联的文章数量排列;
order:排序方式,默认为“ASC”按正序,“DESC”按倒序,“RAND”按任意顺序。
exclude:排除部分标签,输入标签ID,并以逗号分隔,如“exclude=1,3,5,7”不显示ID为1、3、5、7的标签;
include:包含标签,与exclude用法一样,作用相反,如“include=2,4,6,8”则只显示ID为2、4、6、8的标签。
十、wordpress自定义评论留言表单调用标签
1、创建留言模板comments.php 在该模板中添加以下代码 ,在需要使用留言的地方添加 <? comments_template() ?> 调用标签即可
<div>
<h3>评论</h3>
<div>
<ul>
<? if(!comments_open() ){?> //判断评论功能是否已关闭,如果关闭提示 评论功能已经关闭
<li><a href="#respond">评论功能已经关闭</a></li>
<? }else if( post_password_required()){?> //post_password_required()设置输入密码才能查看文章 编辑文章右侧设置密码保护
<li><a href="#respond">请输入密码查看评论内容</a></li>
<? }else if(!have_comments()){?> // 判断当前文章是否有评论
<li><a href="#respond">还没有评论说两句吧</a></li>
<? }else{wp_list_comments(); }?> //获取所有评论
</ul>
</div>
<div>
<? if(get_option('comment_registration') && !is_user_logged_in() ){ ?> // 判断用户是否有登陆
<p>
你必须 <a href="<? echo wp_login_url(get_permalink()); ?>">登陆</a>才可以发布评论
</p>
<? }else if(comments_open()){comment_form();} ?> //输出评论窗口
</div>
</div>
十一、wordpress自定义会员登陆注册调用标签
1、wordpress会员中心链接地址调用标签
<li><? wp_loginout(); ?></li> 如果是登陆状态 显示注销按钮 如果未登陆显示 登陆按钮
<li><? wp_register(); ?></li> 如果是否登陆状态 显示管理站点 否则不显示
<a href="<?php echo site_url('wp-login.php', 'login') ?>">登陆</a> 登陆链接调用标签
<a href="<?php echo site_url('wp-login.php?action=register', 'login') ?>">注册会员</a> 注册会员链接调用标签
<a href="<?php echo get_option('home'); ?>/wp-login.php?action=lostpassword">忘记密码</a> 忘记密码链接调用标签
<a href="<?php bloginfo('siteurl');?>/wp-admin/profile.php">[个人中心]</a> 个人中心链接调用标签
<?php global $current_user;get_currentuserinfo();echo get_avatar( $current_user->user_email, 32); ?> 获取当前用户头像
<?php global $user_identity, $user_level; echo $user_level; ?> 获取当前用户名
2、wordpress判断是否为登陆状态,如果不是显示登陆和注册按钮;如果为登陆状态显示个人像,和退出登陆按钮
<?php if(!is_user_logged_in()){ ?>
<a href="<?php echo site_url('wp-login.php', 'login') ?>">登陆</a>|
<a href="<?php echo site_url('wp-login.php?action=register', 'login') ?>">注册会员</a>
<?}else{?>
<?php global $current_user;get_currentuserinfo();echo get_avatar( $current_user->user_email, 32); ?> //当前用户头像 32为设置头像尺寸为32
<a href="<?php bloginfo('siteurl');?>/wp-admin/profile.php"> <?php global $user_identity, $user_level; echo $user_level; ?> [个人中心 ] </a>
<a href="<?php echo wp_logout_url( get_permalink() ); ?>">[退出]</a>
<?}?>
3、作者页面相关调用
<?php the_author(); ?> 显示WordPress文章作者名字代码
<?php the_author_description(); ?> 显示文章作者的描述(作者个人资料中的描述)
<?php the_author_login(); ?> 显示文章作者的登录名
<?php the_author_firstname(); ?> 显示文章作者的firstname(名)
<?php the_author_lastname(); ?> 显示文章作者的lastname(姓)
<?php the_author_nickname(); ?> 显示文章作者的昵称
<?php the_author_ID(); ?> 显示文章作者的ID号
<?php the_author_email(); ?> 显示文章作者的电子邮箱
<?php the_author_url(); ?> 显示文章作者的网站地址
<?php the_author_link (); ?>(添加于2.1版本) 显示一个以文章作者名为链接名,链接地址为文章作者的网址的链接。
<?php the_author_icq(); ?> (不推荐使用) 显示文章作者的icq(稍微diy以下html模板内容即可显示为QQ)
<?php the_author_aim(); ?> 显示文章作者的aim(同上,可以Diy成微信什么的.....反正随意就好)
<?php the_author_yim(); ?> 显示文章作者的yim
<?php the_author_msn(); ?> (不推荐使用) 显示文章作者的msn
<?php the_author_posts(); ?> 显示文章作者已发表文章的篇数
<?php the_author_posts_link(); ?> 显示一个链接到文章作者已发表文章列表的链接.
<?php list_authors(); ?> (不推荐使用) 显示blog所有作者和他们的相关信息。完整函数参数如下:
optioncount:是否显示各作者已发表文章的篇数,可选值为:TRUE 和 FALSE(默认值)
exclude_admin:是否不列出管理员,可选值为:TRUE(默认值) 和 FALSE
show_fullname :是否显示各作者的全名,可选值为:TRUE 和 FALSE(默认值)
hide_empty:是否不显示发表文章数为0的作者,可选值为:TRUE(默认值) 和 FALSE
feed:链接到各个作者发表文章的RSS供稿种子链接名,默认为空,不显示RSS供稿种子
feed_image:供稿种子的图片地址,如果提供此项,则覆盖上面的feed,默认为空
<?php wp_list_authors(); ?> 显示blog作者列表,如果作者发表过文章,则他的名字将链接到他发表的文章列表中。可定义是否显示其他信息,参数如下:
optioncount:是否显示各个作者发表文章数,可选值:true 和 false(默认值)
exclude_admin:是否不显示”admin”用户,可选值:true(默认值) 和 false
show_fullname:是否显示各个作者的全名,如果不显示,将显示昵称。可选值:true 和 false(默认值)
hide_empty:是否不显示发表文章数为0的作者,可选值:true(默认值) 和 false
feed:链接到各个作者发表文章的RSS供稿种子链接名,默认为空,不显示RSS供稿种子
feed_image:供稿种子的图片地址,如果提供此项,则覆盖上面的feed,默认为空。
十二、wordpress自定义侧边栏制作
1、wordpress分类列表页侧边栏
<?php if ( is_single() ) :
global $post;
$categories = get_the_category();
foreach ($categories as $category) :
?>
<li class="widget widget_recent_entries" id="<?php $category -> term_id; ?>-posts">
<h2 class="widgettitle"><?php echo $category -> name; ?></h2>
<ul>
<?php
$posts = get_posts('numberposts=5&category='. $category->term_id);
foreach($posts as $post) :
?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
</li>
<?php
endforeach; endif ;
?>
2、wordpress侧边栏,当前文章页所在分类栏目下的文章列表
<?php if ( is_single() ) :
global $post;
$categories = get_the_category();
foreach ($categories as $category) :
?>
<li class="widget widget_recent_entries" id="<?php $category -> term_id; ?>-posts">
<h2 class="widgettitle"><?php echo $category -> name; ?></h2> //当前文章所在栏目
<ul>//下方为循环输出 所在栏目分类下的文章列表
<?php
$posts = get_posts('numberposts=5&category='. $category->term_id); //5为循环条数
foreach($posts as $post) :
?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
</li>
<?php
endforeach; endif ;
?>