Holen Sie sich Beiträge nach Metawert
-
-
Bittebeachten Sie,dass [von Ihnenerwartet wird,dass Sie das Problem untersucht und versucht haben,es zu lösen,bevor Sieeine Frage stellen.] (Http://wordpress.stackexchange.com/questions/how-to-ask) Wären Sie keine Markegewesen?Neu hier hätteich die Frage wahrscheinlich abgelehnt und wäre weitergegangen,anstatt sie zubeantworten.Im Geiste von "Welcometothe Stack"ist dies Ihrefreie Biene.Bitte werfen Sieeinen Blick auf [fragen]für zukünftige Fragen.Please be aware that [you are expected to have researched the problem and made an attempt at solving it before posting a question.](http://wordpress.stackexchange.com/questions/how-to-ask) Had you not been brand new here I would have probably down-voted the question and moved on, rather than answer it. In the spirit of "Welcome to the Stack" this is your free-bee. Please take a look at [ask] for future questions.
- 8
- 2014-05-11
- s_ha_dum
-
Dieser hatmichnureinige Zeit wegen dernicht akzeptierten Antwort unten verlieren lassen.Also lasseich hiermeine 2 Cent.Er hat wedergeantwortetnoch die Antwort unten akzeptiert.Warumentfernen Sie diese Fragennichteinfach,währendes hier Dutzende ähnlicher Fragengibt?This one just made me lose some time because of the not accepted answer below. So I'm leaving here my 2 cents. He never answered, nor accepted the answer below. Why don't you just remove this questions while there are dozens of similar questions around here?
- 0
- 2019-07-21
- mircobabini
-
4 Antworten
- Stimmen
-
- 2014-05-11
Was Sie verlangen,istein
meta_query
$args = array( 'meta_query' => array( array( 'key' => 'cp_annonceur', 'value' => 'professionnel', 'compare' => '=', ) ) ); $query = new WP_Query($args);
What you are asking for is a
meta_query
$args = array( 'meta_query' => array( array( 'key' => 'cp_annonceur', 'value' => 'professionnel', 'compare' => '=', ) ) ); $query = new WP_Query($args);
-
@Beginner: Wenn dies das Problemgelöst hat,markieren Sieesbitte als "Akzeptiert".Achten Sie auf das Häkchenneben den Abstimmungspfeilen links.@Beginner : if this solved the problem please mark it "Accepted". Look for the check mark near the vote arrows on the left.
- 3
- 2014-05-11
- s_ha_dum
-
Ausirgendeinem Grundfunktioniertesbei mirnicht,"new WP_Query ($ args)" zu verwenden und dann "get_posts" aufzurufen.Die direkte Übergabe des Arrays "$ args" an die Funktion "get_posts" als Argumentfunktioniertjedoch.For some reason using `new WP_Query($args)` and then calling `get_posts` doesn't work for me. Directly passing the `$args` array to the `get_posts` function as an argument works however.
- 0
- 2020-05-05
- Kunal
-
- 2014-05-11
Dafürgibt es zwei Möglichkeiten:
-
Fangen Sie die Hauptabfrage auf
pre_get_posts
ab:add_action( 'pre_get_posts', function( $query ) { // only handle the main query if ( ! $query->is_main_query() ) return; $query->set( 'meta_key', 'cp_annonceur' ); $query->set( 'meta_value', 'professionnel' ); } );
-
Fügen Sieeine zusätzliche Abfrage hinzu
$second_loop = get_posts( array( 'meta_key' => 'cp_annonceur', 'meta_value' => 'professionnel', ) );
Ein ausführlicheres Beispielfinden Sie unter dieser Antwort .
There are two ways to do that:
Intercept the main query on
pre_get_posts
:add_action( 'pre_get_posts', function( $query ) { // only handle the main query if ( ! $query->is_main_query() ) return; $query->set( 'meta_key', 'cp_annonceur' ); $query->set( 'meta_value', 'professionnel' ); } );
Add an additional query
$second_loop = get_posts( array( 'meta_key' => 'cp_annonceur', 'meta_value' => 'professionnel', ) );
A more throughout example can be found in this answer.
-
Schön,den kurzen Wegmit get_posts () zu kennenNice to know the short way with get_posts()
- 2
- 2017-01-26
- Andrew Welch
-
Wiemachen Sie dasmit mehreren Meta-Schlüsseln/Werten?How do you do this with multiple meta ket/values ?
- 0
- 2020-04-09
- G-J
-
@ G-J Vielleichtmöchten Sie sich [dieses Beispiel] ansehen (https://wordpress.stackexchange.com/a/105705/385).@G-J you might want to take a look at [this example](https://wordpress.stackexchange.com/a/105705/385).
- 0
- 2020-04-15
- kaiser
-
- 2016-01-28
Ich habebenutzerdefinierte Auswahl verwendet (möglicherweisebessere Leistung)
$posts = $wpdb->get_results("SELECT * FROM $wpdb->postmeta WHERE meta_key = 'cp_annonceur' AND meta_value = 'professionnel' LIMIT 1", ARRAY_A);
Inspiriert von https://tommcfarlin.com/get-post-id-by-meta-value/
I used custom select (might be better performance)
$posts = $wpdb->get_results("SELECT * FROM $wpdb->postmeta WHERE meta_key = 'cp_annonceur' AND meta_value = 'professionnel' LIMIT 1", ARRAY_A);
Inspired from https://tommcfarlin.com/get-post-id-by-meta-value/
-
Es hat vielleichtbessere Leistungen,aberes wirft dieganze Idee weg,Wordpress-Funktionen zum Suchen (und Zwischenspeichern) von Daten zu haben.Und waspassiert,wenn WPbeschließt,die Tabellenstruktur zu ändern?:) :)It might have better performances, but it throws away the whole idea of having Wordpress functions to search (and cache) data. And, also, what will happen if WP decides to change the table structure? :)
- 3
- 2017-03-03
- Erenor Paz
-
@ErenorPaz Ich verstehe,was Sie sagen,aber dieser Weg würdeeseinfachmachen,wenn Siemehrere Meta-Schlüssel/Werte als Kriterien hätten ... Gibteseine offizielle Möglichkeit,mit mehreren Kriterien umzugehen?@ErenorPaz I understand what you are saying but this way would make it easy if you had multiple meta key/values as a criteria... Is there an official way to handle multiple criteria?
- 0
- 2020-04-09
- G-J
-
Dumeinst soetwas wie "WOmetatable1.meta_key='cp_annonceur' UNDmetatable1.meta_value='professionnel' UNDmetatable2.meta_key='cp_other_meta' UNDmetatable2.meta_value='other_value'"?(Beachten Sie,dass wir vermutlicheinen Joinfür dieselbeposts_meta-Tabellemit denbeiden Namen "metatable1" und "metatable2" durchführen.)Dies kannerreicht werden,indem der Abfrage das Feld "meta_query" (als Array) hinzugefügt wird.Schauen Sie sich Folgendes an: https://developer.wordpress.org/reference/classes/wp_query/#order-orderby-parameters undgehen Sie zum Absatz "orderby"mit mehreren "meta_key".You mean something like `WHERE metatable1.meta_key = 'cp_annonceur' AND metatable1.meta_value = 'professionnel' AND metatable2.meta_key = 'cp_other_meta' AND metatable2.meta_value = 'other_value'`? (Note that i suppose we do a join on the same posts_meta table using two names `metatable1` and `metatable2`). This can be achieved adding field `meta_query` (as an array) to the query. Take a look at: https://developer.wordpress.org/reference/classes/wp_query/#order-orderby-parameters and go to paragraph "‘orderby’ with multiple ‘meta_key’s"
- 0
- 2020-04-10
- Erenor Paz
-
- 2017-10-04
Mit der Meta-Abfrage von WordPress können wir dasgewünschte Ergebniserzielen:
// the meta_key 'diplay_on_homepage' with the meta_value 'true' $cc_args = array( 'posts_per_page' => -1, 'post_type' => 'post', 'meta_key' => 'cp_annonceur', 'meta_value' => 'professionnel' ); $cc_query = new WP_Query( $cc_args );
Eine ausführlichere Anleitung zur Metaabfragefinden Siein diesem Blog: http://www.codecanal.com/get-posts-meta-values/
We can get the desired result with Meta query of the WordPress :
// the meta_key 'diplay_on_homepage' with the meta_value 'true' $cc_args = array( 'posts_per_page' => -1, 'post_type' => 'post', 'meta_key' => 'cp_annonceur', 'meta_value' => 'professionnel' ); $cc_query = new WP_Query( $cc_args );
For more detailed guide regarding meta query follow this blog : http://www.codecanal.com/get-posts-meta-values/
-
Darfich wissen,warum dieser Wertfür "posts_per_page" -1ist?May i know why this `post_per_page` value is -1?
- 0
- 2018-04-27
- Abhay
-
@AbhayGawade Mit diesem Parameter können Sie diemaximale Anzahl von Ergebnissenbegrenzen. -1bedeutet keine Begrenzung.@AbhayGawade You can limit max number of results using that parameter, -1 means no limit.
- 1
- 2018-06-20
- Kush
Ichmöchte alle Beiträge auflisten,die den Schlüssel
cp_annonceur
mit dem Wertprofessionnel
haben.