Commit 0eb2885e2ea for woocommerce

commit 0eb2885e2ea7a2521c208857fc410cab00efc2af
Author: Vladimir Reznichenko <kalessil@gmail.com>
Date:   Fri Jun 12 16:21:49 2026 +0200

    [Taxes] Harden types handling in WC_Tax class get-methods. (#65711)

diff --git a/plugins/woocommerce/changelog/dev-65710-stricter-types-control-in-tax-class b/plugins/woocommerce/changelog/dev-65710-stricter-types-control-in-tax-class
new file mode 100644
index 00000000000..0a8bb64897c
--- /dev/null
+++ b/plugins/woocommerce/changelog/dev-65710-stricter-types-control-in-tax-class
@@ -0,0 +1,4 @@
+Significance: patch
+Type: fix
+
+Harden types handling in WC_Tax class get-methods.
diff --git a/plugins/woocommerce/includes/class-wc-tax.php b/plugins/woocommerce/includes/class-wc-tax.php
index 427476a7f81..a78fb6cd4d9 100644
--- a/plugins/woocommerce/includes/class-wc-tax.php
+++ b/plugins/woocommerce/includes/class-wc-tax.php
@@ -702,8 +702,8 @@ class WC_Tax {
 		global $wpdb;

 		if ( is_object( $key_or_rate ) ) {
-			$key      = $key_or_rate->tax_rate_id;
-			$compound = $key_or_rate->tax_rate_compound;
+			$key      = (int) $key_or_rate->tax_rate_id;
+			$compound = (bool) $key_or_rate->tax_rate_compound;
 		} else {
 			$key      = $key_or_rate;
 			$compound = (bool) $wpdb->get_var( $wpdb->prepare( "SELECT tax_rate_compound FROM {$wpdb->prefix}woocommerce_tax_rates WHERE tax_rate_id = %s", $key ) );
@@ -722,7 +722,7 @@ class WC_Tax {
 		global $wpdb;

 		if ( is_object( $key_or_rate ) ) {
-			$key       = $key_or_rate->tax_rate_id;
+			$key       = (int) $key_or_rate->tax_rate_id;
 			$rate_name = $key_or_rate->tax_rate_name;
 		} else {
 			$key       = $key_or_rate;
@@ -744,7 +744,7 @@ class WC_Tax {
 	 */
 	public static function get_rate_percent( $key_or_rate ) {
 		$rate_percent_value = self::get_rate_percent_value( $key_or_rate );
-		$tax_rate_id        = is_object( $key_or_rate ) ? $key_or_rate->tax_rate_id : $key_or_rate;
+		$tax_rate_id        = is_object( $key_or_rate ) ? (int) $key_or_rate->tax_rate_id : $key_or_rate;
 		return apply_filters( 'woocommerce_rate_percent', $rate_percent_value . '%', $tax_rate_id );
 	}

@@ -778,7 +778,7 @@ class WC_Tax {
 		global $wpdb;

 		if ( is_object( $key_or_rate ) ) {
-			$key  = $key_or_rate->tax_rate_id;
+			$key  = (int) $key_or_rate->tax_rate_id;
 			$rate = $key_or_rate;
 		} else {
 			$key  = $key_or_rate;