0

配列を使用して、Wordpress で特定の投稿を除外しようとしています。これを行うことで、投稿の1つを正常に削除できます。

<?php if ( $post->ID != '443' ) { ?>
  ...
<?php } ?>

削除したい投稿の配列を作成しようとしていますが、これは次のとおりです。

<?php $excluded = array('443', '479', '464', '589', '333', '296', '381', '405', '252', '301', '291', '306', '632', '634', '636', '313', '317', '389', '410', '417', '321');
if ( $post->ID != $exclude ) { ?>
  ...
<?php } ?>

私はPHPを独学しようとしていて、配列に苦労しています。何か助けはありますか?

4

3 に答える 3

2

最初の例が示すように、数値と数値の比較は機能します。

しかし、2 番目のものでは、数値 (ID) を配列 (数値のリスト) と比較します。

ID が「除外」リストの要素であるかどうかを確認するには、in_array()を使用する必要があります。

if (!in_array($post->ID,$exclude)){
...
}

よろしく、

ステファン

于 2012-05-24T18:03:40.793 に答える
0

if ステートメントの問題は、値が値と一致する配列内にあるかどうかではなく、postID != 配列全体であるかどうかを確認していることです。

in_array関数を使用したい。それは次のようになります。

if ( !in_array($post->ID, $exclude )
于 2012-05-24T18:04:35.037 に答える
0

in_array値が配列内にあるかどうかをテストするために使用する必要があります

つまり、

if (in_array($post->ID, $exclude)) {

}
于 2012-05-24T18:00:30.560 に答える