タグ付けされた質問 「wpdb」

$ wpdbグローバル変数を介してアクセスされるwpdbクラスは、WordPressデータベースとの対話に使用されます


3
%LIKE%SQLステートメントを適切に準備するにはどうすればよいですか?
WordPress $ wpdbクラスを使用して入力をサニタイズおよび準備しながら、LIKE%text%ステートメントを使用したいと思います。 SELECT column_1 from `prefix_my_table` WHERE column_2 LIKE '%something%'; 私はこのようなものを試してみました: $wpdb->prepare( "SELECT column_1 from `{$wpdb->base_prefix}my_table` WHERE column_2 LIKE %s;", like_escape($number_to_put_in_like)); WordPressデータベースクラスを使用して%LIKE%SQLステートメントを適切に準備するにはどうすればよいですか?
34 mysql  wpdb  sql 

3
wpdb prepareを使用する必要がありますか?
私はSQL wpdb->prepareが初めてで、作成したテーブルへの次のクエリに使用する必要があるかどうか疑問に思っています global $wpdb; $tablename = $wpdb->prefix . "my_custom_table"; $sql = "SELECT * FROM " . $tablename . " ORDER BY date_created DESC"; $resulst = $wpdb->get_results( $sql , ARRAY_A ); prepareここで使用する必要がありますか?どうすればいいですか? 乾杯

4
実行されたSQLを実行直後に印刷する方法
私は実行されたSQLクエリを次の直後に印刷できる方法を探しています: $wpdb->query( $wpdb->prepare("INSERT INTO tbl_watchprosite SET keywords=%s,url_to_post=%s,description=%s, date_captured=%s,crawl_id=%d, image_main=%s,images=%s,brand=%s, series=%s,model=%s,condition=%s,box=%s, papers=%s,year=%s,case_size=%s,status=%s,listed=%s, asking_price=%s,retail_price=%s,payment_info=%s,forum_id=%d", $this->getForumSettings()->search_meta,$element->href,$post_meta['description'],current_time('mysql'),$cid,$post_meta['image_main'],$images,$post_meta[0],$post_meta[1],$post_meta[2],$post_meta[3],$post_meta[4],$post_meta[5],$post_meta[6],$post_meta[7],$status,$post_meta[9],$post_meta[10],$post_meta[11],$this->getForumSettings()->ID) ); クエリにどの値が含まれているかを確認できれば、これは素晴らしいことです。 ありがとう
26 wp-query  wpdb 

5
リストをメタキー(存在する場合)で最初にソートし、メタキーのない残りの投稿をタイトル順に並べるクエリ
私はカスタム分類用語ページテンプレートで作業していますDD)次にそれらをタイトルで並べ替え、カスタムフィールドが入力されていない場合はタイトルで並べ替えます(古いアイテム)。 したがって、WP_queryを使用して100種類の方法を試してみましたが、ほとんどの結果が必要に応じて返されますが、この場合は、public_dateのmeta_keyを持つアイテムのみが返されます。他のすべてのアイテムは無視され、表示されません。「or」のリレーションを使用してmeta_queryを試し、publication_dateをEXISTSおよびNOT EXISTSとして比較しましたが、0の結果が返されました。 また、サイトはまだ3.5.2を実行しているため、アップグレードする必要はありません。 以下は、public_dateカスタムフィールドが正しい順序で表示されている投稿を取得する最新のクエリです。 $term = get_queried_object(); // find the term of the taxonomy page we are on $wp_query = new WP_Query( array( 'post_type' => 'resource', 'tax_query' => array( array( 'taxonomy' => 'resource_types', 'field' => 'slug', 'terms' => $term->name, )), 'meta_key' => 'publication_date', 'orderby' => 'meta_value_num', 'order' => 'DESC', …

4
$ wpdb-> get_row()は単一の行のみを返しますか?
それはなぜです?コンソールで同じクエリを実行すると、複数の行が返されました。クエリは次のとおりです。 $this->wpdb->get_row("SELECT * FROM ".$this->wpdb->users." WHERE status = 'active'", ARRAY_A); 複数のアクティブなユーザーがいる場合、同じ単一の行を返し続けます。何か不足していますか?
21 wpdb 

5
$ wpdb更新でエラーを表示
$wpdb->updateデータベースにあるカスタムテーブルを更新するために使用しています。私var_dumpが結果を返すとき: int(0) だから私$wpdb->print_error()は何が悪いのか見ようとしました。ただし、何も表示されません。私も試しました$wpdb->show_errors()が、再び何も表示されませんでした。 wpdbのドキュメントは、私はそれらを正しく使用している場合、私はわからないよので、これらの関数を使用する方法について多くの詳細には触れません。しかし、テーブルを更新した結果が0を返し、エラーを表示しないのはなぜですか?
21 errors  wpdb 

