WordPress.org

Sprog: engelsk • Italiano • 日本語 Русский • kinesisk(简体) • kinesisk(繁體) • 한국어 • (Tilføj dit sprog)

Taler til Databasen: wpdb Klasse

WordPress definerer en klasse, der hedder wpdb, og som indeholder et sæt af funktioner, der bruges til at kommunikere med en database. Dens primære formål er at give en grænseflade med databasen, men kan bruges til at kommunikere med enhver anden passende database. Klassens kildekode er løst baseret på; skrevet og vedligeholdt af Justin Vincent

brug af objektet $VPDB

advarsel: metoder i klassen wpdb() bør ikke kaldes direkte. Brug det globale $wpdb objekt i stedet!

giver en global Objektvariabel, $wpdb, som er en instantiering af den klasse, der er defineret i /inkluderer/dB.php. Som standard er $wpdb instantieret til at tale med databasen. For at få adgang til $wpdb i din PHP-kode skal du erklære $wpdb som en global variabel ved hjælp af global keyword eller bruge superglobal $GLOBALS på følgende måde:

// 1st Method - Declaring $wpdb as global and using it to execute an SQL query statement that returns a PHP objectglobal $wpdb;$results = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}options WHERE option_id = 1", OBJECT );// 2nd Method - Utilizing the $GLOBALS superglobal. Does not require global keyword ( but may not be best practice )$results = $GLOBALS->get_results( "SELECT * FROM {$wpdb->prefix}options WHERE option_id = 1", OBJECT );

$wpdb – objektet er ikke begrænset til standardtabellerne, der er oprettet af kan bruges til at læse data fra en hvilken som helst tabel i databasen (f.eks. For eksempel for at vælge nogle oplysninger fra en brugerdefineret tabel kaldet “mytable”, kan du gøre følgende.

$myrows = $wpdb->get_results( "SELECT id, name FROM mytable" );

objektet $wpdb kan tale med et vilkårligt antal tabeller, men kun til en database ad gangen. I det sjældne tilfælde skal du oprette forbindelse til en anden database, skal du instantiere dit eget objekt fra klassen wpdb med dine egne databaseforbindelsesoplysninger. For ekstremt komplicerede opsætninger med mange databaser, overvej at bruge hyperdb i stedet.

en advarsel

nogle af funktionerne i denne klasse tager en KVL-erklæring som input. Du skal undgå alle værdier, du ikke har tillid til, for at forhindre angreb. Kontroller dokumentationen for at se, om den funktion, du planlægger at bruge escapes til dig, eller forventer, at den er undsluppet.

se afsnittet Beskyt forespørgsler mod indsprøjtningsangreb nedenfor.

vælg en variabel

funktionen get_var returnerer en enkelt variabel fra databasen. Selvom kun en variabel returneres, cachelagres hele resultatet af forespørgslen til senere brug. Returnerer NULL, hvis der ikke findes noget resultat.

<?php $wpdb->get_var( 'query', column_offset, row_offset ); ?>

forespørgsel (streng) den forespørgsel, du vil køre. Indstilling af denne parameter tilnullreturnerer den angivne variabel fra de cachelagrede resultater fra den forrige forespørgsel. column_offset (heltal) den ønskede kolonne (0 er den første). Som standard 0. række_offset (heltal) den ønskede række (0 er den første). Som standard 0.

eksempler

Hent og vis antallet af brugere.

<?php$user_count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->users" );echo "<p>User count is {$user_count}</p>";?>

Hent og vis summen af en brugerdefineret feltværdi.

<?php// set the meta_key to the appropriate custom field meta key$meta_key = 'miles';$allmiles = $wpdb->get_var( $wpdb->prepare( "SELECT sum(meta_value) FROM $wpdb->postmeta WHERE meta_key = %s", $meta_key) );echo "<p>Total miles is {$allmiles}</p>";?> 

vælg en række

hvis du vil hente en hel række fra en forespørgsel, skal du bruge get_row. Funktionen kan returnere rækken som et objekt, et associativt array eller som et numerisk indekseret array. Hvis mere end en række returneres af forespørgslen, returneres kun den angivne række af funktionen, men alle rækker cachelagres til senere brug. Returnerer NULL hvis der ikke findes noget resultat, skal du overveje dette, når du bruger den returnerede værdi i argumenter, se eksempel nedenfor.

<?php $wpdb->get_row('query', output_type, row_offset); ?>

forespørgsel (streng) den forespørgsel, du vil køre. output_type en af tre foruddefinerede konstanter. Som standard objekt.

  • objekt – resultatet vil blive output som et objekt.
  • ARRAY_A – resultatet vil blive output som et associativt array.
  • ARRAY_N – resultatet vises som et numerisk indekseret array.

række_offset (heltal) den ønskede række (0 er den første). Som standard 0.

eksempler

få alle oplysninger om Link 10.

$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10" );

egenskaberne for objektet $mylink er kolonnenavnene på resultatet fra forespørgslen (i dette eksempel alle kolonnerne fra tabellen $wpdb->links, men du kan også kun forespørge efter bestemte kolonner).

echo $mylink->link_id; // prints "10"

i modsætning hertil ville anvendelse af

$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_A );

