Код, как он есть, не будет работать, даже если он не был динамически.То, что вам нужно сделать, это переименовать имя флажков, иначе будет доступно только последнее значение.Например, вы можете сделать это следующим образом:
$postcount5 = 0;
$featured_query5 = new WP_Query('showposts=5&post_type=adverts');
while ($featured_query5->have_posts()) : $featured_query5->the_post();
$do_not_duplicate[] = get_the_ID();
$postcount5++;
$currentid5 = get_the_ID();
echo '<p><label><input type="checkbox" name="adverts'.$postcount5.'" value="'.$the_id().'";
if ( $currentid5 == $adboxid ) echo 'checked="yes"';
echo '/> ';
the_title();
echo' </label><br/></p>';
И, наконец, чтобы получить значения, вам нужна кнопка отправки и обернуть все это в элемент с установленным элементом action, например:
<form name="postselector" action="whereever_you_want_the_user_to_go_next.php">
INSERT HERE ALL THE INPUT CHECKBOXES
AND THE SUBMIT BUTTON
</form>
В whereever_you_want_the_user_to_go_next.php вы можете, наконец, прочитать выбранные элементы по:
if (isset($_POST['submit'])) {
$selectedposts = array();
$i = 0;
foreach($_POST as $name => $value) {
if (preg_match('adverts',$name) {
$selectedposts[$i] = $value;
$i++;
}
}
}