Skip to content

Commit fa259e3

Browse files
authored
Pods 3.3.2 (#7425)
2 parents ce61d8f + fa8a1f9 commit fa259e3

File tree

176 files changed

+6389
-1744
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

176 files changed

+6389
-1744
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,15 +38,15 @@ If you find an issue that you believe to be a *bug*, [let us know](https://githu
3838

3939
### Recommended
4040

41-
* WordPress 6.5+
42-
* PHP 8.1+
41+
* WordPress 6.8+
42+
* PHP 8.2+
4343
* MySQL 5.6+ or MariaDB 10.1+
4444

4545
### Minimum
4646

4747
If you have restrictions on your server or site, these are the minimum versions that Pods will be supported to run on. Running the following minimum versions does bring with it their own risks including security and exposure to additional bugs that may have been resolved by the recommended versions above.
4848

49-
* WordPress 6.0+
49+
* WordPress 6.3+
5050
* PHP 7.2+
5151
* MySQL 5.5+
5252

changelog.txt

Lines changed: 30 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,25 @@ Found a bug? Have a great feature idea? Get on GitHub and tell us about it and w
22

33
Our GitHub has the full list of all prior releases of Pods: https://github.com/pods-framework/pods/releases
44

5+
= 3.3.2 - July 8th, 2025 =
6+
7+
* Tweak: Updated Swagger docs for Pods REST API endpoints. (@sc0ttkclark)
8+
* Tweak: `pods_error()` handles any `Exception` object including those extending the base `Exception` class. This allows for more refined error handling in Pods code. (@sc0ttkclark)
9+
* Tweak: PodsAPI now allows for passing in Pods related objects to be passed into various save/load methods without breaking those objects. (@sc0ttkclark)
10+
* Tweak: Allow setting new group when duplicating a field. (@sc0ttkclark)
11+
* Tweak: Added Jest testing coverage for more areas of the DFV code and updated to support the React Testing Library. #7427 (@sc0ttkclark)
12+
* Fixed: Block Editor saves no longer trigger full saves when an autosave is sent and Pods form validation passes. (@sc0ttkclark)
13+
* Fixed: Ensure Pods cache flushes when changing settings to prevent issues with Pods Blocks configs not showing fields conditionally linked to those settings. #7429 (@sc0ttkclark)
14+
* Fixed: When duplicating a pod, group, or field it will now add a space between the label and the copy number. (@sc0ttkclark)
15+
* Fixed: Typos corrected across the codebase. #7434 (@szepeviktor, @sc0ttkclark)
16+
* Fixed: PHP deprecated warnings resolved in Pods REST API and DI52 usage. #7401 #7437 (@BrookeDot, @sc0ttkclark)
17+
* Fixed: Saving Pods settings will now properly flush the Pods cache to ensure that the new settings are applied immediately to all areas that may be cached based on those settings. (@sc0ttkclark)
18+
* Fixed: Added a "doing it wrong" notice and debug log line for when a non-string gets sent to `Pods::do_magic_tags()` to prevent PHP warnings. (@sc0ttkclark)
19+
* Fixed: Better caching around the `pods_can_use_dynamic_feature_sql_clauses()` setting usage to prevent additional DB calls. (@sc0ttkclark)
20+
* Fixed: Resolve issues when saving featured image based on the first value of a file field so it only saves files with the image type. #7433 (@sc0ttkclark)
21+
* Fixed: Add support for `Value_Field` in `pods_config_for_field()` to ensure bidirectional relationships work as expected for saving on both sides. #7435 (@sc0ttkclark)
22+
* Fixed: Prevent erroneous `?` and `#` characters in website formatting. (@sc0ttkclark)
23+
524
= 3.3.1 - May 2nd, 2025 =
625

726
* Fixed: Resolve issue with `get_block_wrapper_attributes()` usage. (@sc0ttkclark)
@@ -11,14 +30,14 @@ Our GitHub has the full list of all prior releases of Pods: https://github.com/p
1130
* New minimum WP version required: WordPress 6.3+ (previously: WP 6.0+)
1231
* Removed: PHP support for Pod Templates and Pod Pages has been officially removed from Pods. This feature was deprecated in Pods 2.3. We recommend you follow the newer more secure way: https://docs.pods.io/displaying-pods/pod-page-template-hierarchy-for-themes/ and https://docs.pods.io/displaying-pods/pod-template-hierarchy-for-themes/ and a snippet if you absolutely still need PHP support for now https://gist.github.com/sc0ttkclark/35a15e6f93622c45f12d671184fb1315 (@sc0ttkclark)
1332
* Feature: Form validation for the Block Editor now prevents saving a post if there are required fields and shows the appropriate error message. #7343 #7369 (@JoryHogeveen, @sc0ttkclark)
14-
* Feature: Upgraded Pods Blocks to the WP Blocks API version 3 to support more feautres like block wrapper attributes and the iframe editor. (@sc0ttkclark)
33+
* Feature: Upgraded Pods Blocks to the WP Blocks API version 3 to support more features like block wrapper attributes and the iframe editor. (@sc0ttkclark)
1534
* Feature: Added support for WYSIWYG field type when using the TinyMCE editor to allow Delayed initialization and not showing the editor until clicking. This is optional and can be enabled per field. (@sc0ttkclark)
1635
* Feature: Added support for WYSIWYG field type when using the TinyMCE editor to refresh the editor if you encounter compatibility issues with other plugins on load. (@sc0ttkclark)
1736
* Tweak: Allow forcing `pods_serial_comma()` to use exactly what is sent instead of relying on the field config itself. (@sc0ttkclark)
1837
* Tweak: Remove Pods Pro WPGraphQL deactivation message to support future features there. The core functionality of that was merged into Pods 2.9 but new work is still being done in the add-on. (@sc0ttkclark)
1938
* Tweak: Pods Forms now wrap `div` / `p` form output types within a new `div.pods-form-fieldset` wrapper element. The table form output type has the new class `pods-form-fieldset` added to it too. (@sc0ttkclark)
2039
* Fixed: Prevent doing it wrong notices in WP from unintentionally loading translatable strings too early. (@sc0ttkclark)
21-
* Fixed: Improved PHP compatibiltiy with strlen() usage. #7394 (@lbonomo, @sc0ttkclark)
40+
* Fixed: Improved PHP compatibility with strlen() usage. #7394 (@lbonomo, @sc0ttkclark)
2241
* Fixed: More PHP 8.x compatibility fixes for `PodsUI`. (@sc0ttkclark)
2342
* Fixed: Docs link for Date / Time field type now points to the correct URL. #7405 (@BrookeDot)
2443
* Fixed: Remove unnecessary duplicate IDs in the fetching within `Pods::field()`. (@sc0ttkclark)
@@ -249,7 +268,7 @@ Read more about [How access rights work with Pods](https://docs.pods.io/displayi
249268
* Fixed: Enforce single value for inputs instead of arrays of values in single format for file/relationship field. This resolves issues with Conditional Logic not seeing the initial value on reload. (@sc0ttkclark)
250269
* Fixed: Normalize numbers when doing conditional logic comparisons. (@sc0ttkclark)
251270
* Fixed: Add new options to trim content of fields by removing empty p tags, trimming whitespace at the end of lines, and removing extra lines. Default those to off (previously they were just always on). (@sc0ttkclark)
252-
* Fixed: Add `tribe()` backward compatibilty function for Pods add-ons that still call that function. This only gets included by Pods when Tribe Common is not detected on the site. (@sc0ttkclark)
271+
* Fixed: Add `tribe()` backward compatibility function for Pods add-ons that still call that function. This only gets included by Pods when Tribe Common is not detected on the site. (@sc0ttkclark)
253272
* Fixed: Resolve file/relationship lookups for settings pages that are DB vs file-based configs. (@sc0ttkclark)
254273

255274
= 3.0.4 - September 25th, 2023 =
@@ -810,7 +829,7 @@ New minimum required versions have been updated as follows which includes notice
810829
* Fixed: Placeholder values are properly inherited based on field type specific options. #6289 (@JoryHogeveen, @sc0ttkclark)
811830
* Fixed: REST API fields now correctly check the right field option for whether fields should be individually shown. #6288 (@JoryHogeveen)
812831
* Fixed: Relationship traversal now properly handle selection limit if more than the original field. #6243 (@sc0ttkclark)
813-
* Fixed: Prevent potential conflicts when a plugin uses `$post->content` instead of `$post->post_content` to get the content of a post. Pods no longer checks objet field aliases with `get_post_meta()` and directly integrated metadata function calls. (@sc0ttkclark)
832+
* Fixed: Prevent potential conflicts when a plugin uses `$post->content` instead of `$post->post_content` to get the content of a post. Pods no longer checks object field aliases with `get_post_meta()` and directly integrated metadata function calls. (@sc0ttkclark)
814833
* Fixed: Fix `orderby` PHP notices for `in_array()` checks on field id and field index. (@sc0ttkclark)
815834
* Fixed: Better checks for Pod objects existing in PodsMeta. (@sc0ttkclark)
816835
* Fixed: Removed the "Extra Fields" option (old WP compatibility option) for Custom Taxonomies on the Pods Admin > Add New screen. (@sc0ttkclark)
@@ -1715,9 +1734,9 @@ Fixed: Serial comma display works again for Users, Comments, and Media relations
17151734
= 2.5.2 - May 14th, 2015 =
17161735

17171736
* Fixed: Issues with default values for number and other types of fields.
1718-
* Fixed: Issue where Pods update was causing WP-API endpoints to 404. Rewirte rules now flush on wp_loaded.
1737+
* Fixed: Issue where Pods update was causing WP-API endpoints to 404. Rewrite rules now flush on wp_loaded.
17191738
* Fixed: Issue preventing proper display of fields in a related CPT via Pods::field()
1720-
* Fixed: Issue preventing codemirror from being enqueued in Pods templates and therefore breaking Pods tempaltes editor in certain configurations.
1739+
* Fixed: Issue preventing codemirror from being enqueued in Pods templates and therefore breaking Pods templates editor in certain configurations.
17211740
* Added: Added caching info to debug info.
17221741
* Fixed: Bug that was causing Pods to overwrite admin menus.
17231742
* Fixed: Issue preventing ongoing compatibility with Admin Columns.
@@ -1729,7 +1748,7 @@ Fixed: Serial comma display works again for Users, Comments, and Media relations
17291748
* Fixed: Issue preventing associated taxonomies to be fetched via Pods::field() and therefore magic tags.
17301749
* Improved: Icon font used for Pods admin icon.
17311750
* Improved: Elaborated on what data is and isn't deleted when Pods data is reset.
1732-
* Added: Compatibility with Github updater plugin.
1751+
* Added: Compatibility with GitHub updater plugin.
17331752
* Updated: New youtube video in readme.
17341753
* Added: Support for term splitting in WordPress 4.2.
17351754
* Removed: Extra meta data with _pods_ prefix
@@ -1843,7 +1862,7 @@ Fixed: Serial comma display works again for Users, Comments, and Media relations
18431862
* Added: Inline docs for 'pods_meta_default_box_title' filter and normalized args across each usage.
18441863
* Added: Item ID to pods_api::export() item array.
18451864
* Fixed: Update from GitHub functionality.
1846-
* Fixed: Issue where extended custom post types had diffrent names then original post type due to use of dashes in names.
1865+
* Fixed: Issue where extended custom post types had different names then original post type due to use of dashes in names.
18471866
* Improved UX for select2 field adding new items.
18481867
* Fixed: $params with unslashed data in Pods_Admin::admin_ajax()
18491868
* Fixed: Unwarranted base_dir warnings.
@@ -1900,7 +1919,7 @@ Fixed: Serial comma display works again for Users, Comments, and Media relations
19001919
* Fixed: Extra spaces in custom defined list labels
19011920
* Fixed: Pagination default value for Pods shortcode
19021921
* Fixed: PodsForm::submit_button() method that had been lost from previous versions
1903-
* Fixed: Usage of pods_v in currency.php for optimzation purposes
1922+
* Fixed: Usage of pods_v in currency.php for optimization purposes
19041923
* Fixed: Correct parent_file to highlight the correct top level menu
19051924
* Fixed: Improper wording for text at top of settings page field
19061925

@@ -2180,7 +2199,7 @@ Fixed: Serial comma display works again for Users, Comments, and Media relations
21802199
* Added: A quick enhancement for all to enjoy as a final farewell to Pods 1.x, File Browser now has a mouse-over image enlarge function (props @WallabyKid), see: http://pods.io/forums/topic/add-thumbnail-preview-to-jqmwindow-file-browser-for-image-files/
21812200
* Fixed: Some plugins/themes use the wp_title filter incorrectly and do not pass the $sep and $seplocation variables, we now set defaults in those cases
21822201
* Fixed: Some sites experienced PHP notices from the way we've been using parse_url, we now have a fallback for that handling which clears those up
2183-
* Q & A: What's going to happen to Pods 1.x when Pods 2.0 comes out? We're going to release maintenence updates to Pods 1.14.x for a period of time, but there will be no further features added
2202+
* Q & A: What's going to happen to Pods 1.x when Pods 2.0 comes out? We're going to release maintenance updates to Pods 1.14.x for a period of time, but there will be no further features added
21842203

21852204
= 1.14.3 - September 6th, 2012 =
21862205

@@ -2257,7 +2276,7 @@ Fixed: Serial comma display works again for Users, Comments, and Media relations
22572276
* Added: Option to disable pagination altogether (separate from setting page to 1, but also forces page to be 1) in findRecords $params `'pagination' => false`
22582277
* Added: PODS_GLOBAL_POD_PAGINATION constant to globally disable pagination by setting the constant to false (can be renabled as needed in findRecords $params `'pagination' => true`)
22592278
* Added: PODS_GLOBAL_POD_SEARCH constant to globally disable search by setting the constant to false (can be renabled as needed in findRecords $params `'search' => true`)
2260-
* Added: PODS_GLOBAL_POD_SEARCH_MODE constant to globally set the search_mode to 'text', 'int', or 'text_like' (default 'int' which references field IDs) - can be overrided as needed in findRecords $params `'search_mode' => 'text'`)
2279+
* Added: PODS_GLOBAL_POD_SEARCH_MODE constant to globally set the search_mode to 'text', 'int', or 'text_like' (default 'int' which references field IDs) - can be overridden as needed in findRecords $params `'search_mode' => 'text'`)
22612280
* Added: PODS_DISABLE_EVAL constant to globally disable PHP eval() on PHP-enabled areas of Pods (Templates, Helpers, Pod Pages)
22622281
* Added: PODS_WP_VERSION_MINIMUM constant to disable WP minimum version requirement
22632282
* Added: PODS_PHP_VERSION_MINIMUM constant to disable PHP minimum version requirement

classes/Pods.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4248,6 +4248,17 @@ public function do_magic_tags( $code ) {
42484248
return $pre;
42494249
}
42504250

4251+
if ( ! is_string( $code ) ) {
4252+
_doing_it_wrong( __FUNCTION__, 'Pods::do_magic_tags() must be given a string, a non-string was provided.', '3.3.2' );
4253+
pods_debug_log( 'Pods::do_magic_tags() called with non-string: ' . var_export( $code, true ) );
4254+
4255+
return '';
4256+
}
4257+
4258+
if ( '' === trim( $code ) ) {
4259+
return '';
4260+
}
4261+
42514262
return preg_replace_callback( '/({@(.*?)})/m', array( $this, 'process_magic_tags' ), $code );
42524263
}
42534264

0 commit comments

Comments
 (0)