タグ付けされた質問 「post-meta」

投稿メタは、追加のコアとカスタム投稿情報を含むデータセットです。

3
メタ値または日付で注文しますか?
カスタムフィールドが呼び出されましたstartDateが、それはいくつかのイベントでのみです。post_date投稿リストの生成に使用できる投稿に設定されていないのでしょうか。 // if meta_key _postmeta.startDate isn't set get the rest by posts.post_date query_posts( array( array( 'posts_per_page' => 10, 'meta_key' => 'startDate', 'meta_value' => date('Y-m-d'), 'meta_compare' => '<', 'orderby' => 'meta_value', 'order' => 'ASC' ), array( 'meta_key' => 'post_date', 'meta_value' => date('Y-m-d'), 'meta_compare' => '<' ) ) );

4
Orderby meta_valueは、既存のmeta_keyを持つ投稿のみを返します
次のwp_queryがあります。 $args = array( 'post_type' => 'news', 'orderby' => 'meta_key', 'order' => 'ASC', 'meta_key'=>'custom_author_name', 'post_per_page'=>-1 ); $query = new WP_Query($args); echo $query->found_posts; echoが10 newsとなるのは、meta_key = custom_author_name。しかしnews、その特定のmeta_keyを含むpost_meta行を持たない数百の投稿があります。meta_queryは含まれていないことに注意してください。meta_valueでフィルターするのではなく、meta_keyで投稿をソートしようとしているだけなので、meta_valueは割り当てられていません。 すべての投稿をorderbyで選択するべきではありませんか?注文するだけですか? もしそうなら、なぜ結果はフィルタリングされますか?meta_keyが見つからない場合は、空の文字列を使用するか、すべてに一致しないのはなぜですか? そうでない場合、なぜでしょうか? すべてのニュース投稿にmeta_keyを入力すると(空の文字列であっても)、期待どおりの結果が得られます。しかし、それはそこにある必要のないテーブル行の多くのように思えます。

6
投稿のタイトルが存在するかどうかを確認し、存在しない場合は投稿を挿入し、存在する場合はメタにインクリメンタル番号を追加します
ユーザーがフォームを送信してカスタム投稿を作成する機能はすでにあります... <?php $postTitle = $_POST['post_title']; $submit = $_POST['submit']; if(isset($submit)){ global $user_ID; $new_post = array( 'post_title' => $postTitle, 'post_content' => '', 'post_status' => 'publish', 'post_date' => date('Y-m-d H:i:s'), 'post_author' => '', 'post_type' => 'stuff', 'post_category' => array(0) ); $post_id = wp_insert_post($new_post); add_post_meta($post_id, 'times', '1'); } カスタム投稿のタイトルが存在するかどうかを確認し、存在しない場合は、メタフィールドに#1の投稿を作成し、存在する場合は、メタフィールドに1を追加するだけです。

4
REST APIを使用してカスタム投稿メタを取得する方法
ワードプレスジョブマネージャープラグインを使用して施設リストに使用されるワードプレスウェブサイト用のREST APIを作成しようとしています。 \ plugins \ rest-api \ plugin.phpにカスタム投稿の分類を登録しました。 以下のAPIは、デフォルトの応答ですべてのリストを表示します。 http:// localhost / sports / wp-json / wp / v2 / joblisting / 以下のコードを使用して、JSON応答に投稿メタを追加したいと思いました。 function slug_register_phone_number() { register_rest_field( 'job_listing', 'phone', array( 'get_callback' => 'slug_get_phone_number', 'update_callback' => null, 'schema' => null, ) ); } function slug_get_phone_number($post, $field_name, $request) { return get_post_meta($post->id, '_phone' …

2
WordPressがリストビューですべてのカスタム投稿タイプのメタデータを取得する
PHPが死にかけているというWordPressで問題が発生しています。メモリを増やしましたが、PHPプロセスが100%のCPU使用率にジャンプしてから終了し、Apacheが500エラーをスローします。 Apacheで何かをログに記録したり、PHP / MySQLでエラーをログに記録したりしましたが、一般的な500エラー以外は何も記録されません。 500号はリストページにあります。例: /wp-admin/edit.php?post_type=artist 次のような日付の並べ替えを追加すると、WordPressには現在1200以上のアーティストエントリがあります。 /wp-admin/edit.php?post_type=artist&orderby=date 次に、リストはうまくロードされます。私はMySQLクエリログに座って見ましたが、WordPressが10個程度のリストを作成するためにすべての投稿(すべて1200個)のメタデータをロードしているようです。クエリの1つだけで、92000行が返されます。高度なカスタムフィールドと独自のフレームワークを持つテンプレートを使用しているため、各投稿にはかなりの量のメタデータが添付されています。これはPHPで処理するにはデータが多すぎると思います。ここで上限に達しました。1200の投稿は来年には簡単に2倍になるでしょう。 最初のページの読み込みを強制して日付の並べ替えを追加するか、すべてのメタデータの読み込みに関する問題を修正するにはどうすればよいですか?

