ここで奇妙なことが起こっています。複数の状況でis_wp_errorを実装しようとしましたが、失敗します。これが私の最後の試みで説明されたものです:
でユーザーにログインし、wp_signon()
エラーがないか確認して表示したい。
そこで、次のコード行を記述しました。
$user = wp_signon();
if(is_wp_error($user)){
$result = 'Error-' .
$user->get_error_message();
} else {
$result = 'Login succeed';
}
echo $result;
奇妙なことに、is_wp_error()
falseは返されません(エラーが発生します)。しかし$user->get_error_message();
、空です。
さまざまなアクションで試してみました。デバッグ時echo is_wp_error();
に0
をvar_dump(wp_is_error());
返します。空の配列を返します。
さらに、有効な資格情報が指定されている場合でも、is_wp_error()はtrueを返します。また、他の状況でテストする場合(およびクリーンなWPインストールで)
何かご意見は?