私は定期的に使用する別の関数で作成されたページIDの配列をつかみます - それはすべて良いことです。私が抱えている問題は以下の機能にあります。一部のページには、利子分類法のオプションから「利子」が割り当てられていません。そのため、$ terms配列には、単語のないページからの誤った論理値がいくつかあります。 foreachがこれらの偽のブール値にぶつかると、phpエラーが画面に表示されますが、ループは実行を続け、他のすべての方法で期待通りに機能します。このエラーが表示されないようにするにはどうすればよいですか。私は偽のブール値のためにある種のエラーキャッチャーが必要ですが、それをどうやって実行するかはわかりません。何かアドバイスは大歓迎です!
foreach ($campids as $campid){
$terms = get_the_terms($campid, 'interests');
foreach($terms as $term){
$camp_int = $term->name;
if ($camp_int == $interest){ // include only camps with the correct location
$camps[$i]['id']=$campid;
$camps[$i]['interest']=$camp_int;
}
}
$i++;
}
あなたが必要としているのは、Codexからはかなりまっすぐです。
$terms = get_the_terms( $post->ID, 'on-draught' );
if ( $terms && ! is_wp_error( $terms ) ) :
$draught_links = array();
foreach ( $terms as $term ) {
$draught_links[] = $term->name;
}
get_the_terms()
は、termオブジェクト、false
、またはWP_Error
オブジェクトを返すことができます 。 false
もエラーオブジェクトもチェックしていません。それがこの条件式がすることです。
if ( $terms && ! is_wp_error( $terms ) )
if(is_array($terms)){
の代わりにそれを使ってください