Özel bir wordpress sorguya virgül belirginlik listesini geçen

0 Cevap php

Tamam, işte oluyor neler ...

Google Analytics arasındaki en popüler sonrası başlıkların listesini çekerek yaşıyorum ve ben onları bir diziye yatıracağım

$thisnumber = 0;

$start = date('Y-m-d', (time() - (60 * 60 * 24 * 30)));
$end = date('Y-m-d');
$limit = $getnumber;
$titles = array();

$login = new GADWidgetData();
$ga = new GALib($login->auth_token, $login->account_id, 60);
$pages = $ga->pages_for_date_period($start, $end);

foreach($pages as $page) :
    $title = $page['children']['value'];
    $titlearray = explode(' |', $title, -1);
    $titlesub = implode( "", $titlearray);
    $thetitles[] = $titlesub;
    $thisnumber++;
    if($thisnumber > ($getnumber*2)) break;
endforeach;

$titles_list = implode( ",", $thetitles);

Yani $ thetitles başlıklar bir dizi ve $ titles_list saklanan kitapların listesini hem de sol duyuyorum sonuçta bu

şimdi tam bir wordpress sorgu için bu başlıkların hepsi göndermek gerekir - bu yüzden bir işlevi vardır:

function get_post_by_title($page_title, $output = OBJECT) {
global $wpdb;
    $post = $wpdb->get_var( $wpdb->prepare( "
    SELECT wposts.* 
    FROM $wpdb->posts wposts
    WHERE post_title = %s 
    AND post_type='post'
    AND post_status = 'publish'", $page_title ));

    if ( $post )
        return get_post($post, $output);

return null;

}

Ne yazık ki, bu sorguları bir grup olabilir, ve bir çok seyahat sitede bu işler çıkmaza olabilir. Ben fonksiyonu IN SQL kullanmaya teşebbüs, ama ben yanlış yapıyorum düşünüyorum

$querystr = "
SELECT wposts.* 
FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta
WHERE post_title IN ($titles_list) 
AND wposts.post_status = 'publish' 
AND wposts.post_type = 'post'";

$pageposts = $wpdb->get_results($querystr, OBJECT);

Daha iyi bir SQL Wordpress / foo ile kimse bana bir el verebilir?

0 Cevap