zoukankan      html  css  js  c++  java
  • 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>

    作者页面创建完毕后,可以在模板的其他页面中添加对应作者的页面链接地址,大家使用如下代码即可实现调用:

    二、常用的作者信息调用函数

    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

  • 相关阅读:
    MutationObserver 简单应用场景
    call apply bind sleep
    js 继承,Object.setPrototypeOf | Object.getPrototypeOf | Object.create class
    JSON.stringify
    javascript 与node的 event-loop
    js 不常用面试题 数组对象深度取值
    Oracle单表备份
    mybatis批量写法
    mybatis批量更新
    Python中if __name__ == '__main__':理解
  • 原文地址:https://www.cnblogs.com/huntaheart/p/3965951.html
Copyright © 2011-2022 走看看