{"id":274844,"date":"2026-03-03T02:29:48","date_gmt":"2026-03-03T02:29:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/functionalities\/"},"modified":"2026-04-05T09:10:31","modified_gmt":"2026-04-05T09:10:31","slug":"functionalities","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/functionalities\/","author":13255989,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.4.5","stable_tag":"1.4.5","tested":"7.0","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Dynamic Functionalities","header_author":"Gaurav Tiwari","header_description":"Modular site-specific plugin with modern dashboard and features.","assets_banners_color":"e1eaf4","last_updated":"2026-04-05 09:10:31","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/gauravtiwari.org\/donate\/","header_plugin_uri":"https:\/\/functionalities.dev","header_author_uri":"https:\/\/gauravtiwari.org","rating":0,"author_block_rating":0,"active_installs":10,"downloads":618,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.1":{"tag":"1.1.1","author":"gauravtiwari","date":"2026-03-03 02:34:22"},"1.2.0":{"tag":"1.2.0","author":"gauravtiwari","date":"2026-03-08 15:54:42"},"1.3.0":{"tag":"1.3.0","author":"gauravtiwari","date":"2026-03-13 03:13:16"},"1.3.1":{"tag":"1.3.1","author":"gauravtiwari","date":"2026-03-21 07:50:51"},"1.4.0":{"tag":"1.4.0","author":"gauravtiwari","date":"2026-03-27 16:59:08"},"1.4.1":{"tag":"1.4.1","author":"gauravtiwari","date":"2026-03-28 16:37:43"},"1.4.2":{"tag":"1.4.2","author":"gauravtiwari","date":"2026-03-31 13:22:21"},"1.4.3":{"tag":"1.4.3","author":"gauravtiwari","date":"2026-04-01 13:45:57"},"1.4.4":{"tag":"1.4.4","author":"gauravtiwari","date":"2026-04-01 13:58:52"},"1.4.5":{"tag":"1.4.5","author":"gauravtiwari","date":"2026-04-05 09:10:31"},"v1.1.0":{"tag":"v1.1.0","author":"gauravtiwari","date":"2026-03-03 02:29:30"}},"upgrade_notice":{"1.4.5":"

Enables WOFF\/WOFF2 font uploads in the media library with magic-byte validation for security.<\/p>","1.4.4":"

Extends Vue\/Alpine.js protection to Schema and Block Cleanup modules. All DOMDocument-based content filters now skip JS framework content.<\/p>","1.4.3":"

Fixes Link Management breaking pages that use Vue.js (MyListing explore page, etc.). DOMDocument no longer corrupts Vue\/React template directives.<\/p>","1.4.2":"

Fixes data-*<\/code> and other attributes being stripped from script\/style\/link tags in Header & Footer snippets for non-admin users.<\/p>","1.4.1":"

Code quality and plugin review compliance: WP_Filesystem for all file writes, comprehensive uninstall cleanup (opt-in), shared CSS sanitization trait, and minor fixes.<\/p>","1.4.0":"

Bricks Builder font support. Task Manager redesign: cleaner card-based UI, external CSS, improved modals, hover actions on tasks, and polished column view.<\/p>","1.3.3":"

Snippets UI polish: collapsible cards with type badges, smoother interactions, and bug fixes.<\/p>","1.3.2":"

Header & Footer snippets now support multiple code blocks per location with individual toggles. Fixes CSS output for non-admin users. Removes legacy GT Nofollow Manager compatibility.<\/p>","1.3.1":"

Link Management now works with ACF fields and custom templates via process_content() helper. Redirect Manager fixes query string matching and adds loop detection.<\/p>","1.3.0":"

WordPress 7 compatibility: editor CSS now loads inside the iframed block editor. Fixes version tag stripping in admin.<\/p>","1.2.0":"

All modules now require explicit activation. After updating, visit Functionalities settings and enable the modules you use.<\/p>","1.1.0":"

All features are now free and open source. 16 modules for performance, security, SEO, and content management.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3473202,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3473202,"resolution":"256x256","location":"assets","locale":""},"icon.svg":{"filename":"icon.svg","revision":3473202,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3473202,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3473202,"resolution":"772x250","location":"assets","locale":""},"banner.svg":{"filename":"banner.svg","revision":3473202,"resolution":false,"location":"assets","locale":false}},"assets_blueprints":{},"all_blocks":{"functionalities\/svg-icon-block":{"name":"functionalities\/svg-icon-block","title":"Svg Icon Block"}},"tagged_versions":["1.1.1","1.2.0","1.3.0","1.3.1","1.4.0","1.4.1","1.4.2","1.4.3","1.4.4","1.4.5","v1.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3473202,"resolution":"1","location":"assets","locale":""},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3473202,"resolution":"2","location":"assets","locale":""},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3473202,"resolution":"3","location":"assets","locale":""}},"screenshots":{"1":"Dashboard overview with module cards","2":"Content Integrity module","3":"Assumption Detection module"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[3786,247,925,600,186],"plugin_category":[54,55],"plugin_contributors":[90890],"plugin_business_model":[],"class_list":["post-274844","plugin","type-plugin","status-publish","hentry","plugin_tags-cleanup","plugin_tags-performance","plugin_tags-redirection","plugin_tags-security","plugin_tags-seo","plugin_category-security-and-spam-protection","plugin_category-seo-and-marketing","plugin_contributors-gauravtiwari","plugin_committers-gauravtiwari"],"banners":{"banner":"https:\/\/ps.w.org\/functionalities\/assets\/banner-772x250.png?rev=3473202","banner_2x":"https:\/\/ps.w.org\/functionalities\/assets\/banner-1544x500.png?rev=3473202","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/functionalities\/assets\/icon.svg?rev=3473202","icon":"https:\/\/ps.w.org\/functionalities\/assets\/icon.svg?rev=3473202","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/functionalities\/assets\/screenshot-1.png?rev=3473202","caption":"Dashboard overview with module cards"},{"src":"https:\/\/ps.w.org\/functionalities\/assets\/screenshot-2.jpg?rev=3473202","caption":"Content Integrity module"},{"src":"https:\/\/ps.w.org\/functionalities\/assets\/screenshot-3.jpg?rev=3473202","caption":"Assumption Detection module"}],"raw_content":"\n

Replace your plugin stack with one lightweight toolkit<\/h3>\n\n

Dynamic Functionalities replaces the stack of single-purpose plugins most WordPress sites depend on. Instead of installing separate plugins for performance cleanup, redirect management, login security, schema markup, external link control, and code snippets, you get 16 purpose-built modules in one package that loads less code than most individual plugins.<\/p>\n\n

Every module is independent. Enable what you need, disable what you don't. Disabled modules load zero code.<\/p>\n\n

Why Not Just Use Separate Plugins?<\/h4>\n\n

A typical WordPress site runs 5-10 utility plugins that each load their own CSS, JS, options, and database queries on every page load. Dynamic Functionalities consolidates these into a single plugin with shared infrastructure:<\/p>\n\n