以下は記事IDを配列にするサンプル

<?php 
$post_ids = array();

//@param WP_Post $p
//@param integer $i
array_walk($GLOBALS['posts'], function($p, $i) use(&$post_ids) {
  $post_ids[$i] = $p->ID;
});

var_dump($post_ids);
?>

グローバルにあるWP_Queryの$postsをループ処理すればget_postsとか使う必要はないなと思った。

先日の カスタムフィールドの値を配列で得る やつは、

<?php 
$custom_values= array();

//@param WP_Post $p
//@param integer $i
array_walk($GLOBALS['posts'], function($p, $i) use(&$custom_values) {
  $custom_values[$i] = get_post_meta($p->ID, 'your_key', true);
});

var_dump($custom_values);
?>

こうなる。

上記サンプルはPHP5.3以下だと動かない。