resultere i et associativt array:

echo $mylink; // prints "10"

og

$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_N );

ville resultere i et numerisk indekseret array:

echo $mylink; // prints "10"

hvis der ikke er nogen post med ID 10 i tabellen links, null vil blive returneret. Følgende ville så være falsk:

if ( null !== $mylink ) { // do something with the link return true;} else { // no link found return false;}

vælg en kolonne

hvis du vil vælge en kolonne, skal du bruge get_col. Denne funktion udsender et endimensionelt array. Hvis mere end en kolonne returneres af forespørgslen, returneres kun den angivne kolonne af funktionen, men hele resultatet cachelagres til senere brug. Returnerer et tomt array, hvis der ikke findes noget resultat.

<?php $wpdb->get_col( 'query', column_offset ); ?>

forespørgsel (streng) den forespørgsel, du ønsker at udføre. Indstilling af denne parameter tilnullreturnerer den angivne kolonne fra de cachelagrede resultater fra den forrige forespørgsel. column_offset (heltal) den ønskede kolonne (0 er den første). Som standard 0.

eksempler

Antag i dette eksempel, at bloggen er afsat til information om biler. 1969 Ford Mustang), og tre brugerdefinerede felter, producent, model og år, tildeles hvert indlæg. Dette eksempel viser posttitlerne, filtreret af en bestemt producent (Ford) og sorteret efter model og år.

get_col-formularen for VPDB-klassen bruges til at returnere en række af alle post-id ‘ er, der opfylder kriterierne, og sorteres i den rigtige rækkefølge. Derefter bruges en foreach-konstruktion til at gentage gennem denne række post-id ‘ er, der viser titlen på hvert indlæg. Bemærk, at dette eksempel blev oprettet af Andomar.

<?php $meta_key1= 'model';$meta_key2= 'year';$meta_key3= 'manufacturer';$meta_key3_value= 'Ford';$postids=$wpdb->get_col( $wpdb->prepare( "SELECT key3.post_idFROM $wpdb->postmeta key3INNER JOIN $wpdb->postmeta key1 ON key1.post_id = key3.post_id AND key1.meta_key = %s INNER JOIN $wpdb->postmeta key2 ON key2.post_id = key3.post_id AND key2.meta_key = %sWHERE key3.meta_key = %s AND key3.meta_value = %sORDER BY key1.meta_value, key2.meta_value",$meta_key1, $meta_key2, $meta_key3, $meta_key3_value) ); if ( $postids ) {echo "List of {$meta_key3_value}(s), sorted by {$meta_key1}, {$meta_key2}";foreach ( $postids as $id ) { $post = get_post( intval( $id ) );setup_postdata( $post );?><p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p><?php} }?>

dette eksempel viser alle indlæg, der indeholder et bestemt brugerdefineret felt, men sorteret efter værdien af et andet brugerdefineret felt.

