提问人:wws34 提问时间:11/15/2023 最后编辑:wws34 更新时间:11/21/2023 访问量:90
对于wordpress类别图像未定义的数组键
For wordpress category image undefined array key
问:
我正在尝试将图像添加到我的 WordPress 主题的类别中。我将图像添加到类别中。相关类别的图像将显示在管理面板和站点的相关位置。但是我从文件中的代码块中收到此错误。function.php
Warning: Undefined array key "category_custom_image_url" in C:\xampp\htdocs\wordpress\wp-content\themes\customjob\functions.php on line 457
我无法识别导致错误的数组元素。'category_custom_image_url'
add_action( 'edit_term', 'edit_term_callback' );
function edit_term_callback($term_id) {
$image = '';
$image = get_term_meta( $term_id, 'term_image' );
if ( $image )
update_term_meta( $term_id, 'term_image', esc_url( $_POST['category_custom_image_url']) )
else
add_term_meta( $term_id, 'term_image', esc_url( $_POST['category_custom_image_url']) );
}
你能帮我识别这个晦涩难懂的序列吗?
编辑:奇怪的是,我在类别编辑页面上没有收到错误。当我按下菜单编辑页面上的保存菜单按钮时,我收到此错误。我不明白为什么这个页面会给出错误,但错误出在与将图像添加到类别相关的代码中。它还会从列表中删除现有菜单。
print_r($_POST);
代码后的结果
Array (
[nav-menu-data] =>
[closedpostboxesnonce] => 958eb87f93
[meta-box-order-nonce] => f9354247e5
[update-nav-menu-nonce] => f2b7a942cd
[_wp_http_referer] => /wordpress/wp-admin/nav-menus.php?action=edit&menu=107
[action] => update
[menu] => 107
[menu-name] => Header Menu
[menu-locations] => Array ( [menu-1] => 107 )
[save_menu] => Save menu
)
额外说明:让我指出,这些特殊类别是我为特殊帖子类型创建的类别。创建类别、将内容连接到这些类别和添加图像没有问题。我只是在另一个编辑页面上收到未定义的数组错误。
答:
0赞
womd
11/15/2023
#1
好的,那么这个呢:
add_action( 'edit_term', 'edit_term_callback' );
function edit_term_callback($term_id) {
$image = get_term_meta($term_id, 'term_image', true);
if(isset($_POST['category_custom_image_url']) ){
if ($image) {
update_term_meta($term_id, 'term_image', esc_url($_POST['category_custom_image_url']));
} else {
add_term_meta($term_id, 'term_image', esc_url($_POST['category_custom_image_url']));
}
}
}
你放在哪里:
$_POST[] = 'category_custom_image_url';
?这不是真正的解决方案。
评论
0赞
wws34
11/17/2023
首先,我要感谢你和尼科。我以这种方式解决了这个问题。 您的解决方案也有效。但是当我按下更新按钮而不采取任何行动时,当前图像将被删除。图像删除问题与此有关吗?$_POST[] = 'category_custom_image_url'; return $_POST;
1赞
womd
11/17/2023
我想知道这是否像预期的那样工作;)
0赞
Nico Haase
11/17/2023
请记住,所有澄清都应添加到您的问题中,而不是任何评论部分
0赞
wws34
11/24/2023
@womd非常感谢您的关注。当我在没有任何干预的情况下直接按下更新按钮时,当前图像将被删除。或者当我按下删除按钮时,当前图像不会被删除。我修了一个,另一个坏了。我无法同时修复两个错误。
0赞
Nico Haase
11/24/2023
请通过编辑为您的问题添加所有澄清
评论
$_POST
$_POST