{"id":18452650,"date":"2025-05-06T13:02:21","date_gmt":"2025-05-06T13:02:21","guid":{"rendered":"https:\/\/wordpress.org\/support\/topic\/fatal-error-blockpatterns-php251\/"},"modified":"2025-05-06T13:18:08","modified_gmt":"2025-05-06T13:18:08","slug":"fatal-error-blockpatterns-php251","status":"publish","type":"topic","link":"https:\/\/wordpress.org\/support\/topic\/fatal-error-blockpatterns-php251\/","title":{"rendered":"Fatal error BlockPatterns.php:251"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Not sure why this would have happened but I&#8217;ve just disabled Legacy REST API and then the site and backend got a fatal error<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#091;06-May-2025 12:52:26 UTC] PHP Fatal error:  Uncaught TypeError: strpos() expects parameter 1 to be string, null given in \/home\/mysite\/public_html\/wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php:251<br \/>Stack trace:<br \/>#0 \/home\/mysite\/public_html\/wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php(251): strpos(NULL, '_woo_')<br \/>#1 &#091;internal function]: Automattic\\WooCommerce\\Blocks\\BlockPatterns-&gt;Automattic\\WooCommerce\\Blocks\\{closure}(Array)<br \/>#2 \/home\/mysite\/public_html\/wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php(260): array_map(Object(Closure), Array)<br \/>#3 &#091;internal function]: Automattic\\WooCommerce\\Blocks\\BlockPatterns-&gt;Automattic\\WooCommerce\\Blocks\\{closure}(Array)<br \/>#4 \/home\/mysite\/public_html\/wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php(247): array_map(Object(Closure), Array)<br \/>#5 \/home\/mysite\/public_html\/wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php(229): Automattic\\WooCommerce\\Blocks\\BlockPatterns-&gt;parse_categories(Array)<br \/>#6 \/home\/mysite\/public_h in \/home\/mysite\/public_html\/wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php on line 251<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The only way to get it back up and working again was to replace this in this file wp-content\/plugins\/woocommerce\/src\/Blocks\/BlockPatterns.php<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if ( strpos( $category&#091;'title'], $prefix ) !== false ) {<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">with this<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if ( isset( $category&#091;'title'] ) &amp;&amp; is_string( $category&#091;'title'] ) &amp;&amp; strpos( $category&#091;'title'], $prefix ) !== false ) {<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">I was originally running WooCommerce 9.8.2 and even after i&#8217;d got everything back up and running and updated to 9.8.3 I got the same error and had to apply the same patch.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Any ideas?<\/p>\n","protected":false},"template":"","class_list":["post-18452650","topic","type-topic","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/18452650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic"}],"about":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":1,"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/18452650\/revisions"}],"predecessor-version":[{"id":18452689,"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/18452650\/revisions\/18452689"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/media?parent=18452650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}