Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

All-in-one WordPress optimization toolkit with 16 modules for performance, security, SEO, and content management. Built with modern WordPress coding standards and a clean module-based dashboard. Optimized for performance with modular initialization, static property caching, and intelligent transients.

**Version:** 1.6.0
**Version:** 1.6.1
**Requires WordPress:** 6.3 or later (tested up to 7.1)
**Requires PHP:** 7.4 or later
**License:** GPL-2.0-or-later
Expand Down
2 changes: 1 addition & 1 deletion assets/blocks/svg-icon/block.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"$schema": "https://schemas.wp.org/trunk/block.json",
"apiVersion": 3,
"name": "functionalities/svg-icon-block",
"version": "1.6.0",
"version": "1.6.1",
"title": "SVG Icon",
"category": "design",
"icon": "flag",
Expand Down
2 changes: 1 addition & 1 deletion assets/js/wp7-admin.asset.php
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<?php return array('dependencies' => array('react', 'react-dom', 'react-jsx-runtime', 'wp-api-fetch', 'wp-components', 'wp-compose', 'wp-data', 'wp-date', 'wp-deprecated', 'wp-element', 'wp-i18n', 'wp-keycodes', 'wp-primitives', 'wp-private-apis', 'wp-warning'), 'version' => 'c9a0d82f729a02180934');
<?php return array('dependencies' => array('react', 'react-dom', 'react-jsx-runtime', 'wp-api-fetch', 'wp-components', 'wp-compose', 'wp-data', 'wp-date', 'wp-deprecated', 'wp-element', 'wp-i18n', 'wp-keycodes', 'wp-primitives', 'wp-private-apis', 'wp-warning'), 'version' => 'a4dbbd82fcbe4a17f9bd');
2 changes: 1 addition & 1 deletion assets/js/wp7-admin.js

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions functionalities.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Plugin Name: Dynamic Functionalities
* Plugin URI: https://functionalities.dev
* Description: All-in-one WordPress optimization toolkit. 15+ modules for performance, security, SEO, and content management.
* Version: 1.6.0
* Version: 1.6.1
* Author: Gaurav Tiwari
* Author URI: https://gauravtiwari.org
* License: GPL-2.0-or-later
Expand All @@ -19,7 +19,7 @@

// Define constants.
if ( ! defined( 'FUNCTIONALITIES_VERSION' ) ) {
define( 'FUNCTIONALITIES_VERSION', '1.6.0' );
define( 'FUNCTIONALITIES_VERSION', '1.6.1' );
}
if ( ! defined( 'FUNCTIONALITIES_FILE' ) ) {
define( 'FUNCTIONALITIES_FILE', __FILE__ );
Expand Down
6 changes: 4 additions & 2 deletions includes/admin/class-module-controller.php
Original file line number Diff line number Diff line change
Expand Up @@ -1163,7 +1163,7 @@ function () {

\add_settings_section(
'functionalities_misc_section',
\__( 'Miscellaneous (Bloat Control)', 'functionalities' ),
\__( 'Performance & Cleanup', 'functionalities' ),
function () {
echo '<p>' . \esc_html__( 'Remove unnecessary WordPress features to improve performance and security.', 'functionalities' ) . '</p>';

Expand Down Expand Up @@ -2932,7 +2932,9 @@ public static function field_json_preset_url(): void {
</div>

<p class="description">
<?php echo \esc_html__( 'Filter available: functionalities_json_preset_path', 'functionalities' ); ?>
<?php
echo \esc_html__( 'Filter:', 'functionalities' ) . ' <code>functionalities_json_preset_path</code> — ' . \esc_html__( 'change where the preset file is read from', 'functionalities' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Both segments escaped above; the code tag is literal.
?>
</p>
</div>

Expand Down
21 changes: 15 additions & 6 deletions includes/core/class-wordpress-7-integration.php
Original file line number Diff line number Diff line change
Expand Up @@ -688,10 +688,20 @@ public static function enqueue_admin_assets( string $hook_suffix ): void {
$page = isset( $_GET['page'] ) ? \sanitize_key( \wp_unslash( $_GET['page'] ) ) : '';
// phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Read-only routing.
$module = isset( $_GET['module'] ) ? \sanitize_key( \wp_unslash( $_GET['module'] ) ) : '';
// The workspace must not render for a module that is switched off. The
// REST route and every ability already refuse, so without this the page
// showed an empty table and a create form that could only ever error.
$workspace_module = $module;
if ( 'functionalities-task-manager' === $page ) {
$workspace_module = 'task-manager';
}
$module_enabled = '' !== $workspace_module && Module_Registry::is_enabled( $workspace_module );

$config = array(
'isFunctionalities' => $is_functionalities,
'page' => $page,
'module' => $module,
'moduleEnabled' => $module_enabled,
'adminDataPath' => '/functionalities/v1/wp7/admin-data',
'settingsPath' => '/functionalities/v1/wp7/settings',
'abilitiesPath' => '/wp-abilities/v1/abilities/',
Expand All @@ -703,10 +713,9 @@ public static function enqueue_admin_assets( string $hook_suffix ): void {
'assumptions' => \admin_url( 'admin.php?page=functionalities&module=assumption-detection' ),
),
'i18n' => array(
'modernTools' => \__( 'WordPress 7 workspace', 'functionalities' ),
'loading' => \__( 'Loading WordPress 7 workspace…', 'functionalities' ),
'loadError' => \__( 'The WordPress 7 workspace could not be loaded. The classic interface remains available below.', 'functionalities' ),
'saved' => \__( 'Saved.', 'functionalities' ),
'loading' => \__( 'Loading…', 'functionalities' ),
'loadError' => \__( 'This view could not be loaded. The full interface is available below.', 'functionalities' ),
'saved' => \__( 'Saved.', 'functionalities' ),
),
);

Expand Down Expand Up @@ -764,8 +773,8 @@ public static function render_settings_panel(): void {
$options = self::get_options();
?>
<section class="functionalities-tools functionalities-wp7-settings" data-functionalities-wp7-settings>
<h2><?php \esc_html_e( 'WordPress 7 Integration', 'functionalities' ); ?></h2>
<p><?php \esc_html_e( 'Abilities, command-palette actions, modern data workspaces, Core Icon interoperability, and optional AI explanations.', 'functionalities' ); ?></p>
<h2><?php \esc_html_e( 'AI explanations', 'functionalities' ); ?></h2>
<p><?php \esc_html_e( 'Assumption Detection and Content Integrity can explain a finding in plain language using your configured WordPress AI provider.', 'functionalities' ); ?></p>
<label>
<input type="checkbox" data-functionalities-ai-toggle <?php \checked( ! empty( $options['ai_explanations'] ) ); ?>>
<?php \esc_html_e( 'Allow AI explanations for individual findings', 'functionalities' ); ?>
Expand Down
Loading
Loading