0

私がやろうとしているのは、ログインしているユーザーが single.php を開くたびに、ポストメタアクティビティを記録することです。基本的に、ログインしているユーザーが投稿を読むたびに知りたいです。したがって、これをループ内のsingle.phpに入れ、ユーザーがログインしているかどうかを確認した後.

最初に、投稿に '6' (投稿 ID) だけを取得したので、エコーを追加して、どの関数がそれを実行しているかを調べたところ、これが結果になりました。

echo "before post meta<br />";
add_post_meta( the_ID(), 'post_read', (string)$current_user->ID );
echo "after post meta<br />";

私の投稿に印刷されます:

before post meta
6after post meta

add_post_meta が '6' (投稿 ID) を出力するのはなぜですか? どうすればそれを取り除くことができますか? ちなみに私が:

$post_reads = get_post_custom_values('post_read', the_ID()); 

私が得るのは再び「6」です。

4

2 に答える 2

2

the_ID投稿IDを出力しています。get_the_ID印刷せずに返却する場合に使用します。

于 2013-08-09T15:10:51.790 に答える
1

the_ID()関数呼び出しで 使用しています。id を画面にthe_ID() 表示します。get_the_ID()代わりに使用したい。これにより、関数呼び出しに使用できる使用可能な ID が得られます。

于 2013-08-09T15:11:31.797 に答える