<?php// List all posts with custom field Color, sorted by the value of custom field Display_Order// does not exclude any 'post_type'// assumes each post has just one custom field for Color, and one for Display_Order$meta_key1 = 'Color';$meta_key2 = 'Display_Order';$postids = $wpdb->get_col( $wpdb->prepare( "SELECT key1.post_idFROM $wpdb->postmeta key1INNER JOIN $wpdb->postmeta key2 ON key2.post_id = key1.post_id AND key2.meta_key = %sWHERE key1.meta_key = %sORDER BY key2.meta_value+(0) ASC", $meta_key2,$meta_key1) ); if ( $postids ) {echo "List of {$meta_key1} posts, sorted by {$meta_key2}";foreach ( $postids as $id ) {$post = get_post( intval( $id ) );setup_postdata( $post );?><p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p><?php}}?>

vælg generiske resultater

generisk, flere række resultater kan trækkes fra databasen med get_results. Funktionen returnerer hele forespørgselsresultatet som et array. Hvert element i dette array svarer til en række af forespørgselsresultatet og kan ligesom get_row være et objekt, et associativt array eller et nummereret array. Hvis der ikke findes matchende rækker, eller hvis der er en databasefejl, vil returværdien være et tomt array. Hvis din $forespørgselsstreng er tom, eller hvis du sender en ugyldig $output_type, returneres NULL.

<?php $wpdb->get_results( 'query', output_type ); ?>

forespørgsel (streng) den forespørgsel, du vil køre. output_type en af fire foruddefinerede konstanter. Som standard objekt. Se vælg en række og dens eksempler for at få flere oplysninger.

  • OBJECT – resultatet vises som et numerisk indekseret array af rækkeobjekter.
  • OBJECT_K – resultat vil blive output som en associativ array af Række objekter, ved hjælp af første kolonne værdier som nøgler (dubletter vil blive kasseret).
  • ARRAY_A-resultatet vises som et numerisk indekseret array af associative arrays ved hjælp af kolonnenavne som nøgler.
  • ARRAY_N – resultatet vises som et numerisk indekseret array af numerisk indekserede arrays.

da denne funktion bruger funktionen $VPDB->forespørgsel (), er alle klassevariablerne indstillet korrekt. Resultaterne tæller for en’ SELECT ‘ forespørgsel vil blive gemt i $8482.

eksempler

få ID ‘ erne og titlerne på alle kladder af Bruger 5 og ekko titlerne.

$fivesdrafts = $wpdb->get_results( "SELECT ID, post_title FROM $wpdb->postsWHERE post_status = 'draft' AND post_author = 5");foreach ( $fivesdrafts as $fivesdraft ) {echo $fivesdraft->post_title;}

få alle oplysninger om kladder af Bruger 5.

<?php$fivesdrafts = $wpdb->get_results( "SELECT * FROM $wpdb->postsWHERE post_status = 'draft' AND post_author = 5");if ( $fivesdrafts ){foreach ( $fivesdrafts as $post ){setup_postdata( $post );?><h2><a href="<?php the_permalink(); ?>" rel="bookmark" title="Permalink: <?php the_title(); ?>"><?php the_title(); ?></a></h2><?php}}else{?><h2>Not Found</h2><?php}?>

Indsæt række

indsæt en række i en tabel.

<?php $wpdb->insert( $table, $data, $format ); ?>

tabel (streng) navnet på den tabel, der skal indsættes data i. data (array) Data, der skal indsættes (i kolonne => værdipar). Både $ datakolonner og $dataværdier skal være “rå” (ingen af dem skal undgås). format (array|string) (valgfrit) en række formater, der skal kortlægges til hver af værdierne i $data. Hvis streng, vil dette format blive brugt til alle værdierne i $data. Hvis udeladt, vil alle værdier i $data blive behandlet som strenge, medmindre andet er angivet i::$field_types.

mulige formatværdier: %s som streng; %d som heltal (heltal); og %f som float. (Se nedenfor for mere information.)

