You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除Dokan RMA中的No Warranty保修选项

隐藏保修选择框中的"No warranty"选项

有两种可靠的方法可以实现需求:

方法1:直接修改模板循环逻辑

在foreach循环中添加条件判断,当键值为No warranty时跳过该选项的输出。修改后的代码如下:

<select name="warranty_type" id="dokan-warranty-type" class="dokan-form-control">
<?php foreach ( dokan_rma_warranty_type() as $warranty_key => $warranty_value ): ?>
    <?php if ($warranty_key !== 'No warranty'): ?>
        <option value="<?php echo $warranty_key; ?>" <?php selected( $rma_settings['type'], $warranty_key ); ?>><?php echo $warranty_value;  ?></option>
    <?php endif; ?>
<?php endforeach ?>
</select>

该方法直接在输出层过滤,简单直观,适合直接修改模板文件的场景。

方法2:通过钩子过滤选项列表(推荐)

如果不想修改模板代码,可以利用WordPress的钩子机制,过滤dokan_rma_warranty_type函数的返回值,提前移除No warranty选项。在主题的functions.php文件中添加以下代码:

add_filter( 'dokan_rma_warranty_type', 'remove_no_warranty_option' );
function remove_no_warranty_option( $warranty_types ) {
    // 检查键是否存在,避免报错
    if ( isset( $warranty_types['No warranty'] ) ) {
        unset( $warranty_types['No warranty'] );
    }
    return $warranty_types;
}

这种方法无需改动模板,更符合WordPress开发的最佳实践,后续模板更新时不会丢失修改。

内容的提问来源于stack exchange,提问作者OVVO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 16:45:58