Gutenberg: Dukungan untuk menyimpan metadata CPT di Tabel Database Kustom

Dibuat pada 2 Des 2017  ·  3Komentar  ·  Sumber: WordPress/gutenberg

Sebagai contoh, kami memiliki dua CPT, Buku dan Penulis, dan kami ingin menyimpan metadata Buku (yaitu parent_id, isbn, subtitle, average_rating, ratings_count, publishing_date, num_pages, bisac_code, author_id, dll) dalam tabel DB khusus " Buku" dan juga menyimpan metadata Penulis (yaitu jumlah_karya, tanggal_kelahiran, jumlah_penggemar, peringkat_rata-rata, dll) dalam tabel DB khusus "Penulis".

Kami kemudian ingin menanyakan data seperti ini:

SELECT p.post_id, p.post_title, p.post_content, b.subtitle, b.average_rating, a.post_tile as author_name
FROM wp_posts as p
INNER JOIN books as b ON p.post_id = b.parent_id
INNER JOIN authors as a ON b.author_id = a.id
WHERE b.average_rating => 3 AND YEAR(b.publication_date) => 2007 AND bisac_code = 'FIC009050' AND a.average_rating => 3

Menyimpan semua metadata CPT dalam wp_postmeta bukanlah pilihan karena pencarian lebih dari 1 juta baris akan sangat lambat dan tidak berskala dan itulah alasan mengapa WooCommerce memindahkan pesanan dan produk ke tabel DB khusus juga.

Apakah saya dapat menambahkan bidang khusus/blok meta ke dua CPT di Gutenberg dan kemudian menyimpan data meta itu di tabel basis data khusus?

Framework [Feature] Block API [Feature] Extensibility [Priority] Low [Type] Enhancement

Komentar yang paling membantu

@pmgarman Ya, Anda sudah dapat menyimpan metadata CPT dalam tabel db khusus tanpa Gutenberg, tetapi saya cukup yakin bahwa Anda belum dapat melakukannya dengan Gutenberg.

Semua 3 komentar

Anda sudah dapat melakukan ini tanpa perlu mengubah Gutenberg. Anda dapat melakukannya sekarang tanpa Gutenberg sebenarnya. Kami melakukannya pada proyek-proyek kami semi regulrly.

@pmgarman Ya, Anda sudah dapat menyimpan metadata CPT dalam tabel db khusus tanpa Gutenberg, tetapi saya cukup yakin bahwa Anda belum dapat melakukannya dengan Gutenberg.

Blok penyusun yang menyimpan sesuatu di beberapa bidang CPT dimungkinkan menggunakan kait EntityProvider dan useEntityProperty. Anda dapat memeriksa cara kerja blok PostTitle, PostExcerpt....

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

jasmussen picture jasmussen  ·  3Komentar

bradyvercher picture bradyvercher  ·  3Komentar

ellatrix picture ellatrix  ·  3Komentar

nylen picture nylen  ·  3Komentar

aduth picture aduth  ·  3Komentar