efter indsættelse kan ID ‘ et, der genereres for kolonnen AUTO_INCREMENT, tilgås med:

$wpdb->insert_id

denne funktion returnerer false, hvis rækken ikke kunne indsættes. Ellers returnerer det antallet af berørte rækker (som altid vil være 1).

Bemærk: værdidelen af dataparameterets kolonne= > værdipar skal være skalar. Hvis du passerer et array (eller objekt) som en værdi, der skal indsættes, vil du generere en advarsel svarende til “mysl_real_escape_string() forventer parameter 1 at være streng, array givet på linje 880 i Fil /var//html/AP-inkluderer/AP-db.php”.

eksempler

indsæt to kolonner i træk, den første værdi er en streng og den anden et tal:

$wpdb->insert( 'table', array( 'column1' => 'value1', 'column2' => 123 ), array( '%s', '%d' ) );

erstat række

erstat en række i en tabel, hvis den findes, eller indsæt en ny række i en tabel, hvis rækken ikke allerede eksisterede.

<?php $wpdb->replace( $table, $data, $format ); ?>

tabel (streng) navnet på den tabel, der skal erstatte data i. data (array) Data, der skal erstattes (i kolonne => værdipar). Både $ datakolonner og $dataværdier skal være “rå” (ingen af dem skal undgås). format (array|string) (valgfrit) en række formater, der skal kortlægges til hver af værdien i $data. Hvis streng, vil dette format blive brugt til alle værdierne i $data. Hvis udeladt, vil alle værdier i $data blive behandlet som strenge, medmindre andet er angivet i::$field_types.

mulige formatværdier: %s som streng; %d som heltal (heltal); og %f som float. (Se nedenfor for mere information.)

hvis længden af et strengelement i parameteren $data array er længere end den definerede længde i databasetabellen, vil indsatsen mislykkes, denne funktion returnerer FALSK, men $8482>last_error vil ikke blive indstillet til en beskrivende meddelelse. Du skal sikre, at de data, du ønsker at indsætte, passer ind i databasen – Antag ikke, at Myskl vil afkorte dataene.

efter udskiftning kan ID ‘ et, der genereres for kolonnen AUTO_INCREMENT, tilgås med:

$wpdb->insert_id

denne funktion returnerer en optælling for at angive antallet af berørte rækker. Dette er summen af de rækker, der er slettet og indsat. Hvis tællingen er 1 For en udskiftning af en række, blev der indsat en række, og ingen rækker blev slettet. Hvis antallet er større end 1, blev en eller flere gamle rækker slettet, før den nye række blev indsat. Det er muligt for en enkelt række at erstatte mere end en gammel række, hvis tabellen indeholder flere unikke indekser, og den nye række duplikerer værdier for forskellige gamle rækker i forskellige unikke indekser.

denne funktion returnerer FALSK, hvis en eksisterende række ikke kunne erstattes, og en ny række ikke kunne indsættes.

eksempler

erstat en række, den første værdi er rækken id, den anden en streng og den tredje et tal:

$wpdb->replace( 'table', array( 'indexed_id' => 1,'column1' => 'value1', 'column2' => 123 ), array( '%d','%s', '%d' ) );

Opdater rækker

Opdater en række i tabellen. Returnerer false if-fejl eller antallet af berørte rækker, hvis det lykkes.

<?php $wpdb->update( $table, $data, $where, $format = null, $where_format = null ); ?>

tabel (streng) navnet på den tabel, der skal opdateres. data (array) Data, der skal opdateres (i kolonne => værdipar). Både $ datakolonner og $dataværdier skal være “rå” (ingen af dem skal undgås). Dette betyder, at hvis du bruger GET eller POST data, skal du muligvis bruge stripslashes() for at undgå skråstreger, der ender i databasen. hvor (array) et navngivet array af hvor klausuler (i kolonne => værdipar). Flere klausuler vil blive forbundet med ANDs. Både $hvor kolonner og $hvor værdier skal være “rå”. format (array|string) (valgfrit) en række formater, der skal kortlægges til hver af værdierne i $data. Hvis streng, vil dette format blive brugt til alle værdierne i $data. hvor_format (array|string) (valgfrit) en række formater, der skal kortlægges til hver af værdierne i $hvor. Hvis streng, vil dette format blive brugt til alle elementerne i $hvor.

