我正在努力建立一个网站,目前包括不同的商店和时间,专辑将发布。
我不确定应该如何使用自定义分类法和自定义字段等来构建它。主要问题是,我希望每个分类法都有相同的字段,但每个帖子的值不同。
我在想:
Post=专辑发行商店=自定义分类法(包括亚马逊、Discogs、iTunes、Tidal等)
相册X可能在两家商店有售,但每家都有不同的发行时间和价格。
实例
后相册XStores-亚马逊(12点发布,价格9.99),iTunes(9点发布,价格7.99)
理想情况下,我希望能够为相册X创建一个帖子,并在编辑页面的底部有一个表/框,该表/框将有一个下拉列表来选择第一个存储,然后仅在该帖子上为该存储创建几个可自定义的字段。然后是商店2和商店3等的另一个下拉列表。
我希望我已经解释好了。
构建这样的东西的最佳方式是什么?我应该使用什么样的插件等来提供这种功能?
最合适的回答,由SO网友:bosco 整理而成
我将这样实施:
相册是Custom Post Type (CPT)。发布日期、门店和门店详细信息包括post meta-data 用于专辑CPT。
元数据可以结构化,因此一种选择是将相册的所有存储数据存储为一个关联数组,类似于以下内容:
// You would build this array from user-entered data collected from a form in a metabox
$album_stores = [
[
"name" => "Amazon",
"url" => "https://amazon.com/album-name",
"price_usd" => "23.95"
],
[
"name" => "Google Play",
"url" => "https://play.google.com/music/album-name",
"price_usd" => "22.50"
]
]
update_post_meta( $post->ID, "album_stores", $album_stores );
update_post_meta( $post->ID, "album_release_date", $release_date );
如果您希望能够按存储搜索或排序相册,请选择存储
custom taxonomy 会很方便,并且可以自动应用
when an Album is published or updated 基于相关元数据的存在。否则,也可以通过修改或创建搜索查询来查询相册CPT元数据来实现搜索(这还允许您根据商店详细信息(如价格等)进行搜索)。
寄存器acustom meta-box 以提供编辑存储和发布日期元数据的用户界面。