Version Description
Download this release
Release Info
Developer | webbistro |
Plugin | Enhanced Media Library |
Version | 2.6.1 |
Comparing to | |
See all releases |
Code changes from version 2.6.4 to 2.6.1
- core/options-pages.php +14 -13
- core/taxonomies.php +44 -62
- enhanced-media-library.php +197 -169
- readme.txt +7 -10
core/options-pages.php
CHANGED
@@ -1009,7 +1009,7 @@ if ( ! function_exists( 'wpuxss_eml_print_network_settings' ) ) {
|
|
1009 |
|
1010 |
</table>
|
1011 |
|
1012 |
-
<?php submit_button( __( 'Save Changes' ), 'primary', 'eml-submit-network-settings'
|
1013 |
|
1014 |
</form>
|
1015 |
|
@@ -1023,13 +1023,12 @@ if ( ! function_exists( 'wpuxss_eml_print_network_settings' ) ) {
|
|
1023 |
|
1024 |
<div class="inside">
|
1025 |
|
1026 |
-
<?php
|
1027 |
$wpuxss_eml_taxonomies = array();
|
1028 |
|
1029 |
-
foreach(
|
1030 |
-
|
1031 |
-
switch_to_blog( $site_id );
|
1032 |
|
|
|
1033 |
$wpuxss_eml_taxonomies = array_merge( $wpuxss_eml_taxonomies, wpuxss_eml_get_eml_taxonomies() );
|
1034 |
|
1035 |
restore_current_blog();
|
@@ -1103,7 +1102,7 @@ if ( ! function_exists( 'wpuxss_eml_update_network_settings' ) ) {
|
|
1103 |
|
1104 |
function wpuxss_eml_update_network_settings() {
|
1105 |
|
1106 |
-
if ( ! isset($_POST['
|
1107 |
return;
|
1108 |
|
1109 |
check_admin_referer( 'eml-network-settings-options' );
|
@@ -1348,25 +1347,28 @@ if ( ! function_exists( 'wpuxss_eml_settings_cleanup' ) ) {
|
|
1348 |
|
1349 |
if ( is_multisite() ) {
|
1350 |
|
1351 |
-
foreach( get_sites(
|
1352 |
|
1353 |
-
switch_to_blog( $
|
1354 |
|
1355 |
wpuxss_eml_term_relationship_cleanup();
|
1356 |
wpuxss_eml_options_cleanup();
|
1357 |
-
|
1358 |
|
1359 |
restore_current_blog();
|
1360 |
}
|
|
|
|
|
1361 |
}
|
1362 |
else {
|
1363 |
|
1364 |
wpuxss_eml_term_relationship_cleanup();
|
1365 |
wpuxss_eml_options_cleanup();
|
|
|
|
|
1366 |
}
|
1367 |
|
1368 |
-
|
1369 |
-
wpuxss_eml_transients_cleanup();
|
1370 |
deactivate_plugins( wpuxss_get_eml_basename(), false, is_multisite() );
|
1371 |
|
1372 |
|
@@ -1471,8 +1473,7 @@ if ( ! function_exists( 'wpuxss_eml_options_cleanup' ) ) {
|
|
1471 |
'wpuxss_eml_tax_options',
|
1472 |
'wpuxss_eml_mimes_backup',
|
1473 |
'wpuxss_eml_mimes',
|
1474 |
-
'wpuxss_eml_backup'
|
1475 |
-
'wpuxss_eml_version'
|
1476 |
);
|
1477 |
|
1478 |
$options = apply_filters( 'wpuxss_eml_pro_add_options', $options );
|
1009 |
|
1010 |
</table>
|
1011 |
|
1012 |
+
<?php submit_button( __( 'Save Changes' ), 'primary', 'submit', true, array( 'id' => 'eml-submit-network-settings' ) ); ?>
|
1013 |
|
1014 |
</form>
|
1015 |
|
1023 |
|
1024 |
<div class="inside">
|
1025 |
|
1026 |
+
<?php $sites = get_sites();
|
1027 |
$wpuxss_eml_taxonomies = array();
|
1028 |
|
1029 |
+
foreach( $sites as $site ) :
|
|
|
|
|
1030 |
|
1031 |
+
switch_to_blog( $site->blog_id );
|
1032 |
$wpuxss_eml_taxonomies = array_merge( $wpuxss_eml_taxonomies, wpuxss_eml_get_eml_taxonomies() );
|
1033 |
|
1034 |
restore_current_blog();
|
1102 |
|
1103 |
function wpuxss_eml_update_network_settings() {
|
1104 |
|
1105 |
+
if ( ! isset($_POST['submit']) )
|
1106 |
return;
|
1107 |
|
1108 |
check_admin_referer( 'eml-network-settings-options' );
|
1347 |
|
1348 |
if ( is_multisite() ) {
|
1349 |
|
1350 |
+
foreach( get_sites() as $site ) {
|
1351 |
|
1352 |
+
switch_to_blog( $site->blog_id );
|
1353 |
|
1354 |
wpuxss_eml_term_relationship_cleanup();
|
1355 |
wpuxss_eml_options_cleanup();
|
1356 |
+
wpuxss_eml_transients_cleanup();
|
1357 |
|
1358 |
restore_current_blog();
|
1359 |
}
|
1360 |
+
|
1361 |
+
wpuxss_eml_common_options_cleanup();
|
1362 |
}
|
1363 |
else {
|
1364 |
|
1365 |
wpuxss_eml_term_relationship_cleanup();
|
1366 |
wpuxss_eml_options_cleanup();
|
1367 |
+
wpuxss_eml_common_options_cleanup();
|
1368 |
+
wpuxss_eml_transients_cleanup();
|
1369 |
}
|
1370 |
|
1371 |
+
|
|
|
1372 |
deactivate_plugins( wpuxss_get_eml_basename(), false, is_multisite() );
|
1373 |
|
1374 |
|
1473 |
'wpuxss_eml_tax_options',
|
1474 |
'wpuxss_eml_mimes_backup',
|
1475 |
'wpuxss_eml_mimes',
|
1476 |
+
'wpuxss_eml_backup'
|
|
|
1477 |
);
|
1478 |
|
1479 |
$options = apply_filters( 'wpuxss_eml_pro_add_options', $options );
|
core/taxonomies.php
CHANGED
@@ -495,8 +495,8 @@ if ( ! function_exists( 'wpuxss_eml_dropdown_cats' ) ) {
|
|
495 |
/**
|
496 |
* wpuxss_eml_parse_tax_query
|
497 |
*
|
498 |
-
* @since 2.
|
499 |
-
* @created
|
500 |
*/
|
501 |
|
502 |
add_action( 'parse_tax_query', 'wpuxss_eml_parse_tax_query' );
|
@@ -505,63 +505,18 @@ if ( ! function_exists( 'wpuxss_eml_parse_tax_query' ) ) {
|
|
505 |
|
506 |
function wpuxss_eml_parse_tax_query( $query ) {
|
507 |
|
508 |
-
if ( ! $query->is_main_query() ) {
|
509 |
-
return;
|
510 |
-
}
|
511 |
-
|
512 |
-
|
513 |
-
$wpuxss_eml_tax_options = get_option( 'wpuxss_eml_tax_options', array() );
|
514 |
-
|
515 |
-
if ( (bool) $wpuxss_eml_tax_options['tax_archives'] ) {
|
516 |
-
|
517 |
-
$wpuxss_eml_lib_options = get_option( 'wpuxss_eml_lib_options', array() );
|
518 |
-
|
519 |
-
foreach ( get_option('wpuxss_eml_taxonomies', array() ) as $taxonomy => $params ) {
|
520 |
-
|
521 |
-
if ( (bool) $params['assigned'] && (bool) $params['eml_media'] && is_tax( $taxonomy ) ) {
|
522 |
-
|
523 |
-
$query->tax_query->queries[0]['include_children'] = (bool) $wpuxss_eml_lib_options['include_children'];
|
524 |
-
}
|
525 |
-
}
|
526 |
-
}
|
527 |
-
}
|
528 |
-
}
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
/**
|
533 |
-
* wpuxss_eml_backend_parse_tax_query
|
534 |
-
*
|
535 |
-
* @since 2.6.4
|
536 |
-
* @created 23/05/18
|
537 |
-
*/
|
538 |
-
|
539 |
-
add_action( 'parse_tax_query', 'wpuxss_eml_backend_parse_tax_query' );
|
540 |
-
|
541 |
-
if ( ! function_exists( 'wpuxss_eml_backend_parse_tax_query' ) ) {
|
542 |
-
|
543 |
-
function wpuxss_eml_backend_parse_tax_query( $query ) {
|
544 |
-
|
545 |
global $current_screen;
|
546 |
|
547 |
|
548 |
-
if ( ! is_admin() ) {
|
549 |
-
return;
|
550 |
-
}
|
551 |
-
|
552 |
-
|
553 |
-
if ( ! isset( $current_screen ) || 'upload' !== $current_screen->base ) {
|
554 |
-
return;
|
555 |
-
}
|
556 |
-
|
557 |
-
if ( ! $query->is_main_query() ) {
|
558 |
return;
|
559 |
}
|
560 |
|
561 |
|
562 |
$media_library_mode = get_user_option( 'media_library_mode' ) ? get_user_option( 'media_library_mode' ) : 'grid';
|
563 |
|
564 |
-
|
|
|
565 |
return;
|
566 |
}
|
567 |
|
@@ -1379,7 +1334,6 @@ if ( ! function_exists( 'wpuxss_eml_the_posts' ) ) {
|
|
1379 |
* wpuxss_eml_pre_get_posts
|
1380 |
*
|
1381 |
* Taxonomy archive specific query (front-end)
|
1382 |
-
* Ensure correct items order
|
1383 |
*
|
1384 |
* @since 1.0
|
1385 |
* @created 03/08/13
|
@@ -1407,7 +1361,6 @@ if ( ! function_exists('wpuxss_eml_pre_get_posts') ) {
|
|
1407 |
}
|
1408 |
|
1409 |
|
1410 |
-
// front-end only
|
1411 |
if ( ! is_admin() ) {
|
1412 |
|
1413 |
$wpuxss_eml_tax_options = get_option('wpuxss_eml_tax_options');
|
@@ -1428,27 +1381,56 @@ if ( ! function_exists('wpuxss_eml_pre_get_posts') ) {
|
|
1428 |
}
|
1429 |
|
1430 |
|
1431 |
-
// both front-end and back-end
|
1432 |
if ( 'attachment' !== $query->get('post_type') ) {
|
1433 |
return;
|
1434 |
}
|
1435 |
|
1436 |
|
1437 |
-
$query_orderby
|
1438 |
-
$query_order = $query->get('order');
|
1439 |
|
1440 |
-
|
1441 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1442 |
}
|
1443 |
|
1444 |
|
1445 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1446 |
|
1447 |
-
|
1448 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1449 |
|
1450 |
-
|
1451 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
1452 |
}
|
1453 |
}
|
1454 |
|
495 |
/**
|
496 |
* wpuxss_eml_parse_tax_query
|
497 |
*
|
498 |
+
* @since 2.0.4
|
499 |
+
* @created 19/02/15
|
500 |
*/
|
501 |
|
502 |
add_action( 'parse_tax_query', 'wpuxss_eml_parse_tax_query' );
|
505 |
|
506 |
function wpuxss_eml_parse_tax_query( $query ) {
|
507 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
508 |
global $current_screen;
|
509 |
|
510 |
|
511 |
+
if ( ! is_admin() || ! isset( $current_screen ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
512 |
return;
|
513 |
}
|
514 |
|
515 |
|
516 |
$media_library_mode = get_user_option( 'media_library_mode' ) ? get_user_option( 'media_library_mode' ) : 'grid';
|
517 |
|
518 |
+
|
519 |
+
if ( 'upload' !== $current_screen->base || 'list' !== $media_library_mode ) {
|
520 |
return;
|
521 |
}
|
522 |
|
1334 |
* wpuxss_eml_pre_get_posts
|
1335 |
*
|
1336 |
* Taxonomy archive specific query (front-end)
|
|
|
1337 |
*
|
1338 |
* @since 1.0
|
1339 |
* @created 03/08/13
|
1361 |
}
|
1362 |
|
1363 |
|
|
|
1364 |
if ( ! is_admin() ) {
|
1365 |
|
1366 |
$wpuxss_eml_tax_options = get_option('wpuxss_eml_tax_options');
|
1381 |
}
|
1382 |
|
1383 |
|
|
|
1384 |
if ( 'attachment' !== $query->get('post_type') ) {
|
1385 |
return;
|
1386 |
}
|
1387 |
|
1388 |
|
1389 |
+
if ( empty( $query_orderby ) && empty( $query_order ) ) {
|
|
|
1390 |
|
1391 |
+
$wpuxss_eml_lib_options = get_option('wpuxss_eml_lib_options');
|
1392 |
+
|
1393 |
+
$query_orderby = $query->get('orderby');
|
1394 |
+
$query_order = $query->get('order');
|
1395 |
+
|
1396 |
+
$orderby = ( 'menuOrder' === $wpuxss_eml_lib_options['media_orderby'] ) ? 'menu_order' : $wpuxss_eml_lib_options['media_orderby'];
|
1397 |
+
$order = $wpuxss_eml_lib_options['media_order'];
|
1398 |
+
|
1399 |
+
$query->set('orderby', $orderby );
|
1400 |
+
$query->set('order', $order );
|
1401 |
}
|
1402 |
|
1403 |
|
1404 |
+
}
|
1405 |
+
}
|
1406 |
+
|
1407 |
+
|
1408 |
+
|
1409 |
+
add_action( 'parse_tax_query', 'kia_no_child_terms' );
|
1410 |
+
|
1411 |
+
function kia_no_child_terms( $query ) {
|
1412 |
|
1413 |
+
if ( ! $query->is_main_query() ) {
|
1414 |
+
return;
|
1415 |
+
}
|
1416 |
+
|
1417 |
+
|
1418 |
+
if ( ! is_admin() ) {
|
1419 |
+
|
1420 |
+
$wpuxss_eml_tax_options = get_option('wpuxss_eml_tax_options');
|
1421 |
+
|
1422 |
+
if ( (bool) $wpuxss_eml_tax_options['tax_archives'] ) {
|
1423 |
+
|
1424 |
+
$wpuxss_eml_lib_options = get_option('wpuxss_eml_lib_options');
|
1425 |
|
1426 |
+
foreach ( get_option('wpuxss_eml_taxonomies', array() ) as $taxonomy => $params ) {
|
1427 |
+
|
1428 |
+
if ( (bool) $params['assigned'] && (bool) $params['eml_media'] && is_tax( $taxonomy ) ) {
|
1429 |
+
|
1430 |
+
$query->tax_query->queries[0]['include_children'] = (bool) $wpuxss_eml_lib_options['include_children'];
|
1431 |
+
}
|
1432 |
+
}
|
1433 |
+
}
|
1434 |
}
|
1435 |
}
|
1436 |
|
enhanced-media-library.php
CHANGED
@@ -3,14 +3,14 @@
|
|
3 |
Plugin Name: Enhanced Media Library
|
4 |
Plugin URI: http://wpUXsolutions.com
|
5 |
Description: This plugin will be handy for those who need to manage a lot of media files.
|
6 |
-
Version: 2.6.
|
7 |
Author: wpUXsolutions
|
8 |
Author URI: http://wpUXsolutions.com
|
9 |
Text Domain: enhanced-media-library
|
10 |
Domain Path: /languages
|
11 |
License: GPL version 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
12 |
|
13 |
-
Copyright 2013-
|
14 |
*/
|
15 |
|
16 |
|
@@ -26,7 +26,7 @@ global $wp_version,
|
|
26 |
|
27 |
|
28 |
|
29 |
-
if ( ! defined('EML_VERSION') ) define( 'EML_VERSION', '2.6.
|
30 |
|
31 |
|
32 |
|
@@ -106,12 +106,6 @@ if ( is_admin() ) {
|
|
106 |
include_once( 'core/options-pages.php' );
|
107 |
}
|
108 |
|
109 |
-
|
110 |
-
|
111 |
-
/**
|
112 |
-
* Activation hook
|
113 |
-
*/
|
114 |
-
|
115 |
register_activation_hook( __FILE__, 'wpuxss_eml_on_activation' );
|
116 |
|
117 |
|
@@ -142,17 +136,16 @@ if ( ! function_exists( 'wpuxss_eml_on_plugins_loaded' ) ) {
|
|
142 |
|
143 |
|
144 |
// on update
|
145 |
-
$
|
146 |
|
147 |
-
if (
|
148 |
-
$eml_current_version = get_option( 'wpuxss_eml_version' );
|
149 |
-
}
|
150 |
-
|
151 |
-
if ( EML_VERSION !== $eml_current_version ) {
|
152 |
|
153 |
-
wpuxss_eml_on_activation();
|
154 |
update_site_option( 'wpuxss_eml_version', EML_VERSION );
|
155 |
-
|
|
|
|
|
|
|
|
|
156 |
}
|
157 |
}
|
158 |
}
|
@@ -177,9 +170,11 @@ if ( ! function_exists( 'wpuxss_eml_on_init' ) ) {
|
|
177 |
|
178 |
if ( is_multisite() && isset($plugins[wpuxss_get_eml_basename()]) ) {
|
179 |
|
180 |
-
|
181 |
|
182 |
-
|
|
|
|
|
183 |
wpuxss_eml_register_taxonomies();
|
184 |
restore_current_blog();
|
185 |
}
|
@@ -476,16 +471,14 @@ if ( ! function_exists( 'wpuxss_eml_enqueue_media' ) ) {
|
|
476 |
$terms_id_name_ready_for_script = wpuxss_eml_get_media_term_pairs( $terms, 'id=>name' );
|
477 |
|
478 |
|
|
|
479 |
$users_ready_for_script = array();
|
480 |
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
'user_name' => $user->data->display_name
|
487 |
-
);
|
488 |
-
}
|
489 |
}
|
490 |
|
491 |
|
@@ -645,15 +638,13 @@ if ( ! function_exists( 'wpuxss_eml_enqueue_media' ) ) {
|
|
645 |
|
646 |
if ( ! function_exists( 'wpuxss_eml_on_activation' ) ) {
|
647 |
|
648 |
-
function wpuxss_eml_on_activation() {
|
649 |
|
650 |
-
|
651 |
-
|
652 |
-
if ( is_multisite() && isset($plugins[wpuxss_get_eml_basename()]) ) {
|
653 |
|
654 |
-
foreach( get_sites(
|
655 |
|
656 |
-
switch_to_blog( $
|
657 |
wpuxss_eml_set_options();
|
658 |
restore_current_blog();
|
659 |
}
|
@@ -662,11 +653,15 @@ if ( ! function_exists( 'wpuxss_eml_on_activation' ) ) {
|
|
662 |
wpuxss_eml_set_options();
|
663 |
}
|
664 |
|
665 |
-
if ( is_multisite() ) {
|
666 |
-
|
667 |
-
|
|
|
|
|
|
|
668 |
|
669 |
-
|
|
|
670 |
}
|
671 |
}
|
672 |
|
@@ -683,117 +678,186 @@ if ( ! function_exists( 'wpuxss_eml_set_options' ) ) {
|
|
683 |
|
684 |
function wpuxss_eml_set_options() {
|
685 |
|
686 |
-
|
687 |
-
$wpuxss_eml_lib_options = get_option( 'wpuxss_eml_lib_options', array() );
|
688 |
-
$wpuxss_eml_tax_options = get_option( 'wpuxss_eml_tax_options', array() );
|
689 |
-
|
690 |
|
691 |
-
|
692 |
-
if ( false === $wpuxss_eml_taxonomies ) {
|
693 |
-
|
694 |
-
$wpuxss_eml_taxonomies = array(
|
695 |
-
|
696 |
-
'media_category' => array(
|
697 |
-
'assigned' => 1,
|
698 |
-
'eml_media' => 1,
|
699 |
-
'public' => 1,
|
700 |
-
|
701 |
-
'labels' => array(
|
702 |
-
'name' => __( 'Media Categories', 'enhanced-media-library' ),
|
703 |
-
'singular_name' => __( 'Media Category', 'enhanced-media-library' ),
|
704 |
-
'menu_name' => __( 'Media Categories', 'enhanced-media-library' ),
|
705 |
-
'all_items' => __( 'All Media Categories', 'enhanced-media-library' ),
|
706 |
-
'edit_item' => __( 'Edit Media Category', 'enhanced-media-library' ),
|
707 |
-
'view_item' => __( 'View Media Category', 'enhanced-media-library' ),
|
708 |
-
'update_item' => __( 'Update Media Category', 'enhanced-media-library' ),
|
709 |
-
'add_new_item' => __( 'Add New Media Category', 'enhanced-media-library' ),
|
710 |
-
'new_item_name' => __( 'New Media Category Name', 'enhanced-media-library' ),
|
711 |
-
'parent_item' => __( 'Parent Media Category', 'enhanced-media-library' ),
|
712 |
-
'parent_item_colon' => __( 'Parent Media Category:', 'enhanced-media-library' ),
|
713 |
-
'search_items' => __( 'Search Media Categories', 'enhanced-media-library' )
|
714 |
-
),
|
715 |
-
|
716 |
-
'hierarchical' => 1,
|
717 |
-
|
718 |
-
'show_admin_column' => 1,
|
719 |
-
'admin_filter' => 1, // list view filter
|
720 |
-
'media_uploader_filter' => 1, // grid view filter
|
721 |
-
'media_popup_taxonomy_edit' => 1,
|
722 |
-
|
723 |
-
'show_in_nav_menus' => 1,
|
724 |
-
'sort' => 0,
|
725 |
-
'show_in_rest' => 0,
|
726 |
-
'rewrite' => array(
|
727 |
-
'slug' => 'media_category',
|
728 |
-
'with_front' => 1
|
729 |
-
)
|
730 |
-
)
|
731 |
-
);
|
732 |
-
}
|
733 |
-
|
734 |
-
// false !== $wpuxss_eml_taxonomies
|
735 |
-
else {
|
736 |
-
|
737 |
-
// per-taxonomy settings
|
738 |
-
$media_taxonomy_args_defaults = array(
|
739 |
'assigned' => 1,
|
740 |
'eml_media' => 1,
|
741 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
742 |
|
743 |
'hierarchical' => 1,
|
744 |
|
745 |
-
'show_admin_column' =>
|
746 |
-
'admin_filter' =>
|
747 |
-
'media_uploader_filter' =>
|
748 |
-
'media_popup_taxonomy_edit' =>
|
749 |
|
750 |
-
'show_in_nav_menus' =>
|
751 |
'sort' => 0,
|
752 |
'show_in_rest' => 0,
|
753 |
'rewrite' => array(
|
|
|
754 |
'with_front' => 1
|
755 |
)
|
756 |
);
|
757 |
|
758 |
-
$
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
'
|
765 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
766 |
);
|
767 |
|
|
|
|
|
768 |
|
769 |
-
|
770 |
|
771 |
-
|
772 |
-
|
773 |
-
|
|
|
774 |
|
775 |
-
|
|
|
776 |
|
777 |
-
|
778 |
-
$wpuxss_eml_taxonomies[$taxonomy] = array_merge( $media_taxonomy_args_defaults, $params );
|
779 |
|
780 |
-
|
781 |
-
|
782 |
-
}
|
783 |
-
}
|
784 |
|
785 |
-
|
786 |
|
787 |
-
|
788 |
-
|
789 |
-
|
|
|
|
|
|
|
|
|
790 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
791 |
}
|
792 |
|
793 |
-
|
|
|
|
|
794 |
|
795 |
|
796 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
797 |
$eml_lib_options_defaults = array(
|
798 |
'enhance_media_shortcodes' => isset( $wpuxss_eml_tax_options['enhance_media_shortcodes'] ) ? (bool) $wpuxss_eml_tax_options['enhance_media_shortcodes'] : ( isset( $wpuxss_eml_tax_options['enhance_gallery_shortcode'] ) ? (bool) $wpuxss_eml_tax_options['enhance_gallery_shortcode'] : 0 ),
|
799 |
'media_orderby' => isset( $wpuxss_eml_tax_options['media_orderby'] ) ? sanitize_text_field( $wpuxss_eml_tax_options['media_orderby'] ) : 'date',
|
@@ -819,10 +883,8 @@ if ( ! function_exists( 'wpuxss_eml_set_options' ) ) {
|
|
819 |
$wpuxss_eml_lib_options = array_intersect_key( $wpuxss_eml_lib_options, $eml_lib_options_defaults );
|
820 |
$wpuxss_eml_lib_options = array_merge( $eml_lib_options_defaults, $wpuxss_eml_lib_options );
|
821 |
|
822 |
-
update_option( 'wpuxss_eml_lib_options', $wpuxss_eml_lib_options );
|
823 |
-
|
824 |
|
825 |
-
//
|
826 |
$eml_tax_options_defaults = array(
|
827 |
'tax_archives' => 0, // since 2.6
|
828 |
'edit_all_as_hierarchical' => 0
|
@@ -831,61 +893,27 @@ if ( ! function_exists( 'wpuxss_eml_set_options' ) ) {
|
|
831 |
$wpuxss_eml_tax_options = array_intersect_key( $wpuxss_eml_tax_options, $eml_tax_options_defaults );
|
832 |
$wpuxss_eml_tax_options = array_merge( $eml_tax_options_defaults, $wpuxss_eml_tax_options );
|
833 |
|
834 |
-
update_option( 'wpuxss_eml_tax_options', $wpuxss_eml_tax_options );
|
835 |
|
|
|
|
|
|
|
836 |
|
837 |
-
// MIME types
|
838 |
-
if ( false === get_option( 'wpuxss_eml_mimes' ) ) {
|
839 |
|
840 |
-
|
841 |
-
$default_mimes = array();
|
842 |
|
843 |
-
|
844 |
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
'filter' => 0,
|
850 |
-
'upload' => isset($allowed_mimes[$type]) ? 1 : 0
|
851 |
-
);
|
852 |
-
}
|
853 |
|
854 |
-
$
|
855 |
-
$
|
856 |
-
$wpuxss_eml_mimes['pdf']['filter'] = 1;
|
857 |
|
858 |
-
|
859 |
-
update_option( 'wpuxss_eml_mimes_backup', $default_mimes );
|
860 |
}
|
861 |
}
|
862 |
}
|
863 |
|
864 |
-
|
865 |
-
|
866 |
-
/**
|
867 |
-
* wpuxss_eml_set_network_options
|
868 |
-
*
|
869 |
-
* @since 2.6.3
|
870 |
-
* @created 21/05/18
|
871 |
-
*/
|
872 |
-
|
873 |
-
if ( ! function_exists( 'wpuxss_eml_set_network_options' ) ) {
|
874 |
-
|
875 |
-
function wpuxss_eml_set_network_options() {
|
876 |
-
|
877 |
-
$wpuxss_eml_network_options = get_site_option( 'wpuxss_eml_network_options', array() );
|
878 |
-
|
879 |
-
$wpuxss_eml_network_options_defaults = array(
|
880 |
-
'media_settings' => 1,
|
881 |
-
'utilities' => 1
|
882 |
-
);
|
883 |
-
|
884 |
-
$wpuxss_eml_network_options = array_intersect_key( $wpuxss_eml_network_options, $wpuxss_eml_network_options_defaults );
|
885 |
-
$wpuxss_eml_network_options = array_merge( $wpuxss_eml_network_options_defaults, $wpuxss_eml_network_options );
|
886 |
-
|
887 |
-
update_site_option( 'wpuxss_eml_network_options', $wpuxss_eml_network_options );
|
888 |
-
}
|
889 |
-
}
|
890 |
-
|
891 |
?>
|
3 |
Plugin Name: Enhanced Media Library
|
4 |
Plugin URI: http://wpUXsolutions.com
|
5 |
Description: This plugin will be handy for those who need to manage a lot of media files.
|
6 |
+
Version: 2.6.1
|
7 |
Author: wpUXsolutions
|
8 |
Author URI: http://wpUXsolutions.com
|
9 |
Text Domain: enhanced-media-library
|
10 |
Domain Path: /languages
|
11 |
License: GPL version 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
12 |
|
13 |
+
Copyright 2013-2016 wpUXsolutions (email : wpUXsolutions@gmail.com)
|
14 |
*/
|
15 |
|
16 |
|
26 |
|
27 |
|
28 |
|
29 |
+
if ( ! defined('EML_VERSION') ) define( 'EML_VERSION', '2.6.1' );
|
30 |
|
31 |
|
32 |
|
106 |
include_once( 'core/options-pages.php' );
|
107 |
}
|
108 |
|
|
|
|
|
|
|
|
|
|
|
|
|
109 |
register_activation_hook( __FILE__, 'wpuxss_eml_on_activation' );
|
110 |
|
111 |
|
136 |
|
137 |
|
138 |
// on update
|
139 |
+
$wpuxss_eml_old_version = get_site_option( 'wpuxss_eml_version', null );
|
140 |
|
141 |
+
if ( EML_VERSION !== $wpuxss_eml_old_version ) {
|
|
|
|
|
|
|
|
|
142 |
|
|
|
143 |
update_site_option( 'wpuxss_eml_version', EML_VERSION );
|
144 |
+
|
145 |
+
if ( ! is_null( $wpuxss_eml_old_version ) ) {
|
146 |
+
wpuxss_eml_on_update();
|
147 |
+
delete_site_transient( 'eml_transient' );
|
148 |
+
}
|
149 |
}
|
150 |
}
|
151 |
}
|
170 |
|
171 |
if ( is_multisite() && isset($plugins[wpuxss_get_eml_basename()]) ) {
|
172 |
|
173 |
+
$sites = get_sites();
|
174 |
|
175 |
+
foreach( $sites as $site ) {
|
176 |
+
|
177 |
+
switch_to_blog( $site->blog_id );
|
178 |
wpuxss_eml_register_taxonomies();
|
179 |
restore_current_blog();
|
180 |
}
|
471 |
$terms_id_name_ready_for_script = wpuxss_eml_get_media_term_pairs( $terms, 'id=>name' );
|
472 |
|
473 |
|
474 |
+
$users = current_user_can( 'manage_options' ) ? get_users() : array();
|
475 |
$users_ready_for_script = array();
|
476 |
|
477 |
+
foreach( $users as $user ) {
|
478 |
+
$users_ready_for_script[] = array(
|
479 |
+
'user_id' => $user->ID,
|
480 |
+
'user_name' => $user->data->display_name
|
481 |
+
);
|
|
|
|
|
|
|
482 |
}
|
483 |
|
484 |
|
638 |
|
639 |
if ( ! function_exists( 'wpuxss_eml_on_activation' ) ) {
|
640 |
|
641 |
+
function wpuxss_eml_on_activation( $network_wide ) {
|
642 |
|
643 |
+
if ( $network_wide ) {
|
|
|
|
|
644 |
|
645 |
+
foreach( get_sites() as $site ) {
|
646 |
|
647 |
+
switch_to_blog( $site->blog_id );
|
648 |
wpuxss_eml_set_options();
|
649 |
restore_current_blog();
|
650 |
}
|
653 |
wpuxss_eml_set_options();
|
654 |
}
|
655 |
|
656 |
+
if ( is_multisite() && null === get_site_option( 'wpuxss_eml_network_options', null ) ) {
|
657 |
+
|
658 |
+
$wpuxss_eml_network_options = array(
|
659 |
+
'media_settings' => 1,
|
660 |
+
'utilities' => 1
|
661 |
+
);
|
662 |
|
663 |
+
update_site_option( 'wpuxss_eml_network_options', $wpuxss_eml_network_options );
|
664 |
+
}
|
665 |
}
|
666 |
}
|
667 |
|
678 |
|
679 |
function wpuxss_eml_set_options() {
|
680 |
|
681 |
+
if ( null === get_option( 'wpuxss_eml_taxonomies', null ) ) {
|
|
|
|
|
|
|
682 |
|
683 |
+
$wpuxss_eml_taxonomies['media_category'] = array(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
684 |
'assigned' => 1,
|
685 |
'eml_media' => 1,
|
686 |
+
'public' => 1,
|
687 |
+
|
688 |
+
'labels' => array(
|
689 |
+
'name' => __( 'Media Categories', 'enhanced-media-library' ),
|
690 |
+
'singular_name' => __( 'Media Category', 'enhanced-media-library' ),
|
691 |
+
'menu_name' => __( 'Media Categories', 'enhanced-media-library' ),
|
692 |
+
'all_items' => __( 'All Media Categories', 'enhanced-media-library' ),
|
693 |
+
'edit_item' => __( 'Edit Media Category', 'enhanced-media-library' ),
|
694 |
+
'view_item' => __( 'View Media Category', 'enhanced-media-library' ),
|
695 |
+
'update_item' => __( 'Update Media Category', 'enhanced-media-library' ),
|
696 |
+
'add_new_item' => __( 'Add New Media Category', 'enhanced-media-library' ),
|
697 |
+
'new_item_name' => __( 'New Media Category Name', 'enhanced-media-library' ),
|
698 |
+
'parent_item' => __( 'Parent Media Category', 'enhanced-media-library' ),
|
699 |
+
'parent_item_colon' => __( 'Parent Media Category:', 'enhanced-media-library' ),
|
700 |
+
'search_items' => __( 'Search Media Categories', 'enhanced-media-library' )
|
701 |
+
),
|
702 |
|
703 |
'hierarchical' => 1,
|
704 |
|
705 |
+
'show_admin_column' => 1,
|
706 |
+
'admin_filter' => 1, // list view filter
|
707 |
+
'media_uploader_filter' => 1, // grid view filter
|
708 |
+
'media_popup_taxonomy_edit' => 1,
|
709 |
|
710 |
+
'show_in_nav_menus' => 1,
|
711 |
'sort' => 0,
|
712 |
'show_in_rest' => 0,
|
713 |
'rewrite' => array(
|
714 |
+
'slug' => 'media_category',
|
715 |
'with_front' => 1
|
716 |
)
|
717 |
);
|
718 |
|
719 |
+
update_option( 'wpuxss_eml_taxonomies', $wpuxss_eml_taxonomies );
|
720 |
+
}
|
721 |
+
|
722 |
+
if ( null === get_option( 'wpuxss_eml_lib_options', null ) ) {
|
723 |
+
|
724 |
+
$wpuxss_eml_lib_options = array(
|
725 |
+
'enhance_media_shortcodes' => 0,
|
726 |
+
'media_orderby' => 'date',
|
727 |
+
'media_order' => 'DESC',
|
728 |
+
'natural_sort' => 0,
|
729 |
+
'force_filters' => 1, // since 2.5
|
730 |
+
'filters_to_show' => array( // since 2.5
|
731 |
+
'types',
|
732 |
+
'dates',
|
733 |
+
'taxonomies'
|
734 |
+
),
|
735 |
+
'show_count' => 1,
|
736 |
+
'include_children' => 1, // since 2.6
|
737 |
+
'grid_show_caption' => 0, // since 2.6
|
738 |
+
'grid_caption_type' => 'title', // since 2.6
|
739 |
+
'search_in' => array( // since 2.6
|
740 |
+
'titles',
|
741 |
+
'captions',
|
742 |
+
'descriptions'
|
743 |
+
)
|
744 |
);
|
745 |
|
746 |
+
update_option( 'wpuxss_eml_lib_options', $wpuxss_eml_lib_options );
|
747 |
+
}
|
748 |
|
749 |
+
if ( null === get_option( 'wpuxss_eml_tax_options', null ) ) {
|
750 |
|
751 |
+
$wpuxss_eml_tax_options = array(
|
752 |
+
'tax_archives' => 0, // since 2.6
|
753 |
+
'edit_all_as_hierarchical' => 0
|
754 |
+
);
|
755 |
|
756 |
+
update_option( 'wpuxss_eml_tax_options', $wpuxss_eml_tax_options );
|
757 |
+
}
|
758 |
|
759 |
+
if ( null === get_option( 'wpuxss_eml_mimes', null ) ) {
|
|
|
760 |
|
761 |
+
$allowed_mimes = get_allowed_mime_types();
|
762 |
+
$default_mimes = array();
|
|
|
|
|
763 |
|
764 |
+
foreach ( wp_get_mime_types() as $type => $mime ) {
|
765 |
|
766 |
+
$wpuxss_eml_mimes[$type] = $default_mimes[$type] = array(
|
767 |
+
'mime' => $mime,
|
768 |
+
'singular' => $mime,
|
769 |
+
'plural' => $mime,
|
770 |
+
'filter' => 0,
|
771 |
+
'upload' => isset($allowed_mimes[$type]) ? 1 : 0
|
772 |
+
);
|
773 |
}
|
774 |
+
|
775 |
+
$wpuxss_eml_mimes['pdf']['singular'] = 'PDF';
|
776 |
+
$wpuxss_eml_mimes['pdf']['plural'] = 'PDFs';
|
777 |
+
$wpuxss_eml_mimes['pdf']['filter'] = 1;
|
778 |
+
|
779 |
+
update_option( 'wpuxss_eml_mimes', $wpuxss_eml_mimes );
|
780 |
+
update_option( 'wpuxss_eml_mimes_backup', $default_mimes );
|
781 |
}
|
782 |
|
783 |
+
}
|
784 |
+
}
|
785 |
+
|
786 |
|
787 |
|
788 |
+
/**
|
789 |
+
* wpuxss_eml_on_update
|
790 |
+
*
|
791 |
+
* @since 2.2
|
792 |
+
* @created 12/03/16
|
793 |
+
*/
|
794 |
+
|
795 |
+
if ( ! function_exists( 'wpuxss_eml_on_update' ) ) {
|
796 |
+
|
797 |
+
function wpuxss_eml_on_update() {
|
798 |
+
|
799 |
+
$wpuxss_eml_taxonomies = get_option( 'wpuxss_eml_taxonomies', array() );
|
800 |
+
$wpuxss_eml_lib_options = get_option( 'wpuxss_eml_lib_options', array() );
|
801 |
+
$wpuxss_eml_tax_options = get_option( 'wpuxss_eml_tax_options', array() );
|
802 |
+
|
803 |
+
|
804 |
+
// per-taxonomy settings
|
805 |
+
$media_taxonomy_args_defaults = array(
|
806 |
+
'assigned' => 0,
|
807 |
+
'eml_media' => 1,
|
808 |
+
'media_only' => 0,
|
809 |
+
|
810 |
+
'hierarchical' => 1,
|
811 |
+
|
812 |
+
'show_admin_column' => 0,
|
813 |
+
'admin_filter' => 0,
|
814 |
+
'media_uploader_filter' => 0,
|
815 |
+
'media_popup_taxonomy_edit' => 0,
|
816 |
+
|
817 |
+
'show_in_nav_menus' => 0,
|
818 |
+
'sort' => 0,
|
819 |
+
'show_in_rest' => 0,
|
820 |
+
'rewrite' => array(
|
821 |
+
'with_front' => 1
|
822 |
+
)
|
823 |
+
);
|
824 |
+
|
825 |
+
$non_media_taxonomy_args_defaults = array(
|
826 |
+
'assigned' => 0,
|
827 |
+
'eml_media' => 0,
|
828 |
+
'media_only' => 0,
|
829 |
+
'admin_filter' => 0,
|
830 |
+
'media_uploader_filter' => 0,
|
831 |
+
'media_popup_taxonomy_edit' => 0,
|
832 |
+
'taxonomy_auto_assign' => 0
|
833 |
+
);
|
834 |
+
|
835 |
+
|
836 |
+
foreach( $wpuxss_eml_taxonomies as $taxonomy => $params ) {
|
837 |
+
|
838 |
+
if ( ! isset( $params['eml_media'] ) ) {
|
839 |
+
$wpuxss_eml_taxonomies[$taxonomy]['eml_media'] = 0;
|
840 |
+
}
|
841 |
+
|
842 |
+
if ( (bool) $wpuxss_eml_taxonomies[$taxonomy]['eml_media'] ) {
|
843 |
+
|
844 |
+
$wpuxss_eml_taxonomies[$taxonomy] = array_intersect_key( $params, $media_taxonomy_args_defaults);
|
845 |
+
$wpuxss_eml_taxonomies[$taxonomy] = array_merge( $media_taxonomy_args_defaults, $params );
|
846 |
+
|
847 |
+
if ( ! isset( $params['rewrite']['slug'] ) || empty( $params['rewrite']['slug'] ) ) {
|
848 |
+
$wpuxss_eml_taxonomies[$taxonomy]['rewrite']['slug'] = $taxonomy;
|
849 |
+
}
|
850 |
+
}
|
851 |
+
|
852 |
+
if ( ! (bool) $wpuxss_eml_taxonomies[$taxonomy]['eml_media'] ) {
|
853 |
+
|
854 |
+
$wpuxss_eml_taxonomies[$taxonomy] = array_intersect_key( $params, $non_media_taxonomy_args_defaults);
|
855 |
+
$wpuxss_eml_taxonomies[$taxonomy] = array_merge( $non_media_taxonomy_args_defaults, $params );
|
856 |
+
}
|
857 |
+
}
|
858 |
+
|
859 |
+
|
860 |
+
// media library settings
|
861 |
$eml_lib_options_defaults = array(
|
862 |
'enhance_media_shortcodes' => isset( $wpuxss_eml_tax_options['enhance_media_shortcodes'] ) ? (bool) $wpuxss_eml_tax_options['enhance_media_shortcodes'] : ( isset( $wpuxss_eml_tax_options['enhance_gallery_shortcode'] ) ? (bool) $wpuxss_eml_tax_options['enhance_gallery_shortcode'] : 0 ),
|
863 |
'media_orderby' => isset( $wpuxss_eml_tax_options['media_orderby'] ) ? sanitize_text_field( $wpuxss_eml_tax_options['media_orderby'] ) : 'date',
|
883 |
$wpuxss_eml_lib_options = array_intersect_key( $wpuxss_eml_lib_options, $eml_lib_options_defaults );
|
884 |
$wpuxss_eml_lib_options = array_merge( $eml_lib_options_defaults, $wpuxss_eml_lib_options );
|
885 |
|
|
|
|
|
886 |
|
887 |
+
// media taxonomies settings
|
888 |
$eml_tax_options_defaults = array(
|
889 |
'tax_archives' => 0, // since 2.6
|
890 |
'edit_all_as_hierarchical' => 0
|
893 |
$wpuxss_eml_tax_options = array_intersect_key( $wpuxss_eml_tax_options, $eml_tax_options_defaults );
|
894 |
$wpuxss_eml_tax_options = array_merge( $eml_tax_options_defaults, $wpuxss_eml_tax_options );
|
895 |
|
|
|
896 |
|
897 |
+
update_option( 'wpuxss_eml_taxonomies', $wpuxss_eml_taxonomies );
|
898 |
+
update_option( 'wpuxss_eml_lib_options', $wpuxss_eml_lib_options );
|
899 |
+
update_option( 'wpuxss_eml_tax_options', $wpuxss_eml_tax_options );
|
900 |
|
|
|
|
|
901 |
|
902 |
+
if ( is_multisite() ) {
|
|
|
903 |
|
904 |
+
$wpuxss_eml_network_options = get_site_option( 'wpuxss_eml_network_options', array() );
|
905 |
|
906 |
+
$wpuxss_eml_network_options_defaults = array(
|
907 |
+
'media_settings' => 1,
|
908 |
+
'utilities' => 1
|
909 |
+
);
|
|
|
|
|
|
|
|
|
910 |
|
911 |
+
$wpuxss_eml_network_options = array_intersect_key( $wpuxss_eml_network_options, $wpuxss_eml_network_options_defaults );
|
912 |
+
$wpuxss_eml_network_options = array_merge( $wpuxss_eml_network_options_defaults, $wpuxss_eml_network_options );
|
|
|
913 |
|
914 |
+
update_site_option( 'wpuxss_eml_network_options', $wpuxss_eml_network_options );
|
|
|
915 |
}
|
916 |
}
|
917 |
}
|
918 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
919 |
?>
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: webbistro
|
|
3 |
Tags: media library, media category, media categories, media gallery, gallery shortcode, media tag, media tags, media taxonomy, media taxonomies, media uploader, mime type, mime, mime types, file types, media types, media filter, attachment, gallery, image, images, media, ux, user experience, wp-admin, admin, taxonomy, taxonomies
|
4 |
Requires at least: 4.5
|
5 |
Tested up to: 4.9.6
|
6 |
-
Stable tag: 2.6.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
@@ -170,19 +170,16 @@ Additional comfort and even more convenient way to organize WordPress media libr
|
|
170 |
|
171 |
## Changelog ##
|
172 |
|
173 |
-
### 2.6.
|
174 |
-
*Release Date - May
|
175 |
-
*Addresses various issues of all previous 2.6.x versions*
|
176 |
-
|
177 |
-
= Bugfixes =
|
178 |
-
* Various multisite bugs fixed, including the user deletion bug
|
179 |
-
* A bug causing memory leak on websites with thousands of users fixed
|
180 |
-
* A few bugs causing admin crash in PHP less than 5.5 fixed
|
181 |
-
* PRO only: a few update issues fixed including persistent update message bug
|
182 |
|
183 |
= Improvements =
|
184 |
* Elementor CSS-compatibility added (a temporary solution, we are still working on the full compatibility)
|
185 |
|
|
|
|
|
|
|
|
|
186 |
|
187 |
### 2.6 ###
|
188 |
*Release Date - May 18, 2018*
|
3 |
Tags: media library, media category, media categories, media gallery, gallery shortcode, media tag, media tags, media taxonomy, media taxonomies, media uploader, mime type, mime, mime types, file types, media types, media filter, attachment, gallery, image, images, media, ux, user experience, wp-admin, admin, taxonomy, taxonomies
|
4 |
Requires at least: 4.5
|
5 |
Tested up to: 4.9.6
|
6 |
+
Stable tag: 2.6.1
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
170 |
|
171 |
## Changelog ##
|
172 |
|
173 |
+
### 2.6.1 ###
|
174 |
+
*Release Date - May 20, 2018*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
175 |
|
176 |
= Improvements =
|
177 |
* Elementor CSS-compatibility added (a temporary solution, we are still working on the full compatibility)
|
178 |
|
179 |
+
= Bugfixes =
|
180 |
+
* PRO only: persistent update message bug fixed
|
181 |
+
* Not updating plugin options (in some cases) causing admin errors bug fixed
|
182 |
+
|
183 |
|
184 |
### 2.6 ###
|
185 |
*Release Date - May 18, 2018*
|