Externe tabelargumenten parseren in WordPress

Ik heb een klantenproject met posten die zijn toegewezen aan hun land van herkomst.

De klant wil de berichten kunnen zoeken op continent en/of regio.

Ik heb een aparte tabel die elk land toewijst aan zijn respectievelijke regio en ik heb de WP-query die de resulterende array gebruikt:

$country_names = array('England','France','Germany',...);//this would be the result from fetching countries associated with a region.
$args = array(
    'posts_per_page' => -1,
    'meta_query' => array(
        array(
            'key' => 'country',
            'value' => $country_names,
            'compare' => 'IN'
        )
    )
);
$query = new WP_Query( $args );

Waar ik moeite mee heb is het deel in het midden. Normaal gesproken zou ik een standaard PHP/MySQL gebruiken om de array te maken:

<?php

//Process incoming variable
if(!empty($_REQUEST['region'])){
 $region = $_REQUEST['region'];
 } else {
 $region = NULL;
 }

// Make a MySQL Connection
$query = "SELECT * FROM regions WHERE region='$region'"; 

$result = mysql_query($query) or die(mysql_error());

$row = mysql_fetch_array($result) or die(mysql_error());
echo $row['country'];
?>

Ik heb echter problemen om het binnen een WP-sjabloon te laten werken, omdat WP de binnenkomende variabelen beheert met behulp van zijn eigen interne functies.

Kan iemand me helpen om de twee samen te verbinden? Ik ben er zeker van dat ik hier een eenvoudige stap over het hoofd zie, of anders gebruik ik geen enkele ingebouwde WP-functie.

Alle hulp wordt gewaardeerd.

Bedankt!

ty

1

1 antwoord

Add this in your functions.php

add_filter( 'query_vars', 'addnew_query_vars', 10, 1 );
function addnew_query_vars($vars)
{   
    $vars[] = 'region';//region is the variable you want to add       
    $vars[] = 'anotherVar'; 
    return $vars;
}

Haal het dan

$region=get_query_var('region')

Bijwerken

$regions = $wpdb->get_results("SELECT ".$region." FROM `".$wpdb->regions."`");
if($regions)
{
    foreach($regions as $region)
    {
       //your code
    }
}
1
toegevoegd
Ik antwoordde daar niet op, alleen het ophalen van de variabele, ik dacht dat je dat vroeg, maar misschien was het mijn misyake.
toegevoegd de auteur The Alpha, de bron
Raadpleeg de update en voor meer informatie Interfacing met de database .
toegevoegd de auteur The Alpha, de bron
Hoe weet WP om in een aparte tabel naar de regio te zoeken?
toegevoegd de auteur Ty Morton, de bron