我有以下代码删除字符串,如果它包含"来自"对于页面上的每个产品。这很好用,但我只想删除每个产品的一个位置。 (该字符串存在于每个产品的两个位置。)
$sub_notags = strip_tags( $subscription_string );
if ( strpos( $sub_notags, 'From:') !== false ) {
return '';
}
这是我希望它工作的地方的HTML输出:
<label class="product_checkbox">Add <span class="price-string">From $68.00 on October 3rd each year</span></label>
这是我想忽略的地方:
<span class="price"><span class="price-string">From $68.00 on October 3rd each year</span></span>
更新:我尝试使用strstr而不是strpos,因为PHP文档说应该&#34;找到第一个出现的字符串&#34;。但那也不起作用。它仍在影响所有事件。
Update2:这是$subscription_string
:
// translators: 1$: recurring amount, 2$: month (e.g. "March"), 3$: day of the month (e.g. "23rd") (e.g. "$15 on March 15th every 3rd year")
$subscription_string = sprintf( __( '%1$s on %2$s %3$s every %4$s year', 'woocommerce-subscriptions' ), $price, $wp_locale->month[ $payment_day['month'] ], WC_Subscriptions::append_numeral_suffix( $payment_day['day'] ), WC_Subscriptions::append_numeral_suffix( $billing_interval ) );
}
这里有$subscription_string
的var_dump:
string(199) $68.00 on October 3rd each year