query_posts: Wie zeige ich ‘meta_value’ mit einem bestimmten Wort an?

Wie können Sie den gesamten Post in einer Schleife mit einem (benutzerdefinierten) Metawert anzeigen, der ein Wort / eine Phrase enthält? erhalten Sie zum Beispiel den Post, wo Meta “Test” enthält.

query_posts('post_type=SOME&category_name_2=SOME&meta_value= 'Cotains the word 'test' ??? '); 

Wenn also die Metatags “Testfilm” oder “Test” sind, erhalten Sie beide.

Solutions Collecting From Web of "query_posts: Wie zeige ich ‘meta_value’ mit einem bestimmten Wort an?"

Keine Notwendigkeit für eine benutzerdefinierte Abfrage. Seit 3.1 können Sie eine “Meta-Abfrage” verwenden;

 query_posts( array( 'meta_query' => array( array( 'key' => 'meta_key_name', 'value' => 'test', 'compare' => 'LIKE' ) ) ) ); 

Überprüfen Sie den Codex für benutzerdefinierte Feldparameter .

mit “Benutzerdefinierte Auswahl Abfrage”

 < ?php $querystr = " SELECT wposts.* FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHERE wposts.ID = wpostmeta.post_id AND wpostmeta.meta_key = 'tag' AND wpostmeta.meta_value LIKE '%test%' AND wposts.post_status = 'publish' AND wposts.post_type = 'post' ORDER BY wposts.post_date DESC "; $pageposts = $wpdb->get_results($querystr, OBJECT); ?> < ?php if ($pageposts): ?> < ?php global $post; ?> < ?php foreach ($pageposts as $post): ?> < ?php setup_postdata($post); ?> < ?php endforeach; ?> < ?php endif; ?>