wordpress教程之如何修改与制作wordpress的作者页面
一、如何使用与创建作者页面
一般情况下,多数主题下都有author.php这个文件,这既是作者展示页面。如果发现自己正在使用的主题中没有author.php这个文件的话, Wordpress 会默认寻找 archives.php文件,如果连 archives.php 都不可用, Wordpress 会接着寻找你的 index.php 文件。
想要创建一个author.php文件的话,可以拷贝archives.php 或者 single.php 的内容。在这两个页面的基础上插入对应的wordpress作者页面调用函数,即可调用相应的作者信息。
这里给出一个简单的作者信息调用代码:
<?php
if(isset($_GET['author_name'])) :
$curauth = get_userdatabylogin($author_name);
else :
$curauth = get_userdata(intval($author));
endif;
?>
<div class="widget-title">作者档案</div>
<div class="author_da">
<?php if($curauth->touxiang){ ?><div class="avatar"><img src="<?php echo $curauth->touxiang; ?>" /></div><?php } ?>
<?php if($curauth->display_name){ ?><p><b>昵称:</b><?php echo $curauth->display_name; ?></p><?php } ?>
<?php if($curauth->job){ ?><p><b>职业:</b><?php echo $curauth->job; ?></p><?php } ?>
<?php if($curauth->addres){ ?><p><b>所在地:</b><?php echo $curauth->addres; ?></p><?php } ?>
<?php if($curauth->user_url){ ?><p><b>主页:</b> <a href="<?php echo $curauth->user_url; ?>"><?php echo $curauth->user_url; ?></a></p><?php } ?>
<?php if($curauth->user_email){ ?><p><b>邮箱:</b><?php the_author_meta('email') ?></p><?php } ?>
<?php if($curauth->qq){ ?><p><b>QQ:</b><?php echo $curauth->qq; ?></p><?php } ?>
<?php if($curauth->description){ ?><p><b>个人简介:</b><?php echo $curauth->description; ?></p><?php } ?>
</div>
作者页面创建完毕后,可以在模板的其他页面中添加对应作者的页面链接地址,大家使用如下代码即可实现调用:
<?php the_author_posts_link(); ?>
二、常用的作者信息调用函数
the_author 显示文章的作者
the_author_description 显示文章作者的描述(作者个人资料中的描述)
the_author_login 显示文章作者的登录名
the_author_firstname 显示文章作者的firstname(名)
the_author_lastname 显示文章作者的lastname(姓)
the_author_nickname 显示文章作者的昵称
the_author_ID 显示文章作者的ID号
the_author_email 显示文章作者的电子邮箱
the_author_url 显示文章作者的网站地址
the_author_link 显示一个以文章作者名为链接名,链接地址为文章作者的网址的链接。
the_author_icq 显示文章作者的icq
the_author_aim 显示文章作者的aim
the_author_yim 显示文章作者的yim
the_author_msn (不推荐使用) 显示文章作者的msn
the_author_posts 显示文章作者已发表文章的篇数
the_author_posts_link 显示一个链接到文章作者已发表文章列表的链接
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,默认为空
代表不显示各个作者的发布文章数,列出管理员,显示各作者的全名,显示发布文章数为0的作者和不显示RSS供稿种子。
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,默认为空
三、增加用户信息字段
为了更加简便与安全的增加信息字段,建议将自定义字段添加到“联系信息”中。“联系信息”的字段添加方式非常简单,打开wp-includes/user.php文件,约在1539行可以找到:$user_contactmethods = array代码,在大括号中修改或增加字段。
字段增加的格式为 ‘数据库字段名’ => __(‘标题说明文字’) 修改后的完整代码演示:
function _wp_get_user_contactmethods( $user = null ) {
$user_contactmethods = array();
if ( get_site_option( ‘initial_db_version’ ) < 23588 ) {
$user_contactmethods = array(
‘aim’ => __( ‘支付宝收款地址’ ),
‘addres’ => __( ‘所在地’ ),
‘job’ => __( ‘职业’ ),
‘qq’ => __( ‘QQ’ ),
‘touxiang’ => __( ‘头像url’ )
);
}
return apply_filters( ‘user_contactmethods’, $user_contactmethods, $user );
}
可以根据需要删除默认的字段,添加自己需要的字段,以达到增加用户选项的目的。
修改此项后,在用户后台的个人资料中也会自动出现对应的输入框,无需再修改其他程序文件。如果需要在作者页面的前端调用显示自定义字段则只需要使用 “echo $curauth->xxx;”的PHP语句即可输出对应字段。
附上本文的作者页面范例:http://www.frontopen.com/author/wanglei
四、安装author info插件
根据本文说明的实例制作了一个小插件,安装后可以直接实现上述代码所说的功能。
下载地址:http://pan.baidu.com/share/link?shareid=3141410209&uk=1728498014
wordpress教程之如何修改与制作wordpress的作者页面的更多相关文章
- (转)WordPress常用模板函数 修改或自制WordPress主题必备
对于很多WordPress新手来说,不懂任何代码的情况下去瞎改WordPress主题,得出的效果往往会出现语法错误之类的东西或效果不尽人意.想要修改 WordPress主题模板文件最基本的当然要懂得H ...
- WordPress 主题教程:从零开始制作 WordPress 主题
为什么要开发WordPress主题? WordPress主题由一系列文件和样式表单组成,这些文件和样式表单共同作用生成WordPress网站的外观.每个主题都不同,用户可以通过这些主题随心所欲地更换自 ...
- wordpress教程之函数讲解
wordpress函数收集 is_home() : 是否为主页is_single() : 是否为内容页(Post), 是否是单篇文章 is_page() : 是否为内容页(Page), 是否 ...
- 如何修改隐藏Zblog/WordPress默认后台登录地址
我相信很多博主站长都遇到过站点被暴力破解,虽然未被破解,但是经常收到那些尝试登录失败的邮件提醒也会心慌慌的.对于这种情况,最好的办法就是修改/隐藏我们的后台登录地址. 关于zblogASP后台登录地址 ...
- PHP7安装Memcache+Memcached缓存加速WordPress教程
PHP7安装Memcache+Memcached缓存加速WordPress教程 2016年1月19日 6,691 Views 生活方式 PHP7最显著的变化就是性能的极大提升,已接近Facebook开 ...
- WordPress教程之初识WordPress
你是否梦想过以极低的成本获得一个漂亮的网站,而无需聘请专业的开发和设计人员,也不必学习任何编程知识,并且网站功能可以无限扩展?对这些问题中的任何一个,如果你的答案是肯定的,那么 WordPress 将 ...
- WordPress教程之如何入门WordPress
这篇文章将介绍如何设置 WordPress,并自定义其基本功能.WordPress 的安装包相对较小(低于 10 MB),非常易于安装和管理.为了托管自己的网站,你可以获得几个不同的选项. 你可以通过 ...
- WordPress教程之如何创建博客内容
上两篇教程的链接: Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Hostwinds共享主机vps限时五折优惠链接 现在,你的 WordPress ...
- WordPress教程之页面、菜单、媒体库、高级定制
本系列教程链接: 怎么快速搭建一个WordPress网站 Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Wordpress教程之如何创建博客内容 ...
随机推荐
- 关于android:focusable属性
http://www.cnblogs.com/Gaojiecai/archive/2013/06/18/3142783.html Android属性 android:focusableInTouchM ...
- ubuntu12中设置PATH环境变量的几种方法(三种办法)
如果在Ubuntu12系统中自行安装了一些软件,特别是使用tar.gz文件包安装的软件,通常会放在/usr/local或者/opt,甚至放在/home下,但是如果要调用或执行时,必须加上完整的路径才可 ...
- 常用监控SQL
1.---监控等待事件 select SESSION_ID,NAME,P1,P2,P3,WAIT_TIME,CURRENT_OBJ#,CURRENT_FILE#,CURRENT_BLOCK# ...
- 如何允许外网可以连接mysql数据库
1.首先检查mysql所在服务器的防火墙,如果限制了外网对3306端口的连接,那么放开限制Linux服务器中执行 iptables -L 可以查看当前的防火墙规则iptables -F 可以清 ...
- Visual Assist X在Windows 8.1下出现中文乱码的解决方法
这主要是输入法造成的,我的输入法中有US.中文.搜狗输入法三个输入法:通过搜狗输入法管理器把“中文”去掉,或者通过语言首选项把“中文”去掉就不会在出现乱码. 这个办法的思路来自于http://www. ...
- OpensStack instance debug
错误: 创建实例 "RuiyTest23" 失败: 请稍后再试 [错误: Virtual Interface creation failed].
- onethink 验证码二维码不显示的问题
常规思路: 1 检查GD和FreeType.在项目根目录(index.php同级)下放一个php文件 <?php echo phpinfo(); ?> 访问此文件,查看GD和FreeTyp ...
- WPF最基本的4个引用
Windowsbase Windows基本类库 PresentationCore wpf核心类库 PresentationFramework wpf框架 System.Axml 系统类库
- [每日一题] OCP1z0-047 :2013-08-17 EXTERNAL TABLE――加载数据 ............................56
正确答案:C 一.对答案解释: A. TYPE:有两个选可供选择: 1. ORACLE_LOADER:传统方式,与SQLLDR一样,参数从多,应用较多. 2. ...
- [转]Laravel 4之验证
Laravel 4之验证 http://dingjiannan.com/2013/laravel-validation/ 基本验证 使用Validator::make($data, $rules)验证 ...