![](/img/trans.png)
[英]wordpress - is it possible to add one post with multiple custom post type
[英]Add multiple dates to custom post type in Wordpress
我正在构建一个包含页面,帖子和事件的Wordpress站点(您可以登录多个日期)。 我是Wordpress的新手,所以我一直在为这个活动寻找理想的解决方案。
我相信最好的解决方案是创建名为“Event”的自定义帖子类型,然后单独处理它。
但我不确定如何为每个事件添加多个日期。 我一直在阅读有关自定义分类和发布元数据的内容,但我所经历的每个示例都是创建自定义类别,标记或向帖子添加单个值。
您建议在自定义帖子类型中添加多个日期(不知道提前多少个)? 是分类法还是后元数据? 是否有类型日期的元数据与内置日期输入验证或datepicker?
谢谢!
现在,详细
在其HTML中添加Meta Box和Set Multi Select Datepicker。 使用jQuery日期选择器多选和取消选择添加多选日期选择器。
function myplugin_add_meta_box() {
add_meta_box(
'event-date',
'Set Event Dates',
'myplugin_meta_box_callback',
'event'
);
}
function myplugin_meta_box_callback(){
// Set HTML here which you want to see under this meta box.
// Refer https://stackoverflow.com/questions/17651766/jquery-date-picker-multi-select-and-unselect
// for multiselect datebox.
echo '<input type="date" id="datePick" name=save-dates/>';
}
add_action( 'add_meta_boxes', 'myplugin_add_meta_box' );
function myplugin_save_postdata($post_id){
if ( 'event' == $_POST['post_type'] ) {
update_post_meta($post_id, 'save-dates', sanitize_text_field( $_REQUEST['save-dates'] ));
}
}
add_action( 'save_post', 'myplugin_save_postdata' );
现在,无论您想要显示这些日期。 只需从数据库中检索它们并开始使用它们。 get_post_meta($post_id, 'save-dates',true);
在使用它们之前explode(',', get_post_meta($post_id, 'save-dates',true))
不要忘记explode(',', get_post_meta($post_id, 'save-dates',true))
。 日期以逗号格式保存。
Wordpress方式可能是将日期存储为自定义帖子类型的元数据中的序列化数组(google:php serialize)。 如果您需要搜索日期,最好将每个日期存储为后元数据中的裸数据(不是序列化数组)。 要记住的一件事是,如果这个站点需要l18n(多语言,语言环境支持)日期可能会变得棘手! 查找(Wordpress,l18n,日期)。 如果需要进行任何排序,请考虑将日期存储为unix时间戳。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.