WooCommerce账户下载列自定义:移除重名列并调整列顺序
WooCommerce下载页面列自定义修复方案
问题分析
你之前的代码未生效,核心原因是列键名判断错误——WooCommerce账户下载区域的产品名列键为product而非product_name,同时原有代码未处理列顺序调整需求。
修正后的代码
将以下代码替换原有内容,添加到主题的functions.php文件中:
add_filter( 'woocommerce_account_downloads_columns', 'customize_downloads_columns', 20, 1 ); add_filter( 'woocommerce_email_downloads_columns', 'customize_downloads_columns', 20, 1 ); function customize_downloads_columns( $columns ) { // 移除产品名列 if ( isset( $columns['product'] ) ) { unset( $columns['product'] ); } // 重新定义列顺序:Download → Downloads remaining → Expires $new_columns = array( 'download-file' => $columns['download-file'], 'download-remaining' => $columns['download-remaining'], 'download-expires' => $columns['download-expires'] ); return $new_columns; }
代码说明
- 调整钩子优先级为20,确保覆盖默认列设置
- 使用正确的键名
product移除产品名列 - 重新构建列数组,按需求指定顺序:
download-file对应Download列download-remaining对应Downloads remaining列download-expires对应Expires列
注意事项
- 修改
functions.php前建议备份文件,避免出错导致网站崩溃 - 若使用子主题,优先将代码添加到子主题的
functions.php中,防止主题更新时代码丢失
内容的提问来源于stack exchange,提问作者Nirmalya
相关产品推荐
相关产品推荐

