【发布时间】:2017-10-03 17:32:10
【问题描述】:
【问题讨论】:
标签: php wordpress woocommerce shipping orders
【问题讨论】:
标签: php wordpress woocommerce shipping orders
您要删除的这些选择器是自定义的,肯定是由第三方插件添加的。
您可以尝试使用 admin_head 操作挂钩中挂钩的自定义函数来隐藏下拉选择器字段。您需要将 CSS ID #my_selector_id 替换为您要隐藏的选择器的 ID 或类(使用浏览器代码检查器找到正确的选择器)
add_action( 'admin_head', 'adding_custom_css_in_admin_head', 999 );
function adding_custom_css_in_admin_head() {
?>
<style type="text/css">
body.post-type-shop_order select#my_selector_id {
display: none !important;
}
</style>
<?php
}
代码进入您的活动子主题(或主题)的 function.php 文件或任何插件文件中。
此代码已经过测试,它应该适用于您的下拉选择器字段。
【讨论】:
我通过使用 css 删除了我在 function.php 中添加了这个函数
add_action('admin_head', 'hidey_admin_head');
function hidey_admin_head() {
echo '<style type="text/css">';
echo 'select[name=_customer_shipping_country] {display: none;}';
echo '</style>';
}
【讨论】:
选择的答案不是最佳解决方案,因为过滤器仍在创建中,它们只是被隐藏了。相反,您应该挂钩正确的过滤器并阻止 WooCommerce 插件创建选择框:
add_filter( 'woocommerce_products_admin_list_table_filters', 'my_woocommerce_products_admin_list_table_filters' );
function my_woocommerce_products_admin_list_table_filters( $filters ) {
// to remove the category filter
if( isset( $filters['product_category'] ) ) {
unset( $filters['product_category'] );
}
// to remove the product type filter
if( isset( $filters['product_type'] ) ) {
unset( $filters['product_type'] );
}
// to remove the stock filter
if( isset( $filters['stock_status'] ) ) {
unset( $filters['stock_status'] );
}
return $filters;
}
【讨论】:
您可以尝试使用 admin_head 操作挂钩中挂钩的自定义函数来隐藏下拉选择器字段。您需要将 CSS ID #my_selector_id 替换为您要隐藏的选择器的 ID 或类(使用浏览器代码检查器查找正确的选择器),您可以查看属性是否按预期工作浏览器的开发者工具和选择每个元素。
【讨论】: