Version 1.5.0
This release includes security, web accessibility, code quality improvements, performance improvements, and bug fixes. The entire framework is now WPCS compliant. The APIs are now fully and thoroughly well-tested. All found issues are resolved. New functionality is added.
Changelog
A full changelog is provided with the details provided below.
Improved
- Improved web accessibility by adding skip links, ARIA, labels, tabs, and more.
- Improved the performance of the APIs by reducing expensive processes, memory usage, and execution time.
- Improved the APIs by adding thorough unit and integration test suites.
- Improved the APIs by adding type hinting, reducing redundant code, and removing unused code.
- Improved Beans by making it WPCS compliant.
- Improved CSS compiler to have one block of declarations per line.
- Improved security by auditing and applying escaping and sanitizing best practices.
- Improved the Actions API by no longer storing actions in encoded strings.
- Improved code documentation and readability.
Updated
- Updated the language's tm-beans.pot file.
- Updated UIkit to version 2.27.5 (see UIkit changelog for more information).
Added
- Added
beans_str_ends_with()
to check if the given string ends with the given substring(s). - Added
beans_str_starts_with()
to check if the given string starts with the given substring(s). - Added
beans_multi_array_key_exists()
to check if a key or index exists in a multi-dimensional array. - Added
beans_join_arrays()
to join two arrays together. - Added
beans_array_unique()
to remove duplicate values and re-index the array. - Added
beans_join_arrays_clean()
to join two arrays, remove the duplicate values and empties, and provide an option to re-index the clean array. - Added
beans_scandir()
to scan the given directory path, list all the files and directories, and remove the.
and..
files. - Added
beans_uikit_get_all_components()
to check all of the UIkit components for the given type. - Added
beans_uikit_get_all_dependencies()
to check all of the UIkit dependencies for the given component(s). - Added
beans_get_widget_area_output()
to replacebeans_get_widget_area()
. - Added
beans_add_compiler_options_to_settings()
to instantiate_Beans_Compiler_Options
through a hook instead of on file load. - Added
beans_add_page_assets_compiler()
to instantiate__Beans_Page_Compiler
through a hook instead of on file load. - Added
beans_add_image_options_to_settings()
to instantiate___Beans_Image_Options
through a hook instead of on file load. - Added
beans_has_primary_sidebar()
to check if the given layout has a primary sidebar. - Added
beans_has_secondary_sidebar()
to check if the given layout has a secondary sidebar. - Added
beans_skip_links_list()
to filter the skip links. - Added
beans_output_skip_links()
to render the skip links. - Added
beans_accessibility_skip_link_fix()
to enqueue skip link fix script for IE 11. - Added many new private functions.
Changes
beans_add_action()
returnsfalse
when the action is not added viaadd_action
.beans_add_smart_action()
returnsfalse
when the action is not added viaadd_action
.beans_modify_action()
returnsfalse
when hook, callback, priority, and args are not given.beans_modify_action_hook()
returnsfalse
when the hook is empty or not a string.beans_modify_action_callback()
returnsfalse
when the callback is empty.beans_replace_action()
returnsfalse
when hook, callback, priority, and args are not given.beans_replace_action_hook()
returnsfalse
when the hook is empty or not a string.beans_replace_action_callback()
returnsfalse
when the callback is empty.beans_remove_action()
sets "removed" to the default when no current action exists.beans_reset_action()
bails out if the action does not need to be reset.- Unset the global variable in
beans_selfclose_markup()
to reduce memory usage. beans_wrap_markup()
bails out and returnsfalse
if the given$tag
is empty.beans_wrap_inner_markup()
bails out and returnsfalse
if the given$tag
is empty.beans_add_attribute()
returns an instance of_Beans_Attribute
.beans_replace_attribute()
replaces all values when thevalue
argument is empty.beans_replace_attribute()
returns an instance of_Beans_Attribute
.beans_remove_attribute()
returns an instance of_Beans_Attribute
.- Moved the API's HTML to view files to improve code quality.
- Changes to private functions and methods are not noted here.
Fixed
- Fixed
depedencies
typo in Compiler's configuration (nowdependencies
). Provided fallback. - Fixed Customizer Preview Tools.
- Fixed UIkit API bug when not returning all dependency components.
- Fixed Beans Image Editor for ARRAY_A.
- Fixed
beans_get_post_meta()
. - Fixed
beans_get_term_meta()
. - Fixed Compiler to recompile when a fragment changes and not in development mode.
- Fixed replacing action to remove from WordPress.
- Fixed Actions API to allow priority of 0 to be modified.
- Fixed Actions API double subhook calls.
- Fixed
beans_path_to_url()
to bail out when relative URL. - Fixed count for
beans_count_recursive()
. - Fixed removing tilde from
beans_url_to_path()
. - Fixed processing relative URLs in
beans_url_to_path()
. - Fixed altering of non-internal URLs in
beans_url_to_path()
. - Fixed
beans_get_layout_class()
not returning correct classes when secondary is no longer registered. - Fixed 'Next Post' icon close markup ID.
- Fixed 'Read More' icon markup IDs.
- Fixed
beans_get_widget_area()
to returnfalse
on fail. - Fixed
beans_get_widget()
to returnfalse
on fail. - Fixes to private functions and methods are not noted here.
Deprecated
- Deprecated
beans_count_recursive()
as it is unused in Beans. - Deprecated
beans_widget_area()
by replacing it with a renamed functionbeans_get_widget_area_output()
that better describes the expected behavior. - Deprecated the image toolbar's dashicons' class attributes.