Use the sidebar filter to select certain subcategories.
Click the “Filter” button.
Actual result
A fatal error occurs:
Warning: Array to string conversion in /wp-includes/post.php on line 6071
Fatal error: Uncaught TypeError: urldecode(): Argument #1 ($string) must be of type string, array given in /wp-includes/post.php on line 6083
The page does not load, and the filter cannot be applied.
Expected result
The filter should display listings for the selected subcategory without causing any errors.
Extra details
It seems that the filter[listing_category] parameter is being sent as an array instead of a string.
The error only happens with certain subcategory selections.
Please try unpublishing all listing attributes and check if the issue persists. The problem may be caused by an incompatible custom attribute, for example, if an attribute is selectable in the Edit section but not in the Search section, or vice versa.
If the issue disappears with all attributes unpublished, try publishing them one by one, checking after each to see if the problem reoccurs.
If the issue persists even after all attributes are unpublished, please send us the full error stack trace. You can find it in the PHP Error Log, which will show not only the latest file where the error occurred but also the files that caused it.
Please confirm that your WordPress installation remains unchanged and that no custom code or code snippets have been added. Also, make sure all third-party plugins are disabled. If all these conditions are met and the issue still persists, please provide us with temporary access so we can debug the problem further [send temporary WP access to support@hivepress.io with the link to this topic, and we’ll check it (please send only the link, without login and password). You can create a temporary access link using this plugin].
We were unable to reproduce the issue locally using the latest versions of WordPress and HivePress.
The support found that one of the Listing Attributes was causing the problem. I had to create a new Attribute and replace the old one. Now the problem is gone.