在WP Loop之外获取帖子作者ID

Kar*_*sca 6 php wordpress if-statement

我想要完成的是代码将自动检测<?php the_author_ID(); ?>博客帖子的作者ID .一旦它具有作者ID,它将执行一项简单的任务.如果作者#等于2,则调用函数sBadong.否则,如果作者ID等于3,则调用函数sJade.如果不满足两个条件,则调用函数sBen.

这是我的代码,但它不起作用.我不知道它有什么不妥.你能帮我吗?

<?php
$author_id=$post->post_author;
if ($author_id == "2") {
    echo sBadong();
} elseif ($author_id == "3") {
    echo sJade();
} else {
    echo sBen();
}
?>
Run Code Online (Sandbox Code Playgroud)

上面代码的问题是它没有读取帖子的作者编号.它总是返回函数sBen(); 并忽略所有if和else语句.

aly*_*sha 10

请使用以下功能:

$author_id = get_post_field ('post_author', $post_id);
Run Code Online (Sandbox Code Playgroud)

它会工作.