5
部分的なメタキーで投稿をクエリするにはどうすればよいですか?
投稿の「いいね」ステータスを投稿メタとして保存する機能があります。その「いいね」を好きなユーザーに関連付けたいので、「like_status_ {user_id}」というカスタムフィールドを設定します({user_id}は現在ログインしているユーザーのIDです)。これを0または1.したがって、「いいね」が複数ある投稿の場合、dbには次のように設定されたメタ値がいくつかあります。 'meta_key' = 'like_status_0' 'meta_value' = 1 'meta_key' = 'like_status_2' 'meta_value' = 1 'meta_key' = 'like_status_34' 'meta_value' = 1 ....等々。 特定の投稿には潜在的に数千のいいね!他の誰かもその投稿を気に入っているかどうかを示すクエリをどのように実行しますか? 私はこのようなことを考えていました: $query = new WP_Query(array( 'meta_key' => 'like_status_{user_id}', 'meta_value' => 1, )); 他の誰かがその投稿を気に入ったときに、「ねえ、あなたが気に入った投稿を他の誰かが気に入ったので、ぜひチェックしてみてください!」のような通知をプッシュしようとしています。しかし、私は他の誰かがその投稿を気に入っているかどうか、そうであれば誰がそうするかを知る方法が必要です。 それが不可能な場合は、投稿の1人のユーザーの「いいね」のステータスをすばやく更新する効率を維持しながら、このデータをpost_metaとして保存するより良い方法を提案できますか?

2
プラグインなしでメタタグを追加する
プラグインをインストールせずにすべてのページにメタタイトル、メタ説明、メタキーワードを追加することは可能ですか? クライアントはプラグインをインストールする必要がない。私はこのケースに興味があります。メタを挿入するには、管理者がワードプレスにseoプラグインをインストールする必要があることだけがわかっています。
9 post-meta  seo 

3
カスタムフィールド出力を代替するときに、フィルターをフックしてget_post_metaをキャッチする方法
カスタムフィールド出力を代替するときに、フィルターをフックしてget_post_metaをキャッチする方法 次のように、投稿にカスタムフィールド(メタデータ)を入力します。 <!--:de-->Nominale spanning<!--:--><!--:zh/cn-->额定电压<!--:--><!--:en-->Arrester Accessories<!--:--> この出力を翻訳する必要があるので、メタデータ出力の前に「get_post_meta」にフックする方法を知りたいです。 数日間試してみましたが、うまくいきません。 function getqtlangcustomfieldvalue($metadata, $object_id, $meta_key, $single){ $fieldtitle="fields_titles"; if($meta_key==$fieldtitle&& isset($meta_key)){ //here is the catch, but no value has been passed } } //Specify 4 arguments for this filter in the last parameter. add_filter('get_post_metadata', 'getqtlangcustomfieldvalue', 10, 4);

4
カテゴリを「wp-admin / post-new.php」に追加する方法は?
カテゴリも設定する新しい投稿を作成するためのリンクが欲しい。 私が試してみましたwp-admin/post-new.php?post_category=12とwp-admin/post-new.php?cat=12、どちらも働きました。また、カテゴリのIDではなく名前を使用してみました。影響もありませんでした。 デフォルトのカテゴリで新しい投稿へのリンクを作成するにはどうすればよいですか?

1
画像のアップロード時にカメラ情報をメタデータとして保存しますか?
アップロードしている画像内に保存されている「クレジット」メタデータをWordPressに自動的に保存させようとしています。これは、を使用してカスタム投稿メタフィールドとして入力されることを知っていupdate_post_meta()ます。 「クレジット」情報はによって収集されますがwp_read_image_metadata()、media_handle_upload()使用されません。それだけのために、画像から集められた「キャプション」と「タイトル」の情報使用post_contentしてpost_title、それぞれを。 画像の編集時にアップロード後にカスタム添付メタデータフィールドを追加する方法の例をいくつか見つけましたが、WPは既に画像のメタデータからこの情報を収集しているため、画像として保存する方法を見つけたいと思いますアップロードされました。 添付ファイルの「credit」行を保存するためにmedia_handle_upload()呼び出すことができるように、フックするために実行する手順(フックではないようです)がわかりませんupdate_post_meta。


2
投稿メタデータによる投稿のフィルタリング
get_post_meta($post->ID, "project_cat", true)(投稿IDを返す)指定した値と等しい投稿のみが表示されるように投稿をフィルター処理したいのですが。 これを行う方法はありますか? WP-Paginateプラグインと互換性のある方法に特に興味があります。

1
「_encloseme」メタキーの難問
メタボックス/カスタムフィールドを操作しているときに、これらの多くを間接的に作成_encloseme meta_keysしているようwp_postmetaです。 ここに見られる: これまでのところこれで問題は発生しておらず、カスタムフィールドは正常に機能していますが、私はローカルテストサイトに2つほどの投稿しかしなかったので、後で問題が発生する場合はライブサイトに実装したくありません。道を行く。誰もがこれらについて何をすべきか知っています、彼らは正常ですか? これが私のメタボックスのコードです。 <?php //Add meta boxes to post types function plib_add_box() { global $meta_box; foreach($meta_box as $post_type => $value) { add_meta_box($value['id'], $value['title'], 'plib_format_box', $post_type, $value['context'], $value['priority']); } } //Formatting function plib_format_box() { global $meta_box, $post; // verification echo '<input type="hidden" name="plib_meta_box_nonce" value="', wp_create_nonce(basename(__FILE__)), '" />'; echo '<table …

1
プログラムでカテゴリ/用語を投稿から削除する最良の方法
特定のカテゴリのすべての投稿を変換して、代わりにpostmetaフラグを使用するようにスクリプトを作成しています(MySQLをテストしたところ、私のサイトと同じ大きさのサイトでは、クエリ時間を大幅に短縮できることがわかりました)。 投稿を変換するとき、カテゴリ内のすべての投稿を取得するだけの場合は、postmetaを追加してからカテゴリを削除します。これにより、カテゴリに投稿がなくなるまでその関数をリロードできます。 投稿から用語を削除するための適切な機能が見つかりません。投稿IDと用語タクソノミー+ IDを指定して、処理してもらいます。 私はまた、誰かがそれを知っている場合に変換を行うことができるプラグインにも興味があります。Scribuのプラグインで処理できる反対のものとは異なり、cat-> postmetaを実行するものは見つかりませんでした。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.