sql >> Databáze >  >> RDS >> Mysql

Předejte ID do dotazu pre_get_posts ve funkci

Myslím, že máš ve skutečnosti problém s PHP. Když uděláte array($results_separated) v podstatě vytváříte pole z řetězce, který vypadá takto:"12,114,56," . Tím PHP vytvoří takové pole:

array(
    0 => "12,114,56,"
)

A samozřejmě WordPress nemůže najít žádné příspěvky s takovým ID! To, co chcete, je ve skutečnosti takové pole:

array(
    0 => "12",
    1 => "114",
    2 => "56"
)

A vlastně to je to, co get_col() vrátí, takže stačí předat $results na set() funkce:

$query->set ( 'post__in', $results );

UPRAVIT :Vlastně jsem si uvědomil, že váš problém je, když zavoláte $wpdb->get_col(...) , protože to narušuje $query provedete později... Tyto proměnné používají nějaké jiné globální proměnné, které pravděpodobně budou přepsány, a proto nedostáváte žádné výsledky...



  1. ODBC v Libpq:Knihovna C pro PostgreSQL

  2. Co je důvěryhodné připojení?

  3. Jak opravím poškození InnoDB zamykání názvu tabulky od vytvoření (errno:-1) na AWS RDS?

  4. VYBERTE * KDE NEEXISTUJE