1

以下を行うプラグインを作成しています。(画像を投稿したかったのですが、許可されていません)

テーブルからのドラッグ アンド ドロップ順序を使用して、1 つのカテゴリ内の複数の投稿のメタ データを更新します。

テーブルはこの 1 つのカテゴリのすべての投稿に表示され、すべての投稿の ID、すべての投稿のタイトル、およびキーと値によって定義されたすべての投稿のメタ データが表示されます。

jQuery は並べ替えを行い、テーブル内の順序を更新します。たとえば、このカテゴリには 1 から多くの投稿が含まれているため、10 件の投稿がある場合、テーブル内の値は 1 から 10 に更新されます。

ここで行う必要があるのは、テーブル内のすべての投稿の投稿メタ値を、テーブルの列 3 に表示される正しい値で更新することです。

デフォルトの関数を使用する:

update_post_meta( $post->ID, Post_Order, $_POST['Post_Order']);

これにより、メタがテーブルの最後の行の値に設定されます。

各行を調べて、その行から投稿 ID とキー値を取得し、対応する投稿のメタデータを更新するにはどうすればよいですか。

ありがとう

編集

これを投稿してから5分後、私はそれを整理しました。これが答えです。おそらく正しい方法ではありませんが、非常にうまく機能します。

$args = array(
          'order'           => 'ASC',
          'post_type'       => 'post',
          'post_status'     => 'publish',
          'posts_per_page'  => '',
          'category_name'   => 'Customers',
          'meta_key'        => 'Post_Order',
          'orderby'         => 'meta_value_num'
        );

        $my_query = null;
        $my_query = new WP_Query($args);
        while ($my_query->have_posts()) : $my_query->the_post();
            $postid = get_the_ID();
            update_post_meta( $postid, 'Post_Order', $_POST['Post_Order_' . $postid]  );
        endwhile;
4

0 に答える 0