我写了一些脚本,将自定义图像字段添加到我注册的自定义分类中。
问题是我现在试图获取术语元数据,因为自从wordpress 4.4版本引入add_term_meta函数以来,我无法使用此函数。
现在,我在网站上使用的是wordpress 4.2版,因为那里有很多自定义插件和脚本。
我必须使用哪个函数来获取4.2版上的元数据一词?
**编辑**
add_action( 'created_hr50_amenity', 'save_hr50_amenity_image', 10, 2 );
function save_hr50_amenity_image ( $term_id, $tt_id ) {
if( isset( $_POST['hr50_amenity-image-id'] ) && '' !== $_POST['hr50_amenity-image-id'] ){
$image = $_POST['hr50_amenity-image-id'];
// ** add_term_meta ** WHAT CAN I USE INSTEAD OF THIS FUNCTION? **
add_term_meta( $term_id, 'hr50_amenity-image-id', $image, true );
// var_dump(get_term_meta( $term_id, 'hr50_amenity-image-id'));
}
}
答案 0 :(得分:3)
难道不能只复制add_term_meta
并命名为compat_add_term_meta
并与4.2 WP一起使用?
您具有此处的全部功能: https://developer.wordpress.org/reference/functions/add_term_meta/
您可以使用条件式:
if ( version_compare( $GLOBALS['wp_version'], '4.2', '<=' ) ) {
compat_add_term_meta();
} else {
add_term_meta();
}
这样在两种情况下都可以工作。
请记住,除了存在所有其他功能之外,您可能还必须添加wp_term_is_shared
。
也不是100%肯定,但请查看数据库架构的外观。某些表也可能丢失(术语元),因此也应创建这些表(可以通过$wpdb
类tho来完成)。