问题描述
我正在尝试使多个复选框适用于基于语言值的自定义元。我在另一个问题中建立了此代码,并且工作正常,除了在未保存数据但返回“ in_array()期望参数2为给定的数组字符串”的情况下首次运行该代码。 我想这是因为add_Meta_data()不能按预期的方式工作-如果postMeta为空-但我不知道为什么或如何使其工作。预先感谢。
function futbol_Meta_Box( $post ) {
// Get post Meta value using the key from our save function in the second paramater.
$futbol_Meta = get_post_meta($post->ID,'_futbol-Meta-Box',true);
?>
<input type="checkBox" name="futbol-Meta-Box[]" value="en" <?PHP echo (in_array('en',$futbol_Meta)) ? 'checked="checked"' : ''; ?> />Inglés
<br>
<input type="checkBox" name="futbol-Meta-Box[]" value="fr" <?PHP echo (in_array('fr',$futbol_Meta)) ? 'checked="checked"' : ''; ?> />Francés
<br>
<input type="checkBox" name="futbol-Meta-Box[]" value="es" <?PHP echo (in_array('es',$futbol_Meta)) ? 'checked="checked"' : ''; ?> />Español<br>
<?PHP}
add_action( 'save_post','save_futbol_Meta_Box' );
function save_futbol_Meta_Box() {
global $post;
// Get our form field
if(isset( $_POST['futbol-Meta-Box'] )) {
$futbol = $_POST['futbol-Meta-Box'];
$old_Meta = get_post_meta($post->ID,true);
// Update post Meta
if(!empty($old_Meta)){
update_post_Meta($post->ID,$futbol);
} else {
add_post_Meta($post->ID,$futbol,true);
}
} }
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)