WordPressの条件分岐について教えてください。

WordPressで、管理人の他にも記事を投稿できる権限(toukou)を作りました。
この「toukou」の権限で記事を書いたユ-ザ-が、自分で書いた記事を見た場合、
「この記事はあなたが書きました」
と表示させたいと思います。
そのための条件分岐コ-ドを教えてください。
よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2017/06/06 11:18:30
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4972ベストアンサー獲得回数2154

ポイント300pt

記事を投稿できている時点で投稿者は権限を持っているわけですから、ログインユーザと記事の投稿者のID が一致してるかどうかの判定だけでも十分なような気もしますが、デフォルトの権限グループと区別したいとかあるんですかね。

$post が有効なところで、以下のような判定をすれば良いんじゃないかなと思います。

<?php while ( have_posts() ) : the_post(); ?>
<?php if (is_user_logged_in()) : ?>
<?php
    $user = wp_get_current_user();
    if (in_array('toukou', $user->roles) && $post->post_author == $user->ID) :
?>
        この記事はあなたが書きました
    <?php endif; ?>
<?php endif; ?>
<?php endwhile; ?>

記事の投稿者かどうかの判定は is_author() でも良いような気もします。

id:ykhpno1

いつも回答ありがとうございます。
a-kuma3さんのコメントで、「ログインユーザと記事の投稿者のID が一致してるかどうかの判定だけでも十分な気がする」が効きまして、なるほどその通りです。

そこに焦点を合わせなおしまして、結局、回答いただいたコ-ドとはちょっと違う感じにおさめました。
さすがでございます、ありがとうございました!
いただいたコ-ドもたいへん勉強になりました!

2017/06/06 11:18:10

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません