Skip to content

Commit fc6a8f2

Browse files
Updated libraries
1 parent 66cfcdf commit fc6a8f2

23 files changed

+1500
-455
lines changed

composer.lock

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

file-renaming-on-upload.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Plugin Name: Rename Media Files: Improve Your WordPress SEO
44
Plugin URI: https://wordpress.org/plugins/file-renaming-on-upload/
55
Description: Fixes file uploads with accents and special characters by renaming them. It also improves your SEO.
6-
Version: 2.6.5
6+
Version: 2.6.6
77
Text Domain: file-renaming-on-upload
88
Domain Path: /languages
99
Author: WPFactory

readme.txt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
=== Rename Media Files: Improve Your WordPress SEO ===
2-
Contributors: wpcodefactory, omardabbas, karzin, anbinder, algoritmika, kousikmukherjeeli
2+
Contributors: wpcodefactory, omardabbas, karzin, anbinder, kousikmukherjeeli
33
Tags: rename, seo, media, renaming, characters
44
Requires at least: 4.0.0
55
Tested up to: 6.8
66
Requires PHP: 5.3
7-
Stable tag: 2.6.5
7+
Stable tag: 2.6.6
88
License: GNU General Public License v3.0
99
License URI: http://www.gnu.org/licenses/gpl-3.0.html
1010

