Obține Imaginea Reprezentativă prin interogare SQL directă

13 apr. 2012, 11:18:51
Vizualizări: 27.4K
Voturi: 8

Știu că poți folosi metodele WordPress pentru a obține o imagine reprezentativă, însă pentru acest proiect specific am nevoie să obțin imaginea reprezentativă prin interogare MySQL. Poate cineva să mă îndrume în direcția corectă. Mulțumesc.

Asta este ce am până acum, dar interogarea mea nu funcționează. Am $post->id stocat într-o variabilă numită $da_id

            $Featured_image = $wpdb->get_results("
            SELECT *
            FROM net_5_postmeta  
            INNER JOIN net_5_posts ON net_5_postmeta.post_id=net_5_posts.ID 
            WHERE post_parent = $da_id
            AND meta_key = '_wp_attached_file' 
            ORDER BY post_date 
            DESC LIMIT 15",'ARRAY_A');
0
Toate răspunsurile la întrebare 2
1
15

O soluție înrudită, pentru a interoga postări FĂRĂ a furniza un ID de postare (ordonate după data postării și folosind prefixul wp_ pentru baza de date):

    SELECT
        p1.*,
        wm2.meta_value
    FROM 
        wp_posts p1
    LEFT JOIN 
        wp_postmeta wm1
        ON (
            wm1.post_id = p1.id 
            AND wm1.meta_value IS NOT NULL
            AND wm1.meta_key = "_thumbnail_id"              
        )
    LEFT JOIN 
        wp_postmeta wm2
        ON (
            wm1.meta_value = wm2.post_id
            AND wm2.meta_key = "_wp_attached_file"
            AND wm2.meta_value IS NOT NULL  
        )
    WHERE
        p1.post_status="publish" 
        AND p1.post_type="post"
    ORDER BY 
        p1.post_date DESC
10 mai 2012 19:39:00
Comentarii

Nu exact ce s-a cerut, dar pentru mine acest răspuns este mai util... mulțumesc!

vicenteherrera vicenteherrera
29 oct. 2014 22:18:33
3
$Featured_image = $wpdb->get_results("
    SELECT p.*
      FROM net_5_postmeta AS pm
     INNER JOIN net_5_posts AS p ON pm.meta_value=p.ID 
     WHERE pm.post_id = $da_id
       AND pm.meta_key = '_thumbnail_id' 
     ORDER BY p.post_date DESC 
     LIMIT 15
",'ARRAY_A');
13 apr. 2012 11:25:48
Comentarii

Eugene, mi-ai salvat viața, funcționează perfect, MULȚUMESC!

uknowit2 uknowit2
13 apr. 2012 15:18:00

Cu plăcere! Marchează răspunsul corect și votează-l.

Eugene Manuilov Eugene Manuilov
13 apr. 2012 15:37:59

mulțumesc din nou Eugene, l-am marcat ca corect dar din păcate nu am suficientă reputație pentru a vota în sus, dar sunt sigur că va ajuta pe alții. codul de mai sus este deosebit de util într-un mediu MU atunci când trebuie să interoghezi imaginile reprezentative ale altor bloguri. Îl ador. Acum trebuie doar să-mi dau seama cum să aduc versiunea thumbnail a imaginii reprezentative.

uknowit2 uknowit2
14 apr. 2012 14:05:53