Я пытаюсь скрыть некоторые поля WooCommerce из окна «Быстрое редактирование»: «Дата», «Налоговый статус», «Налоговый класс», «Вес», «Д/Ш/В», «Класс доставки», «Отложенные заказы». ?" и поля «Включить отзывы».
Вот поля, которые я хочу скрыть из окна «Быстрое редактирование»:
Я попытался добавить «отображение: нет»; свойство, но не могу понять, к каким элементам его применить и как применить, так как хотелось бы скрыть только поля, выделенные красным.
Я использую WooCommerce v9.1.2.
Обновлено
Вы можете использовать псевдокласс CSS :has()
для выбора элементов, содержащих другие элементы.
Затем мы используем display:none !important
, чтобы скрыть эти элементы.
Попробуйте следующее, чтобы скрыть определенные поля в быстром редактировании продукта:
// CSS
add_action( 'woocommerce_product_quick_edit_start', 'hide_specific_product_quick_edit_fields_css' );
function hide_specific_product_quick_edit_fields_css() {
// Hide weight, dimensions, backorder, Password, Tax status, Tax class, Shipping class and Enable reviews fields
?><style>
.inline-edit-date, .dimension_fields, .backorder_field,
div:has(> label > span > input.inline-edit-password-input),
label:has(> span > select[name=_tax_status]),
label:has(> span > select[name=_tax_class]),
div:has(> span > select[name=_shipping_class]),
div:has(> label > input[name=comment_status]) {display:none !important;}
</style><?php
}
Код находится в файле function.php вашей дочерней темы (или в плагине). Проверено и работает.
Я обновил свой код ответа, используя чистые правила CSS вместо смеси CSS и jQuery...
Есть ли способ сделать это без пробелов, где поля были скрыты? @LoicTheAztec
@Xim Не совсем, так как речь идет о некоторых жестко запрограммированных тегах <br>
между полями, на которые невозможно настроить таргетинг.
Круто, прямо в точку! Я также пытался скрыть дату с помощью $('.inline-edit-date').closest('div').hide(); но не удалось, можете ли вы мне помочь? @LoicTheAxtec