Commit f16d69cf209 for woocommerce

commit f16d69cf2093257f586406f6d898d0b34b0a5fc1
Author: Tung Du <dinhtungdu@gmail.com>
Date:   Wed Sep 2 18:28:48 2026 +0700

    Loosen render_term_visual_column return type (#68264)

    * Fix visual attribute term column return type

    * Add changelog entry for visual attribute term column fix

diff --git a/plugins/woocommerce/changelog/loosen-render-term-visual-column-type b/plugins/woocommerce/changelog/loosen-render-term-visual-column-type
new file mode 100644
index 00000000000..ae28c102c7c
--- /dev/null
+++ b/plugins/woocommerce/changelog/loosen-render-term-visual-column-type
@@ -0,0 +1,4 @@
+Significance: patch
+Type: fix
+
+Allow product attribute term columns to preserve non-string content.
diff --git a/plugins/woocommerce/src/Internal/ProductAttributes/VisualAttributeTermAdmin.php b/plugins/woocommerce/src/Internal/ProductAttributes/VisualAttributeTermAdmin.php
index b1017c5a585..4031e5aced2 100644
--- a/plugins/woocommerce/src/Internal/ProductAttributes/VisualAttributeTermAdmin.php
+++ b/plugins/woocommerce/src/Internal/ProductAttributes/VisualAttributeTermAdmin.php
@@ -387,13 +387,13 @@ class VisualAttributeTermAdmin implements RegisterHooksInterface {
 	 *
 	 * @internal
 	 *
-	 * @param string $content  Column output so far.
+	 * @param mixed  $content  Column output so far.
 	 * @param string $column   Current column key.
 	 * @param int    $term_id  Term ID.
 	 * @param string $taxonomy Taxonomy slug.
-	 * @return string
+	 * @return mixed
 	 */
-	public function render_term_visual_column( $content, $column, $term_id, $taxonomy ): string {
+	public function render_term_visual_column( $content, $column, $term_id, $taxonomy ) {
 		if ( 'visual' !== $column || ! VisualAttributeTermMeta::is_visual_attribute_taxonomy( $taxonomy ) ) {
 			return $content;
 		}