GET_TEMPLATE_PART()未加载作者信息

时间:2013-10-27 作者:Mayeenul Islam

使用get_template_part() 我分离了一些主题常用的帖子模板。我的帖子模板是content-general.php. 没有分离,一切都会好起来的。但就在分离模板之后—使用WP_DEBUG, true —我发现它显示出一些errors 在加载作者信息时:

Notice: Undefined variable: authordata

以及:

Notice: Trying to get property of non-object

我有以下代码$authordata:

<a class="url fn n" href="<?php echo get_author_posts_url( false, $authordata->ID, $authordata->user_nicename ); ?>" title="<?php printf( __( \'View all posts by %s\', \'your-theme\' ), $authordata->display_name ); ?>">
   <?php the_author(); ?>
</a>
我跟着this WPSE thread 并尝试全球化$post 在模板文件中(content-general.php) 例如:

<?php global $post; ?>
模板在默认WordPress循环中调用。但问题并没有得到解决。

1 个回复
最合适的回答,由SO网友:Mayeenul Islam 整理而成

具有this answer with good practices, by Chip Bennett, in mind 做一件简单的全球性事情&mdash;添加global $authordata 到模板文件:

<?php global $authordata; ?>
遵循法典Global Variables 有关global 练习

引用问题的特定部分:

$authordata (object) 返回一个包含作者信息的对象,与最后一个$post.

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在