@@ -254,6 +254,10 @@ Head over to the [File Renaming on Upload plugin GitHub Repository](https://gith
254254

255255
== Changelog ==
256256

257+
= 2.6.6 - 2025/10/15 =
258+
* Updated libraries.
259+
* Removed Algoritmika from contributors.
260+
257261
= 2.6.5 - 2025/05/15 =
258262
* Fix - Translation loading was triggered too early.
259263
* Tested up to: 6.8.

vendor/composer/autoload_classmap.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,18 @@
88
return array(
99
'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php',
1010
'WPFactory\\Promoting_Notice\\Core' => $vendorDir . '/wpfactory/wpfactory-promoting-notice/src/php/class-core.php',
11+
'WPFactory\\WPFactory_Admin_Menu\\Plugin_Icon' => $vendorDir . '/wpfactory/wpfactory-admin-menu/src/php/class-plugin-icon.php',
1112
'WPFactory\\WPFactory_Admin_Menu\\Singleton' => $vendorDir . '/wpfactory/wpfactory-admin-menu/src/php/trait-singleton.php',
1213
'WPFactory\\WPFactory_Admin_Menu\\WC_Settings_Menu_Item_Swapper' => $vendorDir . '/wpfactory/wpfactory-admin-menu/src/php/class-wc-settings-menu-item-swapper.php',
1314
'WPFactory\\WPFactory_Admin_Menu\\WPFactory_Admin_Menu' => $vendorDir . '/wpfactory/wpfactory-admin-menu/src/php/class-wpfactory-admin-menu.php',
15+
'WPFactory\\WPFactory_Cross_Selling\\Banners' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-banners.php',
1416
'WPFactory\\WPFactory_Cross_Selling\\Product_Categories' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-product-categories.php',
1517
'WPFactory\\WPFactory_Cross_Selling\\Products' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-products.php',
18+
'WPFactory\\WPFactory_Cross_Selling\\Recommendation_Box_Tags' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-recommendation-box-tags.php',
19+
'WPFactory\\WPFactory_Cross_Selling\\Recommendations_Box' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-recommendations-box.php',
20+
'WPFactory\\WPFactory_Cross_Selling\\Recommendations_Page' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-recommendations-page.php',
1621
'WPFactory\\WPFactory_Cross_Selling\\Singleton' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/trait-singleton.php',
1722
'WPFactory\\WPFactory_Cross_Selling\\WPFactory_Cross_Selling' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/class-wpfactory-cross-selling.php',
23+
'WPFactory\\WPFactory_Cross_Selling\\WPFactory_Cross_Selling_Injector' => $vendorDir . '/wpfactory/wpfactory-cross-selling/src/php/trait-wpfactory-cross-selling-injector.php',
1824
'WeDevs_Settings_API' => $vendorDir . '/tareq1988/wordpress-settings-api-class/src/class.settings-api.php',
1925
);

vendor/composer/autoload_static.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,19 @@ class ComposerStaticInit899afcbf99c41bc2b42ca936f40efdf1
2727
public static $classMap = array (
2828
'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
2929
'WPFactory\\Promoting_Notice\\Core' => __DIR__ . '/..' . '/wpfactory/wpfactory-promoting-notice/src/php/class-core.php',
30+
'WPFactory\\WPFactory_Admin_Menu\\Plugin_Icon' => __DIR__ . '/..' . '/wpfactory/wpfactory-admin-menu/src/php/class-plugin-icon.php',
3031
'WPFactory\\WPFactory_Admin_Menu\\Singleton' => __DIR__ . '/..' . '/wpfactory/wpfactory-admin-menu/src/php/trait-singleton.php',
3132
'WPFactory\\WPFactory_Admin_Menu\\WC_Settings_Menu_Item_Swapper' => __DIR__ . '/..' . '/wpfactory/wpfactory-admin-menu/src/php/class-wc-settings-menu-item-swapper.php',
3233
'WPFactory\\WPFactory_Admin_Menu\\WPFactory_Admin_Menu' => __DIR__ . '/..' . '/wpfactory/wpfactory-admin-menu/src/php/class-wpfactory-admin-menu.php',
34+
'WPFactory\\WPFactory_Cross_Selling\\Banners' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-banners.php',
3335
'WPFactory\\WPFactory_Cross_Selling\\Product_Categories' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-product-categories.php',
3436
'WPFactory\\WPFactory_Cross_Selling\\Products' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-products.php',
37+
'WPFactory\\WPFactory_Cross_Selling\\Recommendation_Box_Tags' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-recommendation-box-tags.php',
38+
'WPFactory\\WPFactory_Cross_Selling\\Recommendations_Box' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-recommendations-box.php',
39+
'WPFactory\\WPFactory_Cross_Selling\\Recommendations_Page' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-recommendations-page.php',
3540
'WPFactory\\WPFactory_Cross_Selling\\Singleton' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/trait-singleton.php',
3641
'WPFactory\\WPFactory_Cross_Selling\\WPFactory_Cross_Selling' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/class-wpfactory-cross-selling.php',
42+
'WPFactory\\WPFactory_Cross_Selling\\WPFactory_Cross_Selling_Injector' => __DIR__ . '/..' . '/wpfactory/wpfactory-cross-selling/src/php/trait-wpfactory-cross-selling-injector.php',
3743
'WeDevs_Settings_API' => __DIR__ . '/..' . '/tareq1988/wordpress-settings-api-class/src/class.settings-api.php',
3844
);
3945

vendor/composer/installed.json

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -119,23 +119,23 @@
119119
},
120120
{
121121
"name": "wpfactory/wpfactory-admin-menu",
122-
"version": "v1.0.3",
123-
"version_normalized": "1.0.3.0",
122+
"version": "v1.0.8",
123+
"version_normalized": "1.0.8.0",
124124
"source": {
125125
"type": "git",
126126
"url": "https://github.com/wpcodefactory/wpfactory-admin-menu.git",
127-
"reference": "fe48c4100a6b436a3dd39308814887119063c140"
127+
"reference": "971a37f3b226a1884eeabae9c615d5b199784a31"
128128
},
129129
"dist": {
130130
"type": "zip",
131-
"url": "https://api.github.com/repos/wpcodefactory/wpfactory-admin-menu/zipball/fe48c4100a6b436a3dd39308814887119063c140",
132-
"reference": "fe48c4100a6b436a3dd39308814887119063c140",
131+
"url": "https://api.github.com/repos/wpcodefactory/wpfactory-admin-menu/zipball/971a37f3b226a1884eeabae9c615d5b199784a31",
132+
"reference": "971a37f3b226a1884eeabae9c615d5b199784a31",
133133
"shasum": ""
134134
},
135135
"require-dev": {
136136
"wp-cli/wp-cli-bundle": "*"
137137
},
138-
"time": "2024-10-14T14:01:02+00:00",
138+
"time": "2025-06-20T23:08:43+00:00",
139139
"type": "library",
140140
"installation-source": "dist",
141141
"autoload": {
@@ -163,24 +163,24 @@
163163
]
164164
},
165165
"support": {
166-
"source": "https://github.com/wpcodefactory/wpfactory-admin-menu/tree/v1.0.3",
166+
"source": "https://github.com/wpcodefactory/wpfactory-admin-menu/tree/v1.0.8",
167167
"issues": "https://github.com/wpcodefactory/wpfactory-admin-menu/issues"
168168
},
169169
"install-path": "../wpfactory/wpfactory-admin-menu"
170170
},
171171
{
172172
"name": "wpfactory/wpfactory-cross-selling",
173-
"version": "v1.0.3",
174-
"version_normalized": "1.0.3.0",
173+
"version": "v1.0.6",
174+
"version_normalized": "1.0.6.0",
175175
"source": {
176176
"type": "git",
177177
"url": "https://github.com/wpcodefactory/wpfactory-cross-selling.git",
178-
"reference": "d37c73013e897d3ce3db05b97046b30fdd2fd403"
178+
"reference": "a371556ebb9bdadc8e5aa0f19bf7ecb5c69636c5"
179179
},
180180
"dist": {
181181
"type": "zip",
182-
"url": "https://api.github.com/repos/wpcodefactory/wpfactory-cross-selling/zipball/d37c73013e897d3ce3db05b97046b30fdd2fd403",
183-
"reference": "d37c73013e897d3ce3db05b97046b30fdd2fd403",
182+
"url": "https://api.github.com/repos/wpcodefactory/wpfactory-cross-selling/zipball/a371556ebb9bdadc8e5aa0f19bf7ecb5c69636c5",
183+
"reference": "a371556ebb9bdadc8e5aa0f19bf7ecb5c69636c5",
184184
"shasum": ""
185185
},
186186
"require": {
@@ -189,7 +189,7 @@
189189
"require-dev": {
190190
"wp-cli/wp-cli-bundle": "*"
191191
},
192-
"time": "2024-10-31T15:55:35+00:00",
192+
"time": "2025-08-19T04:45:09+00:00",
193193
"type": "library",
194194
"installation-source": "dist",
195195
"autoload": {
@@ -217,7 +217,7 @@
217217
]
218218
},
219219
"support": {
220-
"source": "https://github.com/wpcodefactory/wpfactory-cross-selling/tree/v1.0.3",
220+
"source": "https://github.com/wpcodefactory/wpfactory-cross-selling/tree/v1.0.6",
221221
"issues": "https://github.com/wpcodefactory/wpfactory-cross-selling/issues"
222222
},
223223
"install-path": "../wpfactory/wpfactory-cross-selling"

vendor/composer/installed.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
'name' => 'wpfactory/file-renaming-on-upload',
44
'pretty_version' => 'dev-master',
55
'version' => 'dev-master',
6-
'reference' => '425cd083c94841a8808c808ae4106acb30e8977e',
6+
'reference' => '66cfcdf9addf3e1625bc1178dd530110b17cebc5',
77
'type' => 'library',
88
'install_path' => __DIR__ . '/../../',
99
'aliases' => array(),
@@ -35,25 +35,25 @@
3535
'wpfactory/file-renaming-on-upload' => array(
3636
'pretty_version' => 'dev-master',
3737
'version' => 'dev-master',
38-
'reference' => '425cd083c94841a8808c808ae4106acb30e8977e',
38+
'reference' => '66cfcdf9addf3e1625bc1178dd530110b17cebc5',
3939
'type' => 'library',
4040
'install_path' => __DIR__ . '/../../',
4141
'aliases' => array(),
4242
'dev_requirement' => false,
4343
),
4444
'wpfactory/wpfactory-admin-menu' => array(
45-
'pretty_version' => 'v1.0.3',
46-
'version' => '1.0.3.0',
47-
'reference' => 'fe48c4100a6b436a3dd39308814887119063c140',
45+
'pretty_version' => 'v1.0.8',
46+
'version' => '1.0.8.0',
47+
'reference' => '971a37f3b226a1884eeabae9c615d5b199784a31',
4848
'type' => 'library',
4949
'install_path' => __DIR__ . '/../wpfactory/wpfactory-admin-menu',
5050
'aliases' => array(),
5151
'dev_requirement' => false,
5252
),
5353
'wpfactory/wpfactory-cross-selling' => array(
54-
'pretty_version' => 'v1.0.3',
55-
'version' => '1.0.3.0',
56-
'reference' => 'd37c73013e897d3ce3db05b97046b30fdd2fd403',
54+
'pretty_version' => 'v1.0.6',
55+
'version' => '1.0.6.0',
56+
'reference' => 'a371556ebb9bdadc8e5aa0f19bf7ecb5c69636c5',
5757
'type' => 'library',
5858
'install_path' => __DIR__ . '/../wpfactory/wpfactory-cross-selling',
5959
'aliases' => array(),
Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
<?php
2+
/**
3+
* WPFactory Admin Menu - Plugin Icon.
4+
*
5+
* @version 1.0.6
6+
* @since 1.0.6
7+
* @author WPFactory
8+
*/
9+
10+
namespace WPFactory\WPFactory_Admin_Menu;
11+
12+
defined( 'ABSPATH' ) || exit;
13+
14+
if ( ! class_exists( 'WPFactory\WPFactory_Admin_Menu\Plugin_Icon' ) ) {
15+
16+
/**
17+
* WPFactory Admin Menu.
18+
*
19+
* @version 1.0.6
20+
* @since 1.0.6
21+
*/
22+
class Plugin_Icon {
23+
24+
/**
25+
* $args.
26+
*
27+
* @since 1.0.6
28+
*
29+
* @var array
30+
*/
31+
protected $args = array();
32+
33+
/**
34+
* get_plugin_icon_img_html.
35+
*
36+
* @version 1.0.6
37+
* @since 1.0.6
38+
*
39+
* @return string
40+
*/
41+
function get_plugin_icon_img_html() {
42+
$args = $this->get_args();
43+
44+
// Icon URL.
45+
if ( 'manual' === $args['get_url_method'] ) {
46+
$icon_url = $args['url'] ?? '';
47+
} elseif (
48+
'wporg_plugins_api' === $args['get_url_method'] &&
49+
! empty( $args['wporg_plugin_slug'] )
50+
) {
51+
$icon_url = $this->get_wporg_plugin_icon_url( $args['wporg_plugin_slug'] );
52+
}
53+
54+
// Icon attributes.
55+
$width = $args['width'] ?? '';
56+
$width_html = ! empty( $width ) ? 'width="' . esc_attr( $width ) . '"' : '';
57+
$height = $args['height'] ?? '';
58+
$height_html = ! empty( $height ) ? 'height="' . esc_attr( $height ) . '"' : '';
59+
$style = $args['style'] ?? '';
60+
$style_html = ! empty( $style ) ? 'style="' . esc_attr( $style ) . '"' : '';
61+
62+
// Icon HTML.
63+
$icon_html = ! empty( $icon_url ) ? '<img ' . $style_html . ' class="wpfam-plugin-icon" src="' . esc_url( $icon_url ) . '" ' . $width_html . $height_html . '>' : '';
64+
65+
return $icon_html;
66+
}
67+
68+
/**
69+
* get_args.
70+
*
71+
* @version 1.0.6
72+
* @since 1.0.6
73+
*
74+
* @return array
75+
*/
76+
public function get_args(): array {
77+
return $this->args;
78+
}
79+
80+
/**
81+
* set_args.
82+
*
83+
* @version 1.0.6
84+
* @since 1.0.6
85+
*
86+
* @param array $args
87+
*/
88+
public function set_args( $args = null ) {
89+
$this->args = wp_parse_args( $args, array(
90+
'url' => '',
91+
'width' => '',
92+
'height' => '',
93+
'style' => '',
94+
'get_url_method' => 'manual', // wporg_plugins_api || manual
95+
'wporg_plugin_slug' => ''
96+
) );
97+
$this->args = $args;
98+
}
99+
100+
/**
101+
* get_wporg_plugin_icon_url.
102+
*
103+
* @version 1.0.6
104+
* @since 1.0.6
105+
*
106+
* @param $plugin_slug
107+
*
108+
* @return mixed|string
109+
*/
110+
function get_wporg_plugin_icon_url( $plugin_slug ) {
111+
if ( ! function_exists( 'plugins_api' ) ) {
112+
require_once ABSPATH . 'wp-admin/includes/plugin-install.php';
113+
}
114+
$transient_key = 'wpfam_plugin_icon_url_' . sanitize_key( $plugin_slug );
115+
$cached_url = get_transient( $transient_key );
116+
117+
if ( $cached_url !== false ) {
118+
return $cached_url;
119+
}
120+
121+
// Fetch plugin info from WP.org
122+
$info = plugins_api( 'plugin_information', array(
123+
'slug' => $plugin_slug,
124+
'fields' => array(
125+
'icons' => true,
126+
),
127+
) );
128+
129+
if ( is_wp_error( $info ) || empty( $info->icons ) ) {
130+
return '';
131+
}
132+
133+
$icon_url = $info->icons['svg'] ?? $info->icons['2x'] ?? $info->icons['1x'] ?? '';
134+
135+
set_transient( $transient_key, $icon_url, MONTH_IN_SECONDS );
136+
137+
return $icon_url;
138+
}
139+
}
140+
}

0 commit comments

Comments
 (0)