web-dev-qa-db-ja.com

作者のみに情報を表示する

私は自分のプラグインを書いています。

このように動作します:

function myfunc (){
    $a = 'hello';
    // the sentence what Am looking for: 
    if ( user is logged and is the author of current post / page ){
        $a= 'author';
    }
    return $a; 
}

どうやってその意味や機能を利用できるのでしょうか。

1
greenbandit

表示名を比較するだけです。

$currentuser = get_currentuserinfo();

if ( get_the_author() == $currentuser->displayname ) {
     // current user is the post author; do something
}

get_the_author()関数はdisplaynameを返します。これは$currentuserオブジェクトの一部であるdisplaynameパラメータと比較できるはずです。

1
Chip Bennett

この情報はcurrent_user変数とpost変数を使って取得できます。

function myfunc (){
    global $current_user, $post;
    $a = 'hello';
    // check if current user id matches post author id
    if ( $current_user->ID == $post->post_author ){
        $a = 'author';
    }
    return $a; 
}
1
aaronwaggs