wordpress - 在 Wordpress 自定义帖子类型管理表单中添加动态更改的下拉列表
问题描述
我需要在 Wordpress 中创建一个自定义帖子类型,其中包含一个名为“代码”的字段。我们称这个 CPT 为“城市代码”。每个代码都与一个城市相关联。这种关联用 JSON 表示如下:
{
cities: [
{
name: "New York",
codes: [1,2,3]
}
...
]
}
在管理区域创建帖子时,我不想让用户手动输入代码。为了避免这个问题,我想实现两个下拉菜单。第一个下拉列表有一个城市列表。当用户选择一个城市时,应该在第二个下拉列表中启用与该城市相关的代码列表。例如,如果用户选择“纽约”,则第二个下拉菜单将使用户能够选择 1、2 或 3 个代码。
我对实施下拉动态没有任何疑问。
问题是:如何在 CPT 添加/编辑区域添加这些自定义下拉菜单?
我已经尝试过Advanced Custom Fields Pro插件,但这并没有提供满足我需求的可定制选项。
解决方案
为了处理这个问题,我首先使用自定义元框生成两个自定义字段:一个用于城市,另一个用于代码。
在每个自定义字段中,我定义了一个可以由 javascript 脚本处理的唯一类。change
然后,我编写了一个处理第一个字段上的事件的 Jquery 脚本。当用户更改它时,我只需使用 Jquery 重写第二个字段中的选项列表。
最后,我只是在我想要的区域上加载了字段。
使用这种方法,WordPress 将两个值(城市和代码)存储为 post meta。它可以使用get_post_meta
功能。
推荐阅读
- jquery - 如何在实时功能中获取锚点名称
- node.js - 使用 react native 和 nodejs 制作实时应用程序的问题
- c# - 将 ContentPage 绑定到布局属性
- visual-studio-code - 删除文件时如何让 VS Code 提示?
- c - 如何让父进程等待子进程完成?
- android - 无法创建登录 MVVM 架构
- vb.net - 防止引入类似字符 vb.net
- python - 有没有办法使用 Pyplot invert.axis 作为覆盖?
- node.js - Is it possible to access firebase on both server side and client side in NodeJS?
- sql - PostgreSQL 中的 JSON 和 regex_replace