3
WPDB Insertまたは存在する場合は更新
私はWPDBやSQL全般に精通しているわけではありませんが、プロジェクト用のカスタムテーブルがあり、それにメタデータを割り当てようとしています。私が「したい」ことは、行が存在する場合、更新し、挿入しない場合です。WPDB CodexでInsertとUpdateの両方を読みましたが、どちらも「どちらか」の状況にはなりませんでした。私はアップデートで作業できると思ったので、これまでのコードは次のようになります: $wpdb->update( $wpdb->prepare( $wpdb->prefix.'item_info', array( 'post_id' => $post_id, 'item_stock' => $item_stock ), array('post_id' => $post_id) ) ); WordPressには「IF exists Update、ELSE Insert」のようなものがありますか、これを実現するためにカスタムSQLを実行する必要がありますか、またはテーブルにIDが存在するかどうかを確認するために最初にデータベースを照会する必要がありますか?それかそれを挿入しますか?
21 database  wpdb  sql 

2
カスタムテーブルで$ wpdb-> prefixを使用することは必須ですか
この質問が簡単な場合は申し訳ありません。WordPressでプラグインの開発を始めたばかりです。 すべてのチュートリアルで私はこれを見つけました:カスタムテーブルの作成中に$wpdb->prefix使用されます。 例: $table_name = $wpdb->prefix . "liveshoutbox"; 私の質問: 使用することは必須$wpdb->prefixですか?カスタムテーブルにプレフィックスを使用しないとどうなりますか?

2
ユーザー名(user_login)をプログラムで変更する方法は?
タイトルのように、プログラムでユーザーのログインを変更する方法は? wp_insert_user関数を使用したかったのですが、現在のユーザーを更新してもユーザー名は変更されないようです。$wpdb->updateそのために使うべきですか?はいの場合、ユーザー名を変更するためのコードはどのようになりますか?WordPress APIでユーザー名の変更が許可されていない場合、ユーザーのログインを変更するとどのような影響がありますか?


2
SELECTクエリから見つかった行の数を返す方法
SELECTクエリで見つかった行の数を返すことになっている関数を書きましたが、常に0または配列を返すようです。私はこれを約1時間いじっていますが、それでもまだわかりません!私は愚かに間違ったことをしていると確信しています。 MySQLテーブル +--------+-------------+---------------------+ | postid | ip | time | +--------+-------------+---------------------+ | 1234 | 192.168.0.1 | 2014-01-29 14:27:02 | | 5678 | 192.168.0.2 | 2014-01-29 14:27:02 | +--------+-------------+---------------------+ PHP ### Search for IP in database function postviews_get_ip($id, $ip) { global $post, $wpdb; $wpdb->get_results("SELECT * FROM $wpdb->wp_postviews_ips WHERE postid = $id …
14 php  database  mysql  wpdb 

3
$ wpdbはテーブル列にNULLを挿入しません
このようなことをしようとすると $status = NULL; $wpdb->update( 'table', array( 'status' => $status, ), array( 'id' => 1 ) ); 「ステータス」列に空の文字列があり''、単にNULLに設定されません。 列はもちろんNULLにすることができます。$ wpdb-> queryおよび$ wpdb-> prepareもテストしましたが、結果は同じです。私は何か間違っていますか?
13 database  wpdb 

9
ワードプレスで現在実行中のクエリを確認する方法は何ですか?
私は新しいワードプレスに取り組んでいます。今、完全にwpで設計されたサイトが提供されていますが、問題は、見つかった各機能/ページのクエリを検索できないことです $wpdb->get_results データベースから結果を取得するためにも使用され、これは機能していません $wpdb->queries 現在実行中の各クエリを出力する方法はありますか? 助けてください。
12 wpdb 

4
wpdbを使用したget_results
データベースの情報を取得しようとしています。pagesこのステートメントを使用してすべてを表示したかったのですが、空白が表示されますARRAY global $wpdb; $result = $wpdb->get_results ( " SELECT * FROM $wpdb->wp_posts WHERE post_type = 'page' " ); echo $result; // display data 出力: ARRAY 編集:以下の提案を変更した後、私はこれを使用しています。しかし、私はまだ結果が得られません: global $wpdb; $posts = $wpdb->wp_posts; $result = $wpdb->get_results( " SELECT * FROM $posts WHERE 'post_type' = 'page' " ); foreach ($result as $page) { …
12 database  query  wpdb 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.