如何隐藏WooCommerce Bookings预订中的‘(sinistra)’文本?
解决WooCommerce Bookings隐藏‘(sinistra)’文本的问题
你的代码没生效大概率是选择器不对、钩子时机不合适,或者样式被后续加载的代码覆盖了。给你两个靠谱的解决方案:
方案一:直接修改文本内容(推荐)
不用CSS隐藏,直接通过WooCommerce的过滤器把(sinistra)替换掉,这种方法不受前端结构变化影响,稳定性更高:
add_filter( 'woocommerce_bookings_availability_text', 'remove_sinistra_from_booking_text', 10, 2 ); function remove_sinistra_from_booking_text( $availability_text, $product ) { // 替换文本中的'(sinistra)',如果实际文本带前后空格,自行调整引号内内容 $availability_text = str_replace( '(sinistra)', '', $availability_text ); // 清理替换后可能出现的多余空格 $availability_text = trim( $availability_text ); return $availability_text; }
把这段代码添加到主题的functions.php文件,或者用自定义代码插件(比如Code Snippets)添加即可。
方案二:修正CSS隐藏方案
如果偏好CSS方法,先按以下步骤调整:
- 打开产品页面按F12调出开发者工具,找到包含
(sinistra)的元素,复制它的准确CSS选择器 - 把下面代码里的选择器替换成你查到的,再添加到主题或自定义代码中:
add_action('wp_head', 'hide_slot_count_spaces_left', 99 ); function hide_slot_count_spaces_left() { global $product; // 仅在单个产品页面且为预订类产品时生效 if ( is_product() && $product->is_type('booking') ) { ?> <style> /* 替换成你实际查到的CSS选择器 */ .your-actual-selector { display: none !important; } </style> <?php } }
原代码失效原因
- 你用的
booking-spaces-left类可能不存在,实际元素的类名可能和你假设的不一样 woocommerce_single_product_summary钩子输出的样式,可能被主题或插件后续加载的高优先级样式覆盖,换成wp_head并设置优先级99,能确保样式提前加载生效
内容的提问来源于stack exchange,提问作者Spancio
相关产品推荐
相关产品推荐

