Version Description
- Fixed: Complete compatibility fix for older Redux extensions.
- Release date: July 28, 2020
Download this release
Release Info
Developer | dovyp |
Plugin | Redux Framework |
Version | 4.0.9 |
Comparing to | |
See all releases |
Code changes from version 4.0.8 to 4.0.9
- composer.json +1 -1
- readme.txt +5 -1
- redux-core/class-redux-core.php +1 -0
- redux-core/framework.php +1 -1
- redux-core/inc/classes/class-redux-extension-abstract.php +4 -0
- redux-core/inc/classes/class-redux-functions-ex.php +2 -2
- redux-core/inc/extensions/customizer/class-redux-extension-customizer.php +11 -9
- redux-framework.php +1 -1
- redux-templates/classes/class-api.php +2 -2
composer.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
{
|
2 |
"name": "reduxframework/redux-framework-4",
|
3 |
-
"version": "4.0.
|
4 |
"authors": [
|
5 |
{
|
6 |
"name": "Redux.io",
|
1 |
{
|
2 |
"name": "reduxframework/redux-framework-4",
|
3 |
+
"version": "4.0.9",
|
4 |
"authors": [
|
5 |
{
|
6 |
"name": "Redux.io",
|
readme.txt
CHANGED
@@ -5,7 +5,7 @@ Tags: admin, admin interface, options, theme options, plugin options, options fr
|
|
5 |
Requires at least: 4.0
|
6 |
Requires PHP: 5.3
|
7 |
Tested up to: 5.5
|
8 |
-
Stable tag: 4.0.
|
9 |
License: GPLv3 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
11 |
|
@@ -131,6 +131,10 @@ That's because the real FAQ section is on our site! Please visit [http://docs.re
|
|
131 |
|
132 |
== Changelog ==
|
133 |
|
|
|
|
|
|
|
|
|
134 |
= 4.0.8 =
|
135 |
* Fixed: Initial library load was failing on some server setups.
|
136 |
* Release date: July 28, 2020
|
5 |
Requires at least: 4.0
|
6 |
Requires PHP: 5.3
|
7 |
Tested up to: 5.5
|
8 |
+
Stable tag: 4.0.9
|
9 |
License: GPLv3 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
11 |
|
131 |
|
132 |
== Changelog ==
|
133 |
|
134 |
+
= 4.0.9 =
|
135 |
+
* Fixed: Complete compatibility fix for older Redux extensions.
|
136 |
+
* Release date: July 28, 2020
|
137 |
+
|
138 |
= 4.0.8 =
|
139 |
* Fixed: Initial library load was failing on some server setups.
|
140 |
* Release date: July 28, 2020
|
redux-core/class-redux-core.php
CHANGED
@@ -298,6 +298,7 @@ if ( ! class_exists( 'Redux_Core', false ) ) {
|
|
298 |
}
|
299 |
|
300 |
require_once dirname( __FILE__ ) . '/inc/classes/class-redux-path.php';
|
|
|
301 |
|
302 |
spl_autoload_register( array( $this, 'register_classes' ) );
|
303 |
Redux_Functions_Ex::register_class_path( 'Redux', dirname( __FILE__ ) );
|
298 |
}
|
299 |
|
300 |
require_once dirname( __FILE__ ) . '/inc/classes/class-redux-path.php';
|
301 |
+
require_once dirname( __FILE__ ) . '/inc/classes/class-redux-extension-abstract.php';
|
302 |
|
303 |
spl_autoload_register( array( $this, 'register_classes' ) );
|
304 |
Redux_Functions_Ex::register_class_path( 'Redux', dirname( __FILE__ ) );
|
redux-core/framework.php
CHANGED
@@ -23,7 +23,7 @@ defined( 'ABSPATH' ) || exit;
|
|
23 |
|
24 |
require_once dirname( __FILE__ ) . '/class-redux-core.php';
|
25 |
|
26 |
-
Redux_Core::$version = '4.0.
|
27 |
Redux_Core::$redux_path = dirname( __FILE__ );
|
28 |
Redux_Core::instance();
|
29 |
|
23 |
|
24 |
require_once dirname( __FILE__ ) . '/class-redux-core.php';
|
25 |
|
26 |
+
Redux_Core::$version = '4.0.9';
|
27 |
Redux_Core::$redux_path = dirname( __FILE__ );
|
28 |
Redux_Core::instance();
|
29 |
|
redux-core/inc/classes/class-redux-extension-abstract.php
CHANGED
@@ -251,3 +251,7 @@ abstract class Redux_Extension_Abstract {
|
|
251 |
return true;
|
252 |
}
|
253 |
}
|
|
|
|
|
|
|
|
251 |
return true;
|
252 |
}
|
253 |
}
|
254 |
+
|
255 |
+
if ( ! class_exists( 'Redux_Abstract_Extension' ) ) {
|
256 |
+
class_alias( 'Redux_Extension_Abstract', 'Redux_Abstract_Extension' );
|
257 |
+
}
|
redux-core/inc/classes/class-redux-functions-ex.php
CHANGED
@@ -271,7 +271,7 @@ if ( ! class_exists( 'Redux_Functions_Ex', false ) ) {
|
|
271 |
* @return object - Extended field class.
|
272 |
*/
|
273 |
public static function extension_compatibility( $parent, $path, $ext_class, $new_class_name, $name ) {
|
274 |
-
$upload_dir = ReduxFramework::$_upload_dir . '/
|
275 |
if ( ! file_exists( $upload_dir . $ext_class . '.php' ) ) {
|
276 |
if ( ! is_dir( $upload_dir ) ) {
|
277 |
$parent->filesystem->mkdir( $upload_dir );
|
@@ -294,7 +294,7 @@ if ( ! class_exists( 'Redux_Functions_Ex', false ) ) {
|
|
294 |
' }' . PHP_EOL .
|
295 |
' // fake "extends Redux_Extension_Abstract\" using magic function' . PHP_EOL .
|
296 |
' public function __call( $method, $args ) {' . PHP_EOL .
|
297 |
-
' $this->c
|
298 |
' }' . PHP_EOL .
|
299 |
'}' . PHP_EOL;
|
300 |
$template = str_replace( '{{ext_class}}', $new_class_name, $class_file );
|
271 |
* @return object - Extended field class.
|
272 |
*/
|
273 |
public static function extension_compatibility( $parent, $path, $ext_class, $new_class_name, $name ) {
|
274 |
+
$upload_dir = ReduxFramework::$_upload_dir . '/extension_compatibility/';
|
275 |
if ( ! file_exists( $upload_dir . $ext_class . '.php' ) ) {
|
276 |
if ( ! is_dir( $upload_dir ) ) {
|
277 |
$parent->filesystem->mkdir( $upload_dir );
|
294 |
' }' . PHP_EOL .
|
295 |
' // fake "extends Redux_Extension_Abstract\" using magic function' . PHP_EOL .
|
296 |
' public function __call( $method, $args ) {' . PHP_EOL .
|
297 |
+
' return call_user_func_array( array( $this->c, $method ), $args );' . PHP_EOL .
|
298 |
' }' . PHP_EOL .
|
299 |
'}' . PHP_EOL;
|
300 |
$template = str_replace( '{{ext_class}}', $new_class_name, $class_file );
|
redux-core/inc/extensions/customizer/class-redux-extension-customizer.php
CHANGED
@@ -803,14 +803,16 @@ if ( ! class_exists( 'Redux_Extension_Customizer', false ) ) {
|
|
803 |
}
|
804 |
}
|
805 |
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
|
|
|
|
815 |
}
|
816 |
}
|
803 |
}
|
804 |
}
|
805 |
|
806 |
+
if ( ! function_exists( 'redux_customizer_custom_validation' ) ) {
|
807 |
+
/**
|
808 |
+
* Custom validation.
|
809 |
+
*
|
810 |
+
* @param mixed $field Field.
|
811 |
+
*
|
812 |
+
* @return mixed
|
813 |
+
*/
|
814 |
+
function redux_customizer_custom_validation( $field ) {
|
815 |
+
return $field;
|
816 |
+
}
|
817 |
}
|
818 |
}
|
redux-framework.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
* Description: Build better sites in WordPress fast
|
11 |
* Author: Redux.io + Dovy Paukstys
|
12 |
* Author URI: http://redux.io
|
13 |
-
* Version: 4.0.
|
14 |
* Text Domain: redux-framework
|
15 |
* License: GPLv3 or later
|
16 |
* License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
10 |
* Description: Build better sites in WordPress fast
|
11 |
* Author: Redux.io + Dovy Paukstys
|
12 |
* Author URI: http://redux.io
|
13 |
+
* Version: 4.0.9
|
14 |
* Text Domain: redux-framework
|
15 |
* License: GPLv3 or later
|
16 |
* License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
redux-templates/classes/class-api.php
CHANGED
@@ -223,7 +223,7 @@ class Api {
|
|
223 |
|
224 |
$last_modified = file_exists( $path ) ? $this->get_cache_time( $path ) : false;
|
225 |
|
226 |
-
$use_cache
|
227 |
if ( isset( $parameters['no_cache'] ) ) {
|
228 |
$use_cache = false;
|
229 |
}
|
@@ -335,7 +335,7 @@ class Api {
|
|
335 |
$data = json_decode( ReduxTemplates\Init::get_local_file_contents( $test_path ), true );
|
336 |
} else {
|
337 |
$parameters['no_cache'] = 1;
|
338 |
-
$data
|
339 |
}
|
340 |
|
341 |
if ( isset( $data['plugins'] ) ) {
|
223 |
|
224 |
$last_modified = file_exists( $path ) ? $this->get_cache_time( $path ) : false;
|
225 |
|
226 |
+
$use_cache = true;
|
227 |
if ( isset( $parameters['no_cache'] ) ) {
|
228 |
$use_cache = false;
|
229 |
}
|
335 |
$data = json_decode( ReduxTemplates\Init::get_local_file_contents( $test_path ), true );
|
336 |
} else {
|
337 |
$parameters['no_cache'] = 1;
|
338 |
+
$data = $this->api_cache_fetch( $parameters, $config, 'library.json' );
|
339 |
}
|
340 |
|
341 |
if ( isset( $data['plugins'] ) ) {
|