Как получить все вложения, кроме двух страниц

В настоящее время я разрабатываю пользовательскую тему для моего клиента. Что я хочу сделать, так это получить все вложения (= изображения) в установке через wp_getposts (http://codex.wordpress.org/Function_Reference/get_posts).

Этот код будет:

$attachments = get_posts('post_type=attachment&numberposts=-1');

foreach ($attachments as $att) .... и т.д.

Затем я делаю некоторые вещи с изображениями, чтобы, наконец, создать слайд-шоу изображений с изображениями со страниц.

Теперь сложная часть, я хочу исключить вложения двух конкретных страниц в installatie (запрос клиента), и я действительно не знаю, как это сделать.

Здесь есть волшебники WordPress?


person Bram Vandenbussche    schedule 23.06.2010    source источник


Ответы (2)


Бывший ответ Байрона в коде :)

$excluded_parents = array(1, 4, 7); // IDs of excluded parent posts

foreach ($attachments as $att) {
    if (in_array($att->post_parent, $excluded_parents))
        continue;

    // carry on coding!
}
person TheDeadMedic    schedule 25.06.2010

Разве вы не можете просто посмотреть на идентификатор или заголовок вложения и пропустить его? это было бы жестко закодировано и не очень элегантно, но это сработало бы.

Более расширяемым способом было бы присвоить вложению тег, например «не показывать», и игнорировать все вложения с этим тегом.

person Byron Whitlock    schedule 23.06.2010