mulige formatværdier: %s som streng; %d som heltal (heltal) og %f som float. (Se nedenfor for mere information.) Hvis udeladt, alle værdier i $hvor vil blive behandlet som strenge.

returværdier: Denne funktion returnerer antallet af opdaterede rækker eller false, hvis der er en fejl. Husk, at hvis $ – dataene matcher det, der allerede er i databasen, opdateres ingen rækker, så 0 returneres. På grund af dette skal du sandsynligvis kontrollere afkastet med falsk = = = $resultat

eksempler

Opdater en række, hvor ID ‘ et er 1, værdien i den første kolonne er en streng, og værdien i den anden kolonne er et tal:

$wpdb->update( 'table', array( 'column1' => 'value1',// string'column2' => 'value2'// integer (number) ), array( 'ID' => 1 ), array( '%s',// value1'%d'// value2), array( '%d' ) );

OBS: %d kan ikke håndtere kommaværdier – hvis du ikke bruger fulde tal, skal du bruge streng/%s.

Slet rækker

slet-funktionen blev tilføjet i 3.4.0 og kan bruges til at slette rækker fra en tabel. Brugen er meget lig opdatere og indsætte. Det Returnerer antallet af opdaterede rækker eller false on-fejl.

anvendelse

<?php $wpdb->delete( $table, $where, $where_format = null ); ?>

parametre

$tabel (streng) (påkrævet) Tabelnavn. Standard: Ingen $hvor (array) (påkrævet) et navngivet array af hvor-klausuler (i kolonne – > værdipar). Flere klausuler vil blive forbundet med ANDs. Både $hvor kolonner og $hvor værdier skal være ‘rå’. Standard: Ingen $hvor_format (streng/array) (valgfrit) en række formater, der skal kortlægges til hver af værdierne i $hvor. Hvis en streng, vil dette format blive brugt til alle elementerne i $hvor. Et format er et af ‘%d’, ‘%f’, ‘%S ‘ (heltal, flyde, streng; se nedenfor for mere information). Hvis udeladt, vil alle værdier i $hvor blive behandlet som strenge, medmindre andet er angivet i::$field_types. Standard: null

eksempler

// Default usage.$wpdb->delete( 'table', array( 'ID' => 1 ) );// Using where formatting.$wpdb->delete( 'table', array( 'ID' => 1 ), array( '%d' ) );

kører generelle forespørgsler

funktionen query giver dig mulighed for at udføre enhver forespørgsel i databasen. Det bruges bedst, når der er behov for specifikke, brugerdefinerede eller på anden måde komplekse forespørgsler. Du kan finde flere grundlæggende forespørgsler, f.eks. valg af oplysninger fra en tabel, i de andre wpdb funktioner ovenfor, f. eks. get_results, get_var, get_row or get_col.

generel syntaks

<?php $wpdb->query('query'); ?>

forespørgsel (streng) den forespørgsel, du ønsker at udføre.

denne funktion returnerer en heltalsværdi, der angiver antallet af berørte/valgte rækker for SELECT, INSERT, DELETE, UPDATE osv. For at oprette, ændre, afkorte og slippe sætninger, (som påvirker hele tabeller i stedet for specifikke rækker) denne funktion returnerer TRUE på succes. Hvis der opstår en fejl, vil funktionen vende tilbage FALSE. Bemærk, at da både 0 og FALSE kan returneres for rækkeforespørgsler, skal du være forsigtig, når du kontrollerer returværdien. Brug identitetsoperatoren ( = = = ) til at kontrollere for fejl (f.eks. falsk === $resultat), og om nogen rækker blev påvirket (f. eks. 0 === $resultat).

eksempler

Slet ‘gurgle’ metatast og værdi fra Post 13. (Vi tilføjer ‘forbered’ – metoden for at sikre, at vi ikke har at gøre med en ulovlig handling eller ulovlige tegn):

$wpdb->query( $wpdb->prepare( " DELETE FROM $wpdb->postmeta WHERE post_id = %d AND meta_key = %s", 13, 'gargle' ));

skrevet af delete_post_meta().

Indstil forælderen til side 15 til side 7.

$wpdb->query( $wpdb->prepare( "UPDATE $wpdb->posts SET post_parent = %dWHERE ID = %dAND post_status = %s", 7, 15, 'static') );

Beskyt forespørgsler mod indsprøjtningsangreb

se validering af databasedata. Det er et must-read for alle bidragydere og plugin forfattere.

alle data i forespørgsler skal være undsluppet, før forespørgslen udføres for at forhindre angreb. prepare – metoden udfører denne funktionalitet for ordtryk, som understøtter både en sprintf()-lignende og vsprintf()-lignende syntaks.

Bemærk venligst: pr. 3.5::forberede () håndhæver mindst 2 argumenter.

<?php $sql = $wpdb->prepare( 'query' , value_parameter ); ?>

forespørgsel (streng) den forespørgsel, du vil udføre, med pladsholdere (se nedenfor). value_parameter (int / string / array) den værdi, der skal erstattes i pladsholderen. Mange værdier kan overføres ved blot at videregive flere argumenter på en sprintf () – lignende måde. Alternativt kan det andet argument være et array, der indeholder værdierne som i PHP ‘ s vsprintf () – funktion. Der skal udvises forsigtighed for ikke at tillade direkte brugerinput til denne parameter, hvilket muliggør array-manipulation af enhver forespørgsel med flere pladsholdere. Værdier kan ikke undgås.

pladsholdere

forespørgselsparameteren for forbered accepterer sprintf()-lignende pladsholdere. Formaterne %s (streng), %d (heltal) og %f (float) understøttes. (Pladsholderne %s og %d har været tilgængelige, siden funktionen blev føjet til core i Version 2.3, % f har kun været tilgængelig siden Version 3.3.) Eventuelle andre % tegn kan forårsage parsing fejl, medmindre de er undsluppet. Alle % tegn inde i string literals, herunder som jokertegn, skal være dobbelt – % undslap som %%. Alle %d, % f og %S skal ikke citeres i forespørgselsstrengen. Bemærk ,at pladsholderen %d kun accepterer heltal, så du ikke kan videregive tal, der har kommaværdier via %d. hvis du har brug for kommaværdier, skal du bruge % f som float i stedet.

eksempler

Tilføj Metatast => værdipar “Harriets Adages” = > “ordtryk’ databasegrænseflade er som søndag morgen: let.”at skrive 10.

$metakey= "Harriet's Adages";$metavalue= "WordPress' database interface is like Sunday Morning: Easy.";$wpdb->query( $wpdb->prepare( "INSERT INTO $wpdb->postmeta( post_id, meta_key, meta_value )VALUES ( %d, %s, %s )", 10, $metakey, $metavalue ) );

udført af add_meta().

den samme forespørgsel ved hjælp af vsprintf()-lignende syntaks.

$metakey = "Harriet's Adages";$metavalue = "WordPress' database interface is like Sunday Morning: Easy.";$wpdb->query( $wpdb->prepare( "INSERT INTO $wpdb->postmeta( post_id, meta_key, meta_value )VALUES ( %d, %s, %s )", array(10, $metakey, $metavalue) ) );

Bemærk, at vi i dette eksempel pakker værdierne sammen i et array. Dette kan være nyttigt, når vi ikke kender antallet af argumenter, vi skal passere indtil runtime.

Bemærk, at du ikke behøver at bekymre dig om at citere strenge. I stedet for at overføre variablerne direkte til forespørgslen, skal du bruge en %s pladsholder til strenge, en %d placedolder til heltal og en %f som pladsholder til floats. Du kan passere så mange værdier som du vil, hver som en ny parameter i prepare() – metoden.

Vis og skjul fejl

du kan slå fejl ekko til og fra med henholdsvis show_errors og hide_errors.

<?php $wpdb->show_errors(); ?>
<?php $wpdb->hide_errors(); ?>

du kan også udskrive fejlen (hvis nogen) genereret af den seneste forespørgsel med print_error.

<?php $wpdb->print_error(); ?>

Bemærk: Hvis du kører Multisite, skal du definere dieondberror-konstanten, for at databasefejl kan vises som sådan:
<?php define( 'DIEONDBERROR', true ); ?>

Hent Kolonneoplysninger

du kan hente oplysninger om kolonnerne i det seneste forespørgselsresultat med get_col_info. Dette kan være nyttigt, når en funktion har returneret et objekt, hvis egenskaber du ikke kender. Funktionen udsender de ønskede oplysninger fra den angivne kolonne eller et array med oplysninger om alle kolonner fra forespørgselsresultatet, hvis der ikke er angivet nogen kolonne.

<?php $wpdb->get_col_info('type', offset); ?>

skriv (streng) hvilke oplysninger du ønsker at hente. Kan påtage sig en af følgende værdier (liste taget fra docs). Standard til navn.

  • navn – kolonnenavn. Standard.
  • tabel – navn på tabellen kolonnen tilhører
  • maks_længde – maksimal længde af kolonnen
  • not_null – 1 hvis kolonnen ikke kan være NULL
  • primary_key – 1 hvis kolonnen er en primær nøgle
  • unik_key – 1 hvis kolonnen er en unik nøgle
  • multiple_key – 1, hvis kolonnen er en ikke-unik nøgle
  • numerisk – 1, hvis kolonnen er numerisk
  • blob – 1, hvis kolonnen er en blob
  • type – typen af kolonnen
  • usigneret – 1, hvis kolonnen er usigneret
  • nulfyld – 1, hvis kolonnen ikke er signeret nul fyldt

offset (heltal) Angiv den kolonne, hvorfra information skal hentes (hvor 0 er den første kolonne). Standard til -1.

  • -1-Hent oplysninger fra alle kolonner. Output som array. Standard.
  • ikke-negativt heltal-Hent oplysninger fra den angivne kolonne (0 er den første).

rydning af cachen

du kan rydde resultatcachen med flush.

<?php $wpdb->flush(); ?>

dette rydder $wpdb->last_result, $wpdb->last_query og $wpdb->col_info.

Klassevariabler

$vis_fejl hvorvidt fejl ekko er tændt. Standard er sandt. $num_forespørgsler antallet af forespørgsler, der er blevet udført. $last_forespørgsel den seneste forespørgsel, der er blevet udført. $last_error den seneste fejltekst genereret af

. $ forespørgsler du kan gemme alle de forespørgsler, der køres i databasen og deres stoptider, ved at indstille SPAREKONSTANTEN til sand (denne konstant er som standard falsk). Hvis saves er sandt, gemmes dine forespørgsler i denne variabel som et array. $ last_resultat de seneste forespørgselsresultater. $col_info kolonneoplysningerne for de seneste forespørgselsresultater. Se Få Kolonne Oplysninger. $insert_id ID genereret for en auto_increment kolonne af den seneste INSERT forespørgsel. $ num_vælger antallet af rækker, der returneres af den sidste forespørgsel. $præfiks den tildelte tabel præfiks for sitet. $base_præfiks det oprindelige præfiks som defineret i VP-config.php. Til multi-site: brug, hvis du vil have præfikset uden blognummeret vedlagt.

Multi-Site variabler

hvis du bruger Multi-Site, har du også adgang til følgende:

$blogid id for det aktuelle site (blog). $siteid id ‘ et for det aktuelle netværk (tidligere “site”). Multi-site installation, men det kan ændre sig i fremtiden. Se følgende for mere information:

  • tryk på: forskel mellem site_id og blog_id?
  • http://stackoverflow.com/a/4189358/1924128 – et andet godt svar på det samme spørgsmål.

tabeller

databasetabellerne kan nemt refereres til i klassen wpdb.

$indlæg tabellen over indlæg. $postmeta tabellen Meta indhold (Alias brugerdefinerede felter). $Kommentarer Kommentarer tabellen. $commentmeta tabellen indeholder yderligere kommentar oplysninger. $termmeta termmeta-tabellen indeholder udtrykket metaværdier. $vilkår tabellen vilkår indeholder ‘beskrivelse’ af kategorier, Link kategorier, Tags. $term_aksonomi tabellen term_aksonomi beskriver de forskellige taksonomier (klasser af udtryk). Kategorier, Link kategorier og Tags er taksonomier. $ term_relationships tabellen termrelationer indeholder link mellem udtrykket og det objekt, der bruger dette udtryk, hvilket betyder, at denne fil peger på hver kategori, der bruges til hvert indlæg. $ brugere tabellen over brugere. $usermeta usermeta-tabellen indeholder yderligere brugeroplysninger, såsom kaldenavne, beskrivelser og tilladelser. $links tabellen over Links. $indstillinger tabellen indstillinger.

Multisite tabeller

disse tabeller bruges kun i multisite installationer.

$ blogs tabellen Blogs indeholder en liste over de separate blogs (sites), der er oprettet i netværket(e). $tilmeldinger Tilmeldingstabellen. $site tabellen indeholder en liste over de netværk (tidligere kendt som “sites”), der er oprettet i installationen (normalt er der kun et sted angivet i denne tabel). $ sitemeta tabellen netværksindstillinger (Site Meta) indeholder alle indstillinger, der gælder for hele multisite-installationen. $sitecategories tabellen over sidekategorier. $registration_log tabellen registrering Log. $blog_versions tabellen Blogversioner.

kildefilen

er placeret i wp-includes/wp-db.php.

relateret

  • medlemsfunktion:

artikler

  • artikel: sløjfen – en grundlæggende oversigt over dens brug af forespørgsel inden for Ordtryksløjfen.
  • artikel: Forespørgselsoversigt-forklaring på, hvordan du bestemmer, hvilke forespørgsler der genererer ordtryk.
  • artikel: tilpasning af forespørgsler via krog
  • artikel: Vis artikler forespørgsel ved hjælp af brugerdefineret
  • artikel: Byg avancerede forespørgsler på taksonomier
  • artikel: Byg brugerdefineret forespørgsel ved hjælp af forskydning og paginering

Kodedokumentation

  • Klasse: Klasse
  • Klasse: Klasse: Klasse for kommentarrelaterede forespørgsler
  • Klasse: Klasse: Klasse for brugerrelaterede forespørgsler
  • klasse: klasse for brugerrelaterede forespørgsler
  • objekt:
  • funktion: get_post()
  • funktion: get_cery_var()
  • funktion: get_cery_var ()
  • funktion: forespørgselsindlæg () – Opret yderligere brugerdefineret forespørgsel
  • funktion: get_post () – Tag et ID på et element, og returner posterne i database for den artikel
  • funktion: get_posts () – en specialiseret funktion, der returnerer en række elementer
  • funktion: get_pages () – en specialiseret funktion, der returnerer en række sider
  • funktion: have_posts () – en betingelse, der bestemmer, om forespørgslen returnerede en artikel
  • funktion: the_post() – bruges til automatisk at indstille sløjfen efter en forespørgsel
  • funktion: tilbagespoling_posts() – rydder den aktuelle loop
  • funktion: setup_postdata() – indstiller dataene for et enkelt forespørgselsresultat inden for en loop
  • funktion:
  • funktion:
  • funktion:
  • funktion: is_main_forespørgsel() – sikrer, at forespørgslen, der ændres, kun er hovedforespørgslen
  • Action Hook: pre_get_posts – Skift Ordtryksforespørgsler, før de udføres
  • Action Hook: the_post – Rediger postobjektet efter forespørgsel
  • Filter Hook: found_posts – ændrer værdien af objektet found_posts 8681>

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.

Previous post fodring af Kiddie
Next post Brad Hand ville ikke være en dårlig pick up