sql >> Database teknologi >  >> RDS >> Mysql

Send ID'er til pre_get_posts-forespørgsel i funktion

Jeg tror faktisk du har et PHP-problem. Når du gør array($results_separated) du opretter dybest set et array ud fra en streng, der ser sådan ud:"12,114,56," . Ved at gøre det opretter PHP et array som dette:

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

Og WordPress kan naturligvis ikke finde nogen indlæg med et sådant ID! Det, du ønsker, er faktisk et array som dette:

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

Og det er faktisk hvad get_col() returnerer, så du skal blot sende $results til set() funktion:

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

REDIGER :Faktisk indså jeg, at dit problem er, når du kalder $wpdb->get_col(...) , fordi det forstyrrer $query du vil udføre senere... Disse variabler bruger nogle andre globale variabler, der sandsynligvis bliver tilsidesat, og det er derfor, du ikke får nogen resultater...



  1. Korrekt måde at spørge om mysql_num_rows i PHP

  2. SQL:Hvordan vælger man alle overordnede noder i materialiseret sti?

  3. Simulering af MySqls PASSWORD()-kryptering ved hjælp af .NET i Windows 8

  4. hvordan man parser json ved hjælp af json_populate_recordset i postgres