Version Description
- 2020/07/06
- Fix - automatically deactivate free version if pro version is activated - Thank you Jordi.
- Fix - Missing link to privacy data.
- Fix - Not correctly identifying original post when comparing with post meta values - Thank you Reinhard.
- New - more details how long a process took is now stored in the log.
- 242,749 downloads
Download this release
Release Info
Developer | cleverplugins |
Plugin | Delete Duplicate Posts |
Version | 4.4.5 |
Comparing to | |
See all releases |
Code changes from version 4.4.4 to 4.4.5
- css/delete-duplicate-posts-min.css +1 -0
- css/delete-duplicate-posts.css +35 -11
- delete-duplicate-posts.php +78 -76
- readme.txt +11 -3
- sidebar.php +20 -20
css/delete-duplicate-posts-min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
#ddpprobutton{font-size:1.2em;width:100%;text-align:center}#ddpprobutton span{clear:both;display:block;line-height:.8em;font-size:.8em;margin-bottom:10px}.moneybackguarantee{text-align:center}.moneybackguarantee p{font-size:.9em}.statusdiv{background-color:#ffffff;padding:.8em;clear:both}#cp-ddp-reviewlink ul{float:left;width:100%;margin-bottom:10px}#cp-ddp-reviewlink ul li{float:left;margin-right:10px;vertical-align:middle;line-height:30px}#cp-ddp-reviewlinkul li .dashicons{line-height:30px;margin-right:5px}.tools_page_delete-duplicate-posts .updated{clear:both}#ddp_container #dashboard .spinner{float:left}.sidebarrow .faqbullets{padding-left:30px;font-size:.8em}.sidebarrow .faqbullets li{list-style-type:square}.sidebarrow .linklist{padding-left:20px}.sidebarrow .linklist li{list-style-type:square}.sidebarrow .linklist li a{text-decoration:none}.sidebarrow .linklist li a:hover{text-decoration:underline}.sidebarrow .linklist span{font-size:12px;color:#999;margin-left:8px;font-weight:400}.statusdiv h3{text-align:center}.statusdiv .dupelist{margin-bottom:10px}.statusdiv .warning{border:1px solid #ff0000;padding-top:5px;padding-bottom:5px;padding-left:10px;padding-right:10px;text-align:center}.statusdiv .center{text-align:center}#ddp_compare_metatag{margin-top:10px;margin-left:25px}.ddpcomparemethod .optiondesc{font-size:12px;color:#999;margin-left:8px;font-weight:400}.ddpcomparemethod .ddp-compare-details{display:none}.duplicatetable{display:none}.statusmessage{display:none}.ddp_content_wrapper{display:table;width:100%;table-layout:fixed}.ddp_content_cell{display:table-cell;height:500px;margin:0;padding:0px;vertical-align:top}#ddp_container{margin:0;padding:0 10px 0 0px;vertical-align:top;display:table-cell}#sidebar-container{width:260px;background:#ffffff;border:1px solid #ccd0d4;box-shadow:0 1px 1px rgba(0,0,0,0.04);margin:5px 15px 2px;padding:1px 12px}#sidebar-container .sidebarrow{float:left;width:100%;clear:both;margin-bottom:10px}#sidebar-container .sidebarrow:last-of-type{border-bottom:0px}#sidebar-container .sidebarrow img.logo{width:50%;margin-bottom:10px;display:block}#log{border:1px solid #ccd0d4;overflow-x:hidden;overflow-x:auto;max-height:280px;background:#ffffff;padding:10px}
|
css/delete-duplicate-posts.css
CHANGED
@@ -1,3 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
.statusdiv {
|
2 |
background-color: #ffffff;
|
3 |
padding: .8em;
|
@@ -5,22 +29,22 @@
|
|
5 |
|
6 |
}
|
7 |
#cp-ddp-reviewlink ul {
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
#cp-ddp-reviewlink ul li {
|
13 |
|
14 |
-
float: left;
|
15 |
-
margin-right: 10px;
|
16 |
-
vertical-align: middle;
|
17 |
-
line-height: 30px;
|
18 |
}
|
19 |
|
20 |
#cp-ddp-reviewlinkul li .dashicons {
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
|
25 |
.tools_page_delete-duplicate-posts .updated {
|
26 |
clear: both;
|
1 |
+
#ddpprobutton {
|
2 |
+
font-size: 1.2em;
|
3 |
+
width: 100%;
|
4 |
+
text-align: center;
|
5 |
+
}
|
6 |
+
|
7 |
+
#ddpprobutton span {
|
8 |
+
clear: both;
|
9 |
+
display: block;
|
10 |
+
line-height: .8em;
|
11 |
+
font-size: .8em;
|
12 |
+
margin-bottom: 10px;
|
13 |
+
}
|
14 |
+
|
15 |
+
|
16 |
+
.moneybackguarantee {
|
17 |
+
text-align: center;
|
18 |
+
}
|
19 |
+
|
20 |
+
.moneybackguarantee p {
|
21 |
+
font-size: .9em;
|
22 |
+
|
23 |
+
}
|
24 |
+
|
25 |
.statusdiv {
|
26 |
background-color: #ffffff;
|
27 |
padding: .8em;
|
29 |
|
30 |
}
|
31 |
#cp-ddp-reviewlink ul {
|
32 |
+
float: left;
|
33 |
+
width: 100%;
|
34 |
+
margin-bottom: 10px;
|
35 |
+
}
|
36 |
#cp-ddp-reviewlink ul li {
|
37 |
|
38 |
+
float: left;
|
39 |
+
margin-right: 10px;
|
40 |
+
vertical-align: middle;
|
41 |
+
line-height: 30px;
|
42 |
}
|
43 |
|
44 |
#cp-ddp-reviewlinkul li .dashicons {
|
45 |
+
line-height: 30px;
|
46 |
+
margin-right: 5px;
|
47 |
+
}
|
48 |
|
49 |
.tools_page_delete-duplicate-posts .updated {
|
50 |
clear: both;
|
delete-duplicate-posts.php
CHANGED
@@ -5,7 +5,7 @@ Plugin Name: Delete Duplicate Posts
|
|
5 |
Plugin Script: delete-duplicate-posts.php
|
6 |
Plugin URI: https://cleverplugins.com
|
7 |
Description: Remove duplicate blogposts on your blog! Searches and removes duplicate posts and their post meta tags. You can delete posts, pages and other Custom Post Types enabled on your website.
|
8 |
-
Version: 4.4.
|
9 |
Author: cleverplugins.com
|
10 |
Author URI: https://cleverplugins.com
|
11 |
Min WP Version: 4.7
|
@@ -16,71 +16,78 @@ Domain Path: /languages
|
|
16 |
/*
|
17 |
TODO - Lav så man kan vælge imellem trash og delete (check site opsætning?)
|
18 |
*/
|
19 |
-
|
|
|
|
|
20 |
|
21 |
-
if (
|
|
|
|
|
|
|
22 |
// Create a helper function for easy SDK access.
|
23 |
-
|
24 |
-
{
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
|
|
|
|
61 |
}
|
62 |
|
63 |
-
|
|
|
|
|
|
|
64 |
}
|
65 |
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
delete_option( 'delete_duplicate_posts_options_v4' );
|
80 |
-
delete_option( 'cp_ddp_freemius_state' );
|
81 |
}
|
82 |
|
83 |
-
require plugin_dir_path( __FILE__ ) . 'vendor/autoload.php';
|
84 |
add_action( 'admin_init', array( 'PAnD', 'init' ) );
|
85 |
|
86 |
if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
@@ -221,7 +228,7 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
221 |
?></h3>
|
222 |
|
223 |
<p><?php
|
224 |
-
echo esc_html__( 'Gathering non-sensitive diagnostic data about the plugin install helps us improve the plugin.', 'delete-duplicate-posts' ) . ' <a href="' . esc_url( '/' ) . '" target="_blank">' . esc_html__( 'Read more about what we collect.', 'delete-duplicate-posts' ) . '</a>' ;
|
225 |
?></p>
|
226 |
|
227 |
<p>
|
@@ -243,7 +250,7 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
243 |
?>" />
|
244 |
|
245 |
</div>
|
246 |
-
|
247 |
}
|
248 |
|
249 |
}
|
@@ -277,7 +284,7 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
277 |
<span class="dashicons dashicons-smiley"></span><a href="#" class="cp-ddp-dismiss-review-notice dismiss-this" target="_blank" rel="noopener">I already did</a>
|
278 |
</p>
|
279 |
</div>
|
280 |
-
|
281 |
}
|
282 |
|
283 |
}
|
@@ -347,6 +354,7 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
347 |
self::timerstart( 'return_duplicates' );
|
348 |
$options = self::get_options();
|
349 |
$comparemethod = 'titlecompare';
|
|
|
350 |
global $ddp_fs ;
|
351 |
$currstep = ( isset( $_POST['step'] ) ? absint( $_POST['step'] ) : 0 );
|
352 |
|
@@ -436,7 +444,8 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
436 |
if ( !isset( $json_response['dupescount'] ) ) {
|
437 |
$json_response['dupescount'] = 0;
|
438 |
}
|
439 |
-
self::
|
|
|
440 |
} else {
|
441 |
$json_response['msg'] = __( 'Error: Choose post types to check.', 'delete-duplicate-posts' );
|
442 |
$return_duplicates_time = self::timerstop( 'return_duplicates' );
|
@@ -447,7 +456,9 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
447 |
wp_send_json_error( $json_response );
|
448 |
}
|
449 |
|
450 |
-
|
|
|
|
|
451 |
$json_response['msg'] = $json_response['dupescount'] . ' duplicates found. Showing up to ' . $viewlimit . ' Time: ' . $return_duplicates_time . ' sec.';
|
452 |
// @todo i8n
|
453 |
if ( $return ) {
|
@@ -689,7 +700,7 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
689 |
$pluginver = self::get_plugin_version();
|
690 |
wp_enqueue_style(
|
691 |
'delete-duplicate-posts',
|
692 |
-
plugins_url( '/css/delete-duplicate-posts.css', __FILE__ ),
|
693 |
array(),
|
694 |
$pluginver
|
695 |
);
|
@@ -1342,25 +1353,16 @@ if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
|
1342 |
?>
|
1343 |
|
1344 |
<?php
|
1345 |
-
|
1346 |
if ( function_exists( 'ddp_fs' ) ) {
|
1347 |
global $ddp_fs ;
|
1348 |
-
// Only loads beacon for registered users
|
1349 |
-
|
1350 |
-
if ( $ddp_fs->is_registered() ) {
|
1351 |
-
echo '<script type="text/javascript">!function(e,t,n){function a(){var e=t.getElementsByTagName("script")[0],n=t.createElement("script");n.type="text/javascript",n.async=!0,n.src="https://beacon-v2.helpscout.net",e.parentNode.insertBefore(n,e)}if(e.Beacon=n=function(t,n,a){e.Beacon.readyQueue.push({method:t,options:n,data:a})},n.readyQueue=[],"complete"===t.readyState)return a();e.attachEvent?e.attachEvent("onload",a):e.addEventListener("load",a,!1)}(window,document,window.Beacon||function(){});</script><script type="text/javascript">window.Beacon("init", "3ad4aee5-9cb0-4ad7-8f06-0002958ad6ab")</script>' ;
|
1352 |
-
//phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
1353 |
-
}
|
1354 |
-
|
1355 |
}
|
1356 |
-
|
1357 |
?>
|
1358 |
|
1359 |
-
</div>
|
1360 |
</div>
|
1361 |
-
|
1362 |
</div>
|
1363 |
-
|
|
|
|
|
1364 |
}
|
1365 |
|
1366 |
}
|
5 |
Plugin Script: delete-duplicate-posts.php
|
6 |
Plugin URI: https://cleverplugins.com
|
7 |
Description: Remove duplicate blogposts on your blog! Searches and removes duplicate posts and their post meta tags. You can delete posts, pages and other Custom Post Types enabled on your website.
|
8 |
+
Version: 4.4.5
|
9 |
Author: cleverplugins.com
|
10 |
Author URI: https://cleverplugins.com
|
11 |
Min WP Version: 4.7
|
16 |
/*
|
17 |
TODO - Lav så man kan vælge imellem trash og delete (check site opsætning?)
|
18 |
*/
|
19 |
+
if ( !defined( 'ABSPATH' ) ) {
|
20 |
+
exit;
|
21 |
+
}
|
22 |
|
23 |
+
if ( function_exists( 'ddp_fs' ) ) {
|
24 |
+
ddp_fs()->set_basename( false, __FILE__ );
|
25 |
+
} else {
|
26 |
+
// DO NOT REMOVE THIS IF, IT IS ESSENTIAL FOR THE `function_exists` CALL ABOVE TO PROPERLY WORK.
|
27 |
// Create a helper function for easy SDK access.
|
28 |
+
|
29 |
+
if ( !function_exists( 'ddp_fs' ) ) {
|
30 |
+
// Create a helper function for easy SDK access.
|
31 |
+
function ddp_fs()
|
32 |
+
{
|
33 |
+
global $ddp_fs ;
|
34 |
+
|
35 |
+
if ( !isset( $ddp_fs ) ) {
|
36 |
+
// Include Freemius SDK.
|
37 |
+
require_once dirname( __FILE__ ) . '/freemius/start.php';
|
38 |
+
define( 'CP_DDP_FREEMIUS_STATE', 'cp_ddp_freemius_state' );
|
39 |
+
// Check anonymous mode.
|
40 |
+
$cp_ddp_freemius_state = get_site_option( CP_DDP_FREEMIUS_STATE, 'anonymous' );
|
41 |
+
$is_anonymous = 'anonymous' === $cp_ddp_freemius_state || 'skipped' === $cp_ddp_freemius_state;
|
42 |
+
$is_premium = false;
|
43 |
+
$is_anonymous = ( $is_premium ? false : $is_anonymous );
|
44 |
+
$ddp_fs = fs_dynamic_init( array(
|
45 |
+
'id' => '925',
|
46 |
+
'slug' => 'delete-duplicate-posts',
|
47 |
+
'type' => 'plugin',
|
48 |
+
'public_key' => 'pk_0af9f9e83f00e23728a55430a57dd',
|
49 |
+
'is_premium' => false,
|
50 |
+
'premium_suffix' => 'Pro',
|
51 |
+
'has_addons' => false,
|
52 |
+
'has_paid_plans' => true,
|
53 |
+
'anonymous_mode' => $is_anonymous,
|
54 |
+
'menu' => array(
|
55 |
+
'slug' => 'delete-duplicate-posts.php',
|
56 |
+
'first-path' => 'admin.php?page=delete-duplicate-posts.php',
|
57 |
+
'support' => false,
|
58 |
+
'affiliation' => false,
|
59 |
+
'parent' => array(
|
60 |
+
'slug' => 'tools.php',
|
61 |
+
),
|
62 |
+
),
|
63 |
+
'is_live' => true,
|
64 |
+
) );
|
65 |
+
}
|
66 |
+
|
67 |
+
return $ddp_fs;
|
68 |
}
|
69 |
|
70 |
+
// Init Freemius.
|
71 |
+
ddp_fs();
|
72 |
+
// Signal that SDK was initiated.
|
73 |
+
do_action( 'ddp_fs_loaded' );
|
74 |
}
|
75 |
|
76 |
+
ddp_fs()->add_action( 'after_uninstall', 'ddp_fs_uninstall_cleanup' );
|
77 |
+
// clean-up when uninstalled
|
78 |
+
function ddp_fs_uninstall_cleanup()
|
79 |
+
{
|
80 |
+
global $wpdb ;
|
81 |
+
$wpdb->query( $wpdb->prepare( 'DROP TABLE IF EXISTS %s', $wpdb->prefix . 'ddp_log' ) );
|
82 |
+
delete_option( 'ddp_deleted_duplicates' );
|
83 |
+
delete_option( 'delete_duplicate_posts_options_v4' );
|
84 |
+
delete_option( 'cp_ddp_freemius_state' );
|
85 |
+
}
|
86 |
+
|
87 |
+
require plugin_dir_path( __FILE__ ) . 'vendor/autoload.php';
|
88 |
+
// ... Your plugin's main file logic ...
|
|
|
|
|
89 |
}
|
90 |
|
|
|
91 |
add_action( 'admin_init', array( 'PAnD', 'init' ) );
|
92 |
|
93 |
if ( !class_exists( 'Delete_Duplicate_Posts' ) ) {
|
228 |
?></h3>
|
229 |
|
230 |
<p><?php
|
231 |
+
echo esc_html__( 'Gathering non-sensitive diagnostic data about the plugin install helps us improve the plugin.', 'delete-duplicate-posts' ) . ' <a href="' . esc_url( 'https://cleverplugins.com/docs/install/non-sensitive-diagnostic-data/' ) . '" target="_blank" rel="noopener">' . esc_html__( 'Read more about what we collect.', 'delete-duplicate-posts' ) . '</a>' ;
|
232 |
?></p>
|
233 |
|
234 |
<p>
|
250 |
?>" />
|
251 |
|
252 |
</div>
|
253 |
+
<?php
|
254 |
}
|
255 |
|
256 |
}
|
284 |
<span class="dashicons dashicons-smiley"></span><a href="#" class="cp-ddp-dismiss-review-notice dismiss-this" target="_blank" rel="noopener">I already did</a>
|
285 |
</p>
|
286 |
</div>
|
287 |
+
<?php
|
288 |
}
|
289 |
|
290 |
}
|
354 |
self::timerstart( 'return_duplicates' );
|
355 |
$options = self::get_options();
|
356 |
$comparemethod = 'titlecompare';
|
357 |
+
$return_duplicates_time = false;
|
358 |
global $ddp_fs ;
|
359 |
$currstep = ( isset( $_POST['step'] ) ? absint( $_POST['step'] ) : 0 );
|
360 |
|
444 |
if ( !isset( $json_response['dupescount'] ) ) {
|
445 |
$json_response['dupescount'] = 0;
|
446 |
}
|
447 |
+
$return_duplicates_time = self::timerstop( 'return_duplicates' );
|
448 |
+
self::log( $json_response['dupescount'] . ' duplicates found in ' . $return_duplicates_time . ' sec.' );
|
449 |
} else {
|
450 |
$json_response['msg'] = __( 'Error: Choose post types to check.', 'delete-duplicate-posts' );
|
451 |
$return_duplicates_time = self::timerstop( 'return_duplicates' );
|
456 |
wp_send_json_error( $json_response );
|
457 |
}
|
458 |
|
459 |
+
if ( !$return_duplicates_time ) {
|
460 |
+
$return_duplicates_time = self::timerstop( 'return_duplicates' );
|
461 |
+
}
|
462 |
$json_response['msg'] = $json_response['dupescount'] . ' duplicates found. Showing up to ' . $viewlimit . ' Time: ' . $return_duplicates_time . ' sec.';
|
463 |
// @todo i8n
|
464 |
if ( $return ) {
|
700 |
$pluginver = self::get_plugin_version();
|
701 |
wp_enqueue_style(
|
702 |
'delete-duplicate-posts',
|
703 |
+
plugins_url( '/css/delete-duplicate-posts-min.css', __FILE__ ),
|
704 |
array(),
|
705 |
$pluginver
|
706 |
);
|
1353 |
?>
|
1354 |
|
1355 |
<?php
|
|
|
1356 |
if ( function_exists( 'ddp_fs' ) ) {
|
1357 |
global $ddp_fs ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1358 |
}
|
|
|
1359 |
?>
|
1360 |
|
|
|
1361 |
</div>
|
|
|
1362 |
</div>
|
1363 |
+
|
1364 |
+
</div>
|
1365 |
+
<?php
|
1366 |
}
|
1367 |
|
1368 |
}
|
readme.txt
CHANGED
@@ -4,8 +4,8 @@ Tags: delete duplicate posts, delete duplicate,
|
|
4 |
License: GPLv2 or later
|
5 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
6 |
Requires at least: 4.7
|
7 |
-
Tested up to: 5.4.
|
8 |
-
Stable tag: 4.4.
|
9 |
Requires PHP: 5.6
|
10 |
|
11 |
Get rid of duplicate posts and pages on your blog!
|
@@ -39,6 +39,14 @@ You should restore the backup you took of your website before you ran this tool.
|
|
39 |
|
40 |
== Changelog ==
|
41 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
= 4.4.4 =
|
43 |
* 2020/06/08
|
44 |
* Code cleanup and security hardening.
|
@@ -222,4 +230,4 @@ You should restore the backup you took of your website before you ran this tool.
|
|
222 |
* First release
|
223 |
|
224 |
== Upgrade Notice ==
|
225 |
-
4.
|
4 |
License: GPLv2 or later
|
5 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
6 |
Requires at least: 4.7
|
7 |
+
Tested up to: 5.4.2
|
8 |
+
Stable tag: 4.4.5
|
9 |
Requires PHP: 5.6
|
10 |
|
11 |
Get rid of duplicate posts and pages on your blog!
|
39 |
|
40 |
== Changelog ==
|
41 |
|
42 |
+
= 4.4.5 =
|
43 |
+
* 2020/07/06
|
44 |
+
* Fix - automatically deactivate free version if pro version is activated - Thank you Jordi.
|
45 |
+
* Fix - Missing link to privacy data.
|
46 |
+
* Fix - Not correctly identifying original post when comparing with post meta values - Thank you Reinhard.
|
47 |
+
* New - more details how long a process took is now stored in the log.
|
48 |
+
* 242,749 downloads
|
49 |
+
|
50 |
= 4.4.4 =
|
51 |
* 2020/06/08
|
52 |
* Code cleanup and security hardening.
|
230 |
* First release
|
231 |
|
232 |
== Upgrade Notice ==
|
233 |
+
4.4.5 Contains several different fixes and improvements, please update now.
|
sidebar.php
CHANGED
@@ -28,9 +28,15 @@ if ( $ddp_deleted_duplicates ) {
|
|
28 |
|
29 |
?>
|
30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
<div class="sidebarrow">
|
32 |
<h3>Need help?</h3>
|
33 |
-
<p><a href="https://wordpress.org/support/plugin/delete-duplicate-posts/" target="_blank"><?php
|
34 |
esc_html_e( 'Support Forum on WordPress.org', 'delete-duplicate-posts' );
|
35 |
?></a></p>
|
36 |
</div>
|
@@ -56,11 +62,7 @@ if ( !$ddp_fs->is_registered() && !$ddp_fs->is_pending_activation() ) {
|
|
56 |
}
|
57 |
|
58 |
?>
|
59 |
-
|
60 |
-
<p class="warning"><?php
|
61 |
-
esc_html_e( 'We recommend you always make a backup before running this tool. Changes are permanent!', 'delete-duplicate-posts' );
|
62 |
-
?></p>
|
63 |
-
</div>
|
64 |
|
65 |
<?php
|
66 |
$display_promotion = true;
|
@@ -68,6 +70,7 @@ $display_promotion = true;
|
|
68 |
if ( $display_promotion ) {
|
69 |
?>
|
70 |
<div class="sidebarrow">
|
|
|
71 |
<h3><span class="dashicons dashicons-star-filled"></span> DDP Pro <span class="dashicons dashicons-star-filled"></span></h3>
|
72 |
<ul class="linklist">
|
73 |
<li><strong>New compare method</strong> - Compare by meta tag <span>Use with WooCommerce (compare SKU) or other plugins</span></li>
|
@@ -83,18 +86,15 @@ if ( $display_promotion ) {
|
|
83 |
|
84 |
<a href="<?php
|
85 |
echo esc_url( $ddp_fs->pricing_url() ) ;
|
86 |
-
?>" class="button button-primary"><?php
|
87 |
echo 'Click here' ;
|
88 |
-
|
89 |
<p><center><em>$14.99/year - discount for more sites</em></center></p>
|
90 |
-
<
|
91 |
-
<
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
<li>We accept Visa, Mastercard, American Express and PayPal.</li>
|
96 |
-
<li>Upgrade, downgrade or cancel any time.</li>
|
97 |
-
</ul>
|
98 |
</div><!-- .sidebarrow -->
|
99 |
<?php
|
100 |
}
|
@@ -105,16 +105,16 @@ if ( $display_promotion ) {
|
|
105 |
<h3><?php
|
106 |
esc_html_e( 'Our other plugins', 'delete-duplicate-posts' );
|
107 |
?></h3>
|
108 |
-
<a href="https://wpsecurityninja.com" target="_blank" style="float: right;"><img src="<?php
|
109 |
echo esc_url( plugin_dir_url( __FILE__ ) . 'images/security-ninja-logo.png' ) ;
|
110 |
?>" alt="Visit wpsecurityninja.com" class="logo"></a>
|
111 |
-
<p>Protect your website with <a href="https://wordpress.org/plugins/security-ninja/" target="_blank">wordpress.org/plugins/security-ninja/</a><br/>
|
112 |
<p>Read more on <a href="https://wpsecurityninja.com/">wpsecurityninja.com</a></p>
|
113 |
<br />
|
114 |
-
<a href="https://cleverplugins.com" target="_blank" style="float: right;"><img src="<?php
|
115 |
echo esc_url( plugin_dir_url( __FILE__ ) . 'images/seoboosterlogo.png' ) ;
|
116 |
?>" alt="Visit cleverplugins.com" class="logo"></a>
|
117 |
-
<p>SEO Booster is a powerful tool for anyone serious about SEO. <a href="https://wordpress.org/plugins/seo-booster/" target="_blank">wordpress.org/plugins/seo-booster/</a><br/>
|
118 |
<p>Read more on <a href="https://cleverplugins.com/">cleverplugins.com</a></p>
|
119 |
|
120 |
</div><!-- .sidebarrow -->
|
28 |
|
29 |
?>
|
30 |
|
31 |
+
<div class="sidebarrow">
|
32 |
+
<p class="warning"><?php
|
33 |
+
esc_html_e( 'We recommend you always make a backup before running this tool. Changes are permanent!', 'delete-duplicate-posts' );
|
34 |
+
?></p>
|
35 |
+
</div>
|
36 |
+
|
37 |
<div class="sidebarrow">
|
38 |
<h3>Need help?</h3>
|
39 |
+
<p><a href="https://wordpress.org/support/plugin/delete-duplicate-posts/" target="_blank" rel="noopener"><?php
|
40 |
esc_html_e( 'Support Forum on WordPress.org', 'delete-duplicate-posts' );
|
41 |
?></a></p>
|
42 |
</div>
|
62 |
}
|
63 |
|
64 |
?>
|
65 |
+
|
|
|
|
|
|
|
|
|
66 |
|
67 |
<?php
|
68 |
$display_promotion = true;
|
70 |
if ( $display_promotion ) {
|
71 |
?>
|
72 |
<div class="sidebarrow">
|
73 |
+
<hr>
|
74 |
<h3><span class="dashicons dashicons-star-filled"></span> DDP Pro <span class="dashicons dashicons-star-filled"></span></h3>
|
75 |
<ul class="linklist">
|
76 |
<li><strong>New compare method</strong> - Compare by meta tag <span>Use with WooCommerce (compare SKU) or other plugins</span></li>
|
86 |
|
87 |
<a href="<?php
|
88 |
echo esc_url( $ddp_fs->pricing_url() ) ;
|
89 |
+
?>" class="button button-primary" id="ddpprobutton"><?php
|
90 |
echo 'Click here' ;
|
91 |
+
?><span>$14.99 /year</span></a>
|
92 |
<p><center><em>$14.99/year - discount for more sites</em></center></p>
|
93 |
+
<div class="moneybackguarantee">
|
94 |
+
<p><strong>Money Back Guarantee!</strong></p>
|
95 |
+
<p>You are fully protected by our 100% Money Back Guarantee. If during the next 30 days you experience an issue that makes the plugin unusable and we are unable to resolve it, we'll happily consider offering a full refund of your money.</p>
|
96 |
+
</div>
|
97 |
+
<hr>
|
|
|
|
|
|
|
98 |
</div><!-- .sidebarrow -->
|
99 |
<?php
|
100 |
}
|
105 |
<h3><?php
|
106 |
esc_html_e( 'Our other plugins', 'delete-duplicate-posts' );
|
107 |
?></h3>
|
108 |
+
<a href="https://wpsecurityninja.com" target="_blank" style="float: right;" rel="noopener"><img src="<?php
|
109 |
echo esc_url( plugin_dir_url( __FILE__ ) . 'images/security-ninja-logo.png' ) ;
|
110 |
?>" alt="Visit wpsecurityninja.com" class="logo"></a>
|
111 |
+
<p>Protect your website with <a href="https://wordpress.org/plugins/security-ninja/" target="_blank" rel="noopener">wordpress.org/plugins/security-ninja/</a><br/>
|
112 |
<p>Read more on <a href="https://wpsecurityninja.com/">wpsecurityninja.com</a></p>
|
113 |
<br />
|
114 |
+
<a href="https://cleverplugins.com" target="_blank" style="float: right;" rel="noopener"><img src="<?php
|
115 |
echo esc_url( plugin_dir_url( __FILE__ ) . 'images/seoboosterlogo.png' ) ;
|
116 |
?>" alt="Visit cleverplugins.com" class="logo"></a>
|
117 |
+
<p>SEO Booster is a powerful tool for anyone serious about SEO. <a href="https://wordpress.org/plugins/seo-booster/" target="_blank" rel="noopener">wordpress.org/plugins/seo-booster/</a><br/>
|
118 |
<p>Read more on <a href="https://cleverplugins.com/">cleverplugins.com</a></p>
|
119 |
|
120 |
</div><!-- .sidebarrow -->
|