Вы возвращаете значение b
на каждой итерации, если a
является цифрой.
Возможно, вы хотите:
b += int(a)
Вместо:
b = int(a)
b += 1
add_filter('woocommerce_is_purchasable', 'woocommerce_cloudways_purchasable');
function woocommerce_cloudways_purchasable($cloudways_purchasable, $product) {
return ($product->id == your_specific_product_id (like 22) ? false :
$cloudways_purchasable);
}
Я надеюсь, что его работа для вас
Другой вариант может перезаписать страницу Woocommerce для одного продукта.
add_filter ('template_include', 'locate_template', 30);
публичная функция locate_template ($ template) {
$pre_template = $template;
if ( is_single() && 'product' == get_post_type() )
{
$template = locate_template( array( 'woocommerce/single-product.php' ) );
if ( ! $template ) {
global $post;
$product_id = $post->ID;
if( isset( $product_id ) && !empty( $product_id ) && $product_id == 231 ) {
$template = YOUR_DIR_PATH.'woocommerce/customized_temp.php';
}
else{
return $pre_template;
}
}
}
return $template;
}
После этого вы можете создать custom_temp.php и затем просто перезапишите файл single_product.php (и можете легко удалить кнопку add_to_cart)
С помощью приведенного выше кода вы можете легко переопределить любой шаблон в вашем случае:
Пожалуйста, посетите ниже путь: Woocommerce> шаблоны> один продукт> добавить в корзину> simple.php