Version Description
Added the ability to disable different sections of the Plugin.
Download this release
Release Info
Developer | sudar |
Plugin | Bulk Delete |
Version | 3.4 |
Comparing to | |
See all releases |
Code changes from version 3.3 to 3.4
- bulk-delete.php +308 -232
- js/bulk-delete.js +78 -72
- languages/bulk-delete.pot +168 -140
- readme.txt +26 -21
bulk-delete.php
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
<?php
|
2 |
-
|
3 |
Plugin Name: Bulk Delete
|
4 |
Plugin Script: bulk-delete.php
|
5 |
Plugin URI: http://sudarmuthu.com/wordpress/bulk-delete
|
6 |
Description: Bulk delete posts from selected categories, tags, custom taxonomies or by post type like drafts, scheduled posts, revisions etc.
|
7 |
Donate Link: http://sudarmuthu.com/if-you-wanna-thank-me
|
8 |
-
Version: 3.
|
9 |
License: GPL
|
10 |
Author: Sudar
|
11 |
Author URI: http://sudarmuthu.com/
|
@@ -67,6 +67,9 @@ Domain Path: languages/
|
|
67 |
- Added the ability to schedule auto delete of taxonomies by date
|
68 |
- Cleaned up all messages that are shown to the user
|
69 |
- Added on screen help tab
|
|
|
|
|
|
|
70 |
*/
|
71 |
|
72 |
/* Copyright 2009 Sudar Muthu (email : sudar@sudarmuthu.com)
|
@@ -90,7 +93,7 @@ Domain Path: languages/
|
|
90 |
*/
|
91 |
class Bulk_Delete {
|
92 |
|
93 |
-
const VERSION = '3.
|
94 |
const JS_HANDLE = 'bulk-delete';
|
95 |
const JS_VARIABLE = 'BULK_DELETE';
|
96 |
|
@@ -101,6 +104,16 @@ class Bulk_Delete {
|
|
101 |
const CRON_HOOK_TAGS = 'do-bulk-delete-tags';
|
102 |
const CRON_HOOK_TAXONOMY = 'do-bulk-delete-taxonomy';
|
103 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
104 |
/**
|
105 |
* Default constructor
|
106 |
*/
|
@@ -114,7 +127,7 @@ class Bulk_Delete {
|
|
114 |
add_action('admin_init', array(&$this, 'request_handler'));
|
115 |
|
116 |
// Add more links in the plugin listing page
|
117 |
-
add_filter('plugin_action_links', array(&$this, 'filter_plugin_actions'), 10, 2 );
|
118 |
add_filter( 'plugin_row_meta', array( &$this, 'add_plugin_links' ), 10, 2 );
|
119 |
}
|
120 |
|
@@ -128,16 +141,31 @@ class Bulk_Delete {
|
|
128 |
|
129 |
add_action( "load-{$this->admin_page}", array(&$this,'create_settings_panel' ) );
|
130 |
add_action('admin_print_scripts-' . $this->admin_page, array(&$this, 'add_script'));
|
|
|
|
|
131 |
}
|
132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
/**
|
134 |
* Add settings Panel
|
135 |
*/
|
136 |
function create_settings_panel() {
|
137 |
|
138 |
/**
|
139 |
-
* Create the WP_Screen object
|
140 |
-
* This ensures we're working with the right admin page
|
141 |
*/
|
142 |
$this->admin_screen = WP_Screen::get($this->admin_page);
|
143 |
|
@@ -161,6 +189,13 @@ class Bulk_Delete {
|
|
161 |
'<p><a href = "http://sudarmuthu.com/blog">' . __("Plugin author's blog", 'bulk-delete') . '</a></p>' .
|
162 |
'<p><a href = "http://sudarmuthu.com/wordpress/">' . __("Other Plugin's by Author", 'bulk-delete') . '</a></p>'
|
163 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
}
|
165 |
|
166 |
/**
|
@@ -181,10 +216,15 @@ class Bulk_Delete {
|
|
181 |
|
182 |
// JavaScript messages
|
183 |
$msg = array(
|
184 |
-
'deletewarning' => __('Are you sure you want to delete all the selected posts', 'bulk-delete')
|
185 |
-
|
|
|
|
|
|
|
|
|
186 |
);
|
187 |
-
|
|
|
188 |
wp_localize_script( self::JS_HANDLE, self::JS_VARIABLE, $translation_array );
|
189 |
}
|
190 |
|
@@ -222,31 +262,74 @@ class Bulk_Delete {
|
|
222 |
* Show the Admin page
|
223 |
*/
|
224 |
function display_setting_page() {
|
225 |
-
global $wpdb;
|
226 |
?>
|
227 |
-
|
|
|
|
|
228 |
|
229 |
-
<
|
230 |
-
|
231 |
-
|
|
|
232 |
|
233 |
-
|
|
|
|
|
|
|
|
|
|
|
234 |
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
241 |
|
242 |
-
<form name="smbd_form" id = "smbd_misc_form" action="<?php echo get_bloginfo("wpurl"); ?>/wp-admin/options-general.php?page=bulk-delete.php" method="post" onsubmit="return bd_validateForm(this);">
|
243 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
$posts_count = wp_count_posts();
|
245 |
$drafts = $posts_count->draft;
|
246 |
$future = $posts_count->future;
|
247 |
$pending = $posts_count->pending;
|
248 |
$private = $posts_count->private;
|
249 |
?>
|
|
|
|
|
250 |
<fieldset class="options">
|
251 |
<table class="optiontable">
|
252 |
<tr>
|
@@ -285,7 +368,7 @@ class Bulk_Delete {
|
|
285 |
|
286 |
<tr>
|
287 |
<td scope="row">
|
288 |
-
<input name="smbd_post_status_restrict" id="smbd_post_status_restrict" value = "true" type = "checkbox"
|
289 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
290 |
<select name="smbd_post_status_op" id="smbd_post_status_op" disabled>
|
291 |
<option value ="<"><?php _e("older than", 'bulk-delete');?></option>
|
@@ -304,7 +387,7 @@ class Bulk_Delete {
|
|
304 |
|
305 |
<tr>
|
306 |
<td scope="row">
|
307 |
-
<input name="smbd_post_status_limit" id="smbd_post_status_limit" value = "true" type = "checkbox"
|
308 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
309 |
<input type ="textbox" name="smbd_post_status_limit_to" id="smbd_post_status_limit_to" disabled value ="0" maxlength="4" size="4" /><?php _e("posts.", 'bulk-delete');?>
|
310 |
<?php _e("Use this option if there are more than 1000 posts and the script timesout.", 'bulk-delete') ?>
|
@@ -333,32 +416,28 @@ class Bulk_Delete {
|
|
333 |
</table>
|
334 |
</fieldset>
|
335 |
|
336 |
-
<p
|
337 |
-
<
|
338 |
</p>
|
|
|
|
|
339 |
|
340 |
-
|
|
|
|
|
|
|
341 |
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
<!-- Post status end-->
|
347 |
|
348 |
-
|
349 |
-
|
350 |
-
<div class = "handlediv">
|
351 |
-
<br>
|
352 |
-
</div>
|
353 |
-
<h3 class = "hndle"><span><?php _e("By Category", 'bulk-delete'); ?></span></h3>
|
354 |
-
<div class = "inside">
|
355 |
<h4><?php _e("Select the categories whose post you want to delete", 'bulk-delete'); ?></h4>
|
356 |
|
357 |
-
<form name="smbd_form" id = "smbd_cat_form"
|
358 |
-
action="<?php echo get_bloginfo("wpurl"); ?>/wp-admin/options-general.php?page=bulk-delete.php" method="post" onsubmit="return bd_validateForm(this);">
|
359 |
-
|
360 |
<fieldset class="options">
|
361 |
-
|
362 |
<?php
|
363 |
$categories = get_categories(array('hide_empty' => false));
|
364 |
foreach ($categories as $category) {
|
@@ -376,7 +455,7 @@ class Bulk_Delete {
|
|
376 |
?>
|
377 |
<tr>
|
378 |
<td scope="row" >
|
379 |
-
<input name="smbd_cats_all" id ="smbd_cats_all" value = "-1" type = "checkbox"
|
380 |
</td>
|
381 |
<td>
|
382 |
<label for="smbd_cats_all"><?php _e("All Categories", 'bulk-delete') ?></label>
|
@@ -391,7 +470,7 @@ class Bulk_Delete {
|
|
391 |
|
392 |
<tr>
|
393 |
<td scope="row">
|
394 |
-
<input name="smbd_cats_restrict" id="smbd_cats_restrict" value = "true" type = "checkbox"
|
395 |
</td>
|
396 |
<td>
|
397 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
@@ -419,7 +498,7 @@ class Bulk_Delete {
|
|
419 |
|
420 |
<tr>
|
421 |
<td scope="row">
|
422 |
-
<input name="smbd_cats_limit" id="smbd_cats_limit" value = "true" type = "checkbox"
|
423 |
</td>
|
424 |
<td>
|
425 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
@@ -456,37 +535,27 @@ class Bulk_Delete {
|
|
456 |
|
457 |
</table>
|
458 |
</fieldset>
|
459 |
-
|
460 |
-
|
|
|
461 |
</p>
|
|
|
|
|
|
|
462 |
|
463 |
-
|
464 |
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
<!-- Category end-->
|
470 |
|
471 |
-
<!-- Tags start-->
|
472 |
-
<?php
|
473 |
$tags = get_tags();
|
474 |
if (count($tags) > 0) {
|
475 |
?>
|
476 |
-
<div class = "postbox">
|
477 |
-
<div class = "handlediv">
|
478 |
-
<br>
|
479 |
-
</div>
|
480 |
-
|
481 |
-
<h3 class = "hndle"><span><?php _e("By Tags", 'bulk-delete'); ?></span></h3>
|
482 |
-
|
483 |
-
<div class = "inside">
|
484 |
<h4><?php _e("Select the tags whose post you want to delete", 'bulk-delete') ?></h4>
|
485 |
|
486 |
-
|
487 |
-
action="<?php echo get_bloginfo("wpurl"); ?>/wp-admin/options-general.php?page=bulk-delete.php" method="post"
|
488 |
-
onsubmit="return bd_validateForm(this);">
|
489 |
-
|
490 |
<fieldset class="options">
|
491 |
<table class="optiontable">
|
492 |
<?php
|
@@ -505,7 +574,7 @@ class Bulk_Delete {
|
|
505 |
?>
|
506 |
<tr>
|
507 |
<td scope="row" >
|
508 |
-
<input name="smbd_tags_all" id ="smbd_tags_all" value = "-1" type = "checkbox"
|
509 |
</td>
|
510 |
<td>
|
511 |
<label for="smbd_tags_all"><?php _e("All Tags", 'bulk-delete') ?></label>
|
@@ -520,7 +589,7 @@ class Bulk_Delete {
|
|
520 |
|
521 |
<tr>
|
522 |
<td scope="row">
|
523 |
-
<input name="smbd_tags_restrict" id ="smbd_tags_restrict" value = "true" type = "checkbox"
|
524 |
</td>
|
525 |
<td>
|
526 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
@@ -548,11 +617,11 @@ class Bulk_Delete {
|
|
548 |
|
549 |
<tr>
|
550 |
<td scope="row">
|
551 |
-
<input name="smbd_tags_limit" id="smbd_tags_limit" value = "true" type = "checkbox"
|
552 |
</td>
|
553 |
<td>
|
554 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
555 |
-
<input type ="textbox" name="
|
556 |
<?php _e("Use this option if there are more than 1000 posts and the script timesout.", 'bulk-delete') ?>
|
557 |
</td>
|
558 |
</tr>
|
@@ -580,69 +649,72 @@ class Bulk_Delete {
|
|
580 |
</table>
|
581 |
</fieldset>
|
582 |
<p class="submit">
|
583 |
-
|
584 |
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
585 |
|
586 |
-
|
|
|
|
|
|
|
587 |
|
588 |
-
|
589 |
-
</
|
590 |
-
|
591 |
-
</div>
|
592 |
-
<?php
|
593 |
}
|
594 |
-
?>
|
595 |
-
<!-- Tags end-->
|
596 |
|
597 |
-
|
598 |
-
|
599 |
$taxs = get_taxonomies(array(
|
600 |
'public' => true,
|
601 |
'_builtin' => false
|
602 |
), 'objects'
|
603 |
);
|
|
|
604 |
if (count($taxs) > 0) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
605 |
?>
|
606 |
-
|
607 |
-
<div class = "handlediv">
|
608 |
-
<br>
|
609 |
-
</div>
|
610 |
-
<h3 class = "hndle"><span><?php _e("By Taxonomies", 'bulk-delete'); ?></span></h3>
|
611 |
-
<div class = "inside">
|
612 |
<h4><?php _e("Select the taxonomies whose post you want to delete", 'bulk-delete') ?></h4>
|
613 |
|
614 |
-
<form name="smbd_form" id = "smbd_tax_form"
|
615 |
-
action="<?php echo get_bloginfo("wpurl"); ?>/wp-admin/options-general.php?page=bulk-delete.php" method="post"
|
616 |
-
onsubmit="return bd_validateForm(this);">
|
617 |
-
|
618 |
<fieldset class="options">
|
619 |
<table class="optiontable">
|
620 |
<?php
|
621 |
-
$terms_array
|
622 |
-
foreach ($taxs as $tax) {
|
623 |
-
$terms = get_terms($tax->name);
|
624 |
-
if (count($terms) > 0) {
|
625 |
-
$terms_array[$tax->name] = $terms;
|
626 |
?>
|
627 |
<tr>
|
628 |
<td scope="row" >
|
629 |
-
<input name="smbd_taxs" value = "<?php echo $tax
|
630 |
</td>
|
631 |
<td>
|
632 |
-
<label for="smbd_taxs"><?php echo $tax
|
633 |
</td>
|
634 |
</tr>
|
635 |
<?php
|
636 |
-
}
|
637 |
}
|
638 |
?>
|
639 |
</table>
|
|
|
640 |
<h4><?php _e("The selected taxonomy has the following terms. Select the terms whose post you want to delete", 'bulk-delete') ?></h4>
|
641 |
<?php
|
642 |
-
foreach ($
|
643 |
-
$terms = $terms_array[$tax->name];
|
644 |
?>
|
645 |
-
<table class="optiontable terms_<?php echo $tax
|
646 |
<?php
|
647 |
foreach ($terms as $term) {
|
648 |
?>
|
@@ -671,7 +743,7 @@ class Bulk_Delete {
|
|
671 |
|
672 |
<tr>
|
673 |
<td scope="row">
|
674 |
-
<input name="smbd_taxs_restrict" id ="smbd_taxs_restrict" value = "true" type = "checkbox"
|
675 |
</td>
|
676 |
<td>
|
677 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
@@ -699,7 +771,7 @@ class Bulk_Delete {
|
|
699 |
|
700 |
<tr>
|
701 |
<td scope="row">
|
702 |
-
<input name="smbd_taxs_limit" id="smbd_taxs_limit" value = "true" type = "checkbox"
|
703 |
</td>
|
704 |
<td>
|
705 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
@@ -731,31 +803,27 @@ class Bulk_Delete {
|
|
731 |
</table>
|
732 |
</fieldset>
|
733 |
<p class="submit">
|
734 |
-
|
735 |
</p>
|
736 |
-
|
737 |
-
<?php wp_nonce_field('bulk-delete-posts'); ?>
|
738 |
-
|
739 |
-
<input type="hidden" name="smbd_action" value="bulk-delete-taxs" />
|
740 |
-
</form>
|
741 |
-
</div>
|
742 |
-
</div>
|
743 |
<?php
|
744 |
-
}
|
745 |
?>
|
746 |
-
|
|
|
|
|
|
|
747 |
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
<div class = "inside">
|
753 |
-
<h4><?php _e("Select the pages which you want to delete", 'bulk-delete'); ?></h4>
|
754 |
|
755 |
-
|
756 |
-
|
|
|
|
|
757 |
|
758 |
-
<?php
|
759 |
$pages_count = wp_count_posts( 'page' );
|
760 |
$pages = $pages_count->publish;
|
761 |
$page_drafts = $pages_count->draft;
|
@@ -763,6 +831,9 @@ class Bulk_Delete {
|
|
763 |
$page_pending = $pages_count->pending;
|
764 |
$page_private = $pages_count->private;
|
765 |
?>
|
|
|
|
|
|
|
766 |
<fieldset class="options">
|
767 |
<table class="optiontable">
|
768 |
<tr>
|
@@ -808,28 +879,28 @@ class Bulk_Delete {
|
|
808 |
|
809 |
<tr>
|
810 |
<td scope="row">
|
811 |
-
<input name="
|
812 |
<?php _e("Only restrict to pages which are ", 'bulk-delete');?>
|
813 |
-
<select name="
|
814 |
<option value ="<"><?php _e("older than", 'bulk-delete');?></option>
|
815 |
<option value =">"><?php _e("posted within last", 'bulk-delete');?></option>
|
816 |
</select>
|
817 |
-
<input type ="textbox" name="
|
818 |
</td>
|
819 |
</tr>
|
820 |
|
821 |
<tr>
|
822 |
<td scope="row">
|
823 |
-
<input name="
|
824 |
-
<input name="
|
825 |
</td>
|
826 |
</tr>
|
827 |
|
828 |
<tr>
|
829 |
<td scope="row">
|
830 |
-
<input name="
|
831 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
832 |
-
<input type ="textbox" name="
|
833 |
<?php _e("Use this option if there are more than 1000 posts and the script timesout.", 'bulk-delete') ?>
|
834 |
</td>
|
835 |
</tr>
|
@@ -856,27 +927,27 @@ class Bulk_Delete {
|
|
856 |
</table>
|
857 |
</fieldset>
|
858 |
|
859 |
-
<p
|
860 |
-
<
|
861 |
</p>
|
|
|
|
|
|
|
862 |
|
863 |
-
|
|
|
|
|
|
|
864 |
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
<!-- Pages end-->
|
870 |
|
871 |
-
|
872 |
-
|
873 |
-
<div class = "handlediv"> <br> </div>
|
874 |
-
<h3 class = "hndle"><span><?php _e("By Urls", 'bulk-delete'); ?></span></h3>
|
875 |
-
<div class = "inside">
|
876 |
<h4><?php _e("Delete these specific pages", 'bulk-delete'); ?></h4>
|
877 |
|
878 |
-
<form name="smbd_form" id = "smbd_specific_form" action="<?php echo get_bloginfo("wpurl"); ?>/wp-admin/options-general.php?page=bulk-delete.php" method="post" >
|
879 |
-
|
880 |
<fieldset class="options">
|
881 |
<table class="optiontable">
|
882 |
<tr>
|
@@ -903,30 +974,30 @@ class Bulk_Delete {
|
|
903 |
</table>
|
904 |
</fieldset>
|
905 |
|
906 |
-
<p
|
907 |
-
<
|
908 |
</p>
|
|
|
|
|
|
|
909 |
|
910 |
-
|
|
|
|
|
|
|
911 |
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
<!-- URLs start-->
|
917 |
|
918 |
-
|
919 |
-
<div class = "postbox" >
|
920 |
-
<div class = "handlediv"> <br> </div>
|
921 |
-
<h3 class = "hndle"><span><?php _e("By Post Revisions", 'bulk-delete'); ?></span></h3>
|
922 |
-
<div class = "inside">
|
923 |
-
<h4><?php _e("Select the posts which you want to delete", 'bulk-delete'); ?></h4>
|
924 |
|
925 |
-
<form name="smbd_form" id = "smbd_misc_form" action="<?php echo get_bloginfo("wpurl"); ?>/wp-admin/options-general.php?page=bulk-delete.php" method="post" onsubmit="return bd_validateForm(this);">
|
926 |
-
<?php
|
927 |
-
$wp_query = new WP_Query;
|
928 |
$revisions = $wpdb->get_var("select count(*) from $wpdb->posts where post_type = 'revision'");
|
929 |
?>
|
|
|
|
|
|
|
930 |
<fieldset class="options">
|
931 |
<table class="optiontable">
|
932 |
<tr>
|
@@ -939,63 +1010,47 @@ class Bulk_Delete {
|
|
939 |
</table>
|
940 |
</fieldset>
|
941 |
|
942 |
-
<p
|
943 |
-
<
|
944 |
</p>
|
945 |
-
|
946 |
-
<?php wp_nonce_field('bulk-delete-posts'); ?>
|
947 |
-
|
948 |
-
<input type="hidden" name="smbd_action" value="bulk-delete-revisions" />
|
949 |
-
</form>
|
950 |
-
</div>
|
951 |
-
</div>
|
952 |
-
<!-- Post Revisions end-->
|
953 |
-
|
954 |
-
|
955 |
-
<!-- Debug box start-->
|
956 |
-
<div class = "postbox">
|
957 |
-
<div class = "handlediv">
|
958 |
-
<br>
|
959 |
-
</div>
|
960 |
-
<h3 class = "hndle"><span><?php _e('Debug Information', 'bulk-delete'); ?></span></h3>
|
961 |
-
<div class = "inside">
|
962 |
-
<p><?php _e('If you are seeing a blank page after clicking the Bulk Delete button, then ', 'bulk-delete'); ?><a href = "http://sudarmuthu.com/wordpress/bulk-delete#faq-white-screen"><?php _e('check out this FAQ', 'bulk-delete');?></a>.
|
963 |
-
<?php _e('You also need need the following debug information.', 'bulk-delete'); ?></p>
|
964 |
-
<table cellspacing="10">
|
965 |
-
<tr>
|
966 |
-
<th align = "right"><?php _e('Available memory size ', 'bulk-delete');?></th>
|
967 |
-
<td><?php echo ini_get( 'memory_limit' ); ?></td>
|
968 |
-
</tr>
|
969 |
-
<tr>
|
970 |
-
<th align = "right"><?php _e('Script time out ', 'bulk-delete');?></th>
|
971 |
-
<td><?php echo ini_get( 'max_execution_time' ); ?></td>
|
972 |
-
</tr>
|
973 |
-
<tr>
|
974 |
-
<th align = "right"><?php _e('Script input time ', 'bulk-delete'); ?></th>
|
975 |
-
<td><?php echo ini_get( 'max_input_time' ); ?></td>
|
976 |
-
</tr>
|
977 |
-
</table>
|
978 |
-
</div>
|
979 |
-
</div>
|
980 |
-
<!-- Debug box end-->
|
981 |
-
|
982 |
-
</div>
|
983 |
-
|
984 |
-
<iframe frameBorder="0" height = "950" src = "http://sudarmuthu.com/projects/wordpress/bulk-delete/sidebar.php?color=<?php echo get_user_option('admin_color'); ?>&version=<?php echo self::VERSION; ?>"></iframe>
|
985 |
-
|
986 |
-
</div>
|
987 |
<?php
|
988 |
-
|
989 |
-
// Display credits in Footer
|
990 |
-
add_action( 'in_admin_footer', array(&$this, 'admin_footer' ));
|
991 |
}
|
992 |
|
993 |
/**
|
994 |
-
*
|
995 |
*/
|
996 |
-
function
|
997 |
-
|
998 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
999 |
}
|
1000 |
|
1001 |
/**
|
@@ -1013,7 +1068,6 @@ class Bulk_Delete {
|
|
1013 |
//Prepare Table of elements
|
1014 |
$cron_list_table = new Cron_List_Table();
|
1015 |
$cron_list_table->prepare_items($this->get_cron_schedules());
|
1016 |
-
|
1017 |
?>
|
1018 |
<div class="wrap">
|
1019 |
<?php screen_icon(); ?>
|
@@ -1024,14 +1078,14 @@ class Bulk_Delete {
|
|
1024 |
?>
|
1025 |
</div>
|
1026 |
<?php
|
|
|
|
|
1027 |
}
|
1028 |
|
1029 |
/**
|
1030 |
-
* Request Handler
|
1031 |
*/
|
1032 |
function request_handler() {
|
1033 |
-
global $wpdb;
|
1034 |
-
|
1035 |
if (isset($_GET['smbd_action'])) {
|
1036 |
|
1037 |
switch($_GET['smbd_action']) {
|
@@ -1050,10 +1104,7 @@ class Bulk_Delete {
|
|
1050 |
}
|
1051 |
}
|
1052 |
|
1053 |
-
if (isset($_POST['smbd_action'])) {
|
1054 |
-
|
1055 |
-
$wp_query = new WP_Query;
|
1056 |
-
check_admin_referer( 'bulk-delete-posts');
|
1057 |
|
1058 |
switch($_POST['smbd_action']) {
|
1059 |
|
@@ -1064,7 +1115,7 @@ class Bulk_Delete {
|
|
1064 |
$delete_options['selected_cats'] = array_get($_POST, 'smbd_cats');
|
1065 |
$delete_options['restrict'] = array_get($_POST, 'smbd_cats_restrict', FALSE);
|
1066 |
$delete_options['private'] = array_get($_POST, 'smbd_cats_private');
|
1067 |
-
$delete_options['limit_to'] = absint(array_get($_POST, '
|
1068 |
$delete_options['force_delete'] = array_get($_POST, 'smbd_cats_force_delete', 'false');
|
1069 |
|
1070 |
$delete_options['cats_op'] = array_get($_POST, 'smbd_cats_op');
|
@@ -1096,7 +1147,7 @@ class Bulk_Delete {
|
|
1096 |
$delete_options['selected_tags'] = array_get($_POST, 'smbd_tags');
|
1097 |
$delete_options['restrict'] = array_get($_POST, 'smbd_tags_restrict', FALSE);
|
1098 |
$delete_options['private'] = array_get($_POST, 'smbd_tags_private');
|
1099 |
-
$delete_options['limit_to'] = absint(array_get($_POST, '
|
1100 |
$delete_options['force_delete'] = array_get($_POST, 'smbd_tags_force_delete', 'false');
|
1101 |
|
1102 |
$delete_options['tags_op'] = array_get($_POST, 'smbd_tags_op');
|
@@ -1156,7 +1207,7 @@ class Bulk_Delete {
|
|
1156 |
|
1157 |
$delete_options = array();
|
1158 |
$delete_options['restrict'] = array_get($_POST, 'smbd_post_status_restrict', FALSE);
|
1159 |
-
$delete_options['limit_to'] = absint(array_get($_POST, '
|
1160 |
$delete_options['force_delete'] = array_get($_POST, 'smbd_post_status_force_delete', 'false');
|
1161 |
|
1162 |
$delete_options['post_status_op'] = array_get($_POST, 'smbd_post_status_op');
|
@@ -1189,12 +1240,12 @@ class Bulk_Delete {
|
|
1189 |
// Delete pages
|
1190 |
|
1191 |
$delete_options = array();
|
1192 |
-
$delete_options['restrict'] = array_get($_POST, '
|
1193 |
-
$delete_options['limit_to'] = absint(array_get($_POST, '
|
1194 |
-
$delete_options['force_delete'] = array_get($_POST, '
|
1195 |
|
1196 |
-
$delete_options['page_op'] = array_get($_POST, '
|
1197 |
-
$delete_options['page_days'] = array_get($_POST, '
|
1198 |
|
1199 |
$delete_options['publish'] = array_get($_POST, 'smbd_published_pages');
|
1200 |
$delete_options['drafts'] = array_get($_POST, 'smbd_draft_pages');
|
@@ -1269,7 +1320,29 @@ class Bulk_Delete {
|
|
1269 |
|
1270 |
// cleanup
|
1271 |
$this->msg = '';
|
1272 |
-
remove_action('admin_notices', array(&$this, 'deleted_notice'));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1273 |
}
|
1274 |
|
1275 |
/**
|
@@ -1531,6 +1604,7 @@ class Bulk_Delete {
|
|
1531 |
if ("published_pages" == $delete_options['publish']) {
|
1532 |
$post_status[] = 'publish';
|
1533 |
}
|
|
|
1534 |
// Drafts
|
1535 |
if ("draft_pages" == $delete_options['drafts']) {
|
1536 |
$post_status[] = 'draft';
|
@@ -1568,6 +1642,8 @@ class Bulk_Delete {
|
|
1568 |
foreach ($pages as $page) {
|
1569 |
wp_delete_post($page->ID, $force_delete);
|
1570 |
}
|
|
|
|
|
1571 |
}
|
1572 |
|
1573 |
/**
|
1 |
<?php
|
2 |
+
/**
|
3 |
Plugin Name: Bulk Delete
|
4 |
Plugin Script: bulk-delete.php
|
5 |
Plugin URI: http://sudarmuthu.com/wordpress/bulk-delete
|
6 |
Description: Bulk delete posts from selected categories, tags, custom taxonomies or by post type like drafts, scheduled posts, revisions etc.
|
7 |
Donate Link: http://sudarmuthu.com/if-you-wanna-thank-me
|
8 |
+
Version: 3.4
|
9 |
License: GPL
|
10 |
Author: Sudar
|
11 |
Author URI: http://sudarmuthu.com/
|
67 |
- Added the ability to schedule auto delete of taxonomies by date
|
68 |
- Cleaned up all messages that are shown to the user
|
69 |
- Added on screen help tab
|
70 |
+
2013-05-22 - v3.4 - (Dev time: 20 hours)
|
71 |
+
- Incorporated Screen API to select/deselect different sections of the page
|
72 |
+
- Load only sections that are selected by the user
|
73 |
*/
|
74 |
|
75 |
/* Copyright 2009 Sudar Muthu (email : sudar@sudarmuthu.com)
|
93 |
*/
|
94 |
class Bulk_Delete {
|
95 |
|
96 |
+
const VERSION = '3.4';
|
97 |
const JS_HANDLE = 'bulk-delete';
|
98 |
const JS_VARIABLE = 'BULK_DELETE';
|
99 |
|
104 |
const CRON_HOOK_TAGS = 'do-bulk-delete-tags';
|
105 |
const CRON_HOOK_TAXONOMY = 'do-bulk-delete-taxonomy';
|
106 |
|
107 |
+
// meta boxes
|
108 |
+
const BOX_POST_STATUS = 'bd_by_post_status';
|
109 |
+
const BOX_CATEGORY = 'bd_by_category';
|
110 |
+
const BOX_TAG = 'bd_by_tag';
|
111 |
+
const BOX_TAX = 'bd_by_tax';
|
112 |
+
const BOX_PAGE = 'bd_by_page';
|
113 |
+
const BOX_URL = 'bd_by_url';
|
114 |
+
const BOX_POST_REVISION = 'bd_by_post_revision';
|
115 |
+
const BOX_DEBUG = 'bd_debug';
|
116 |
+
|
117 |
/**
|
118 |
* Default constructor
|
119 |
*/
|
127 |
add_action('admin_init', array(&$this, 'request_handler'));
|
128 |
|
129 |
// Add more links in the plugin listing page
|
130 |
+
add_filter( 'plugin_action_links', array( &$this, 'filter_plugin_actions' ), 10, 2 );
|
131 |
add_filter( 'plugin_row_meta', array( &$this, 'add_plugin_links' ), 10, 2 );
|
132 |
}
|
133 |
|
141 |
|
142 |
add_action( "load-{$this->admin_page}", array(&$this,'create_settings_panel' ) );
|
143 |
add_action('admin_print_scripts-' . $this->admin_page, array(&$this, 'add_script'));
|
144 |
+
|
145 |
+
add_action( "add_meta_boxes_{$this->admin_page}", array( &$this, 'add_meta_boxes' ));
|
146 |
}
|
147 |
|
148 |
+
/**
|
149 |
+
* Register meta boxes
|
150 |
+
*/
|
151 |
+
function add_meta_boxes() {
|
152 |
+
add_meta_box( self::BOX_POST_STATUS, __( 'By Post Status', 'bulk-delete' ), array( &$this, 'render_by_post_status_box' ), $this->admin_page, 'advanced' );
|
153 |
+
add_meta_box( self::BOX_CATEGORY, __( 'By Category', 'bulk-delete' ), array( &$this, 'render_by_category_box' ), $this->admin_page, 'advanced' );
|
154 |
+
add_meta_box( self::BOX_TAG, __( 'By Tag', 'bulk-delete' ), array( &$this, 'render_by_tag_box' ), $this->admin_page, 'advanced' );
|
155 |
+
add_meta_box( self::BOX_TAX, __( 'By Custom Taxonomy', 'bulk-delete' ), array( &$this, 'render_by_tax_box' ), $this->admin_page, 'advanced' );
|
156 |
+
add_meta_box( self::BOX_PAGE, __( 'By Page', 'bulk-delete' ), array( &$this, 'render_by_page_box' ), $this->admin_page, 'advanced' );
|
157 |
+
add_meta_box( self::BOX_URL, __( 'By URL', 'bulk-delete' ), array( &$this, 'render_by_url_box' ), $this->admin_page, 'advanced' );
|
158 |
+
add_meta_box( self::BOX_POST_REVISION, __( 'By Post Revision', 'bulk-delete' ), array( &$this, 'render_by_post_revision_box' ), $this->admin_page, 'advanced' );
|
159 |
+
add_meta_box( self::BOX_DEBUG, __( 'Debug Information', 'bulk-delete' ), array( &$this, 'render_debug_box' ), $this->admin_page, 'advanced', 'low' );
|
160 |
+
}
|
161 |
+
|
162 |
/**
|
163 |
* Add settings Panel
|
164 |
*/
|
165 |
function create_settings_panel() {
|
166 |
|
167 |
/**
|
168 |
+
* Create the WP_Screen object using page handle
|
|
|
169 |
*/
|
170 |
$this->admin_screen = WP_Screen::get($this->admin_page);
|
171 |
|
189 |
'<p><a href = "http://sudarmuthu.com/blog">' . __("Plugin author's blog", 'bulk-delete') . '</a></p>' .
|
190 |
'<p><a href = "http://sudarmuthu.com/wordpress/">' . __("Other Plugin's by Author", 'bulk-delete') . '</a></p>'
|
191 |
);
|
192 |
+
|
193 |
+
/* Trigger the add_meta_boxes hooks to allow meta boxes to be added */
|
194 |
+
do_action('add_meta_boxes_' . $this->admin_page, null);
|
195 |
+
do_action('add_meta_boxes', $this->admin_page, null);
|
196 |
+
|
197 |
+
/* Enqueue WordPress' script for handling the meta boxes */
|
198 |
+
wp_enqueue_script('postbox');
|
199 |
}
|
200 |
|
201 |
/**
|
216 |
|
217 |
// JavaScript messages
|
218 |
$msg = array(
|
219 |
+
'deletewarning' => __('Are you sure you want to delete all the selected posts', 'bulk-delete')
|
220 |
+
);
|
221 |
+
|
222 |
+
$error = array(
|
223 |
+
'selectone' => __('Please select posts from at least one option', 'bulk-delete'),
|
224 |
+
'enterurl' => __('Please enter at least one page url', 'bulk-delete')
|
225 |
);
|
226 |
+
|
227 |
+
$translation_array = array( 'msg' => $msg, 'error' => $error );
|
228 |
wp_localize_script( self::JS_HANDLE, self::JS_VARIABLE, $translation_array );
|
229 |
}
|
230 |
|
262 |
* Show the Admin page
|
263 |
*/
|
264 |
function display_setting_page() {
|
|
|
265 |
?>
|
266 |
+
<div class="wrap">
|
267 |
+
<?php screen_icon(); ?>
|
268 |
+
<h2><?php _e('Bulk Delete', 'bulk-delete');?></h2>
|
269 |
|
270 |
+
<form method = "post">
|
271 |
+
<?php
|
272 |
+
// nonce for bulk delete
|
273 |
+
wp_nonce_field( 'sm-bulk-delete-posts', 'sm-bulk-delete-posts-nonce' );
|
274 |
|
275 |
+
/* Used to save closed meta boxes and their order */
|
276 |
+
wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false );
|
277 |
+
wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
|
278 |
+
?>
|
279 |
+
<div id = "poststuff">
|
280 |
+
<div id="post-body" class="metabox-holder columns-2">
|
281 |
|
282 |
+
<div id="post-body-content">
|
283 |
+
<div style="background:#ff0;text-align:center;color: red;padding:1px">
|
284 |
+
<p><strong><?php _e("WARNING: Posts deleted once cannot be retrieved back. Use with caution.", 'bulk-delete'); ?></strong></p>
|
285 |
+
</div>
|
286 |
+
</div><!-- #post-body-content -->
|
287 |
+
|
288 |
+
<div id="postbox-container-1" class="postbox-container">
|
289 |
+
<iframe frameBorder="0" height = "1000" src = "http://sudarmuthu.com/projects/wordpress/bulk-delete/sidebar.php?color=<?php echo get_user_option('admin_color'); ?>&version=<?php echo self::VERSION; ?>"></iframe>
|
290 |
+
</div>
|
291 |
+
|
292 |
+
<div id="postbox-container-2" class="postbox-container">
|
293 |
+
<?php //do_meta_boxes( '', 'normal', null ); ?>
|
294 |
+
<?php do_meta_boxes( '', 'advanced', null ); ?>
|
295 |
+
</div> <!-- #postbox-container-2 -->
|
296 |
+
|
297 |
+
</div> <!-- #post-body -->
|
298 |
+
</div><!-- #poststuff -->
|
299 |
+
</form>
|
300 |
+
</div><!-- .wrap -->
|
301 |
|
|
|
302 |
<?php
|
303 |
+
// Display credits in Footer
|
304 |
+
add_action( 'in_admin_footer', array(&$this, 'admin_footer' ));
|
305 |
+
}
|
306 |
+
|
307 |
+
/**
|
308 |
+
* Adds Footer links.
|
309 |
+
*/
|
310 |
+
function admin_footer() {
|
311 |
+
$plugin_data = get_plugin_data( __FILE__ );
|
312 |
+
printf('%1$s ' . __("plugin", 'bulk-delete') .' | ' . __("Version", 'bulk-delete') . ' %2$s | '. __('by', 'bulk-delete') . ' %3$s<br />', $plugin_data['Title'], $plugin_data['Version'], $plugin_data['Author']);
|
313 |
+
}
|
314 |
+
|
315 |
+
/**
|
316 |
+
* Render post status box
|
317 |
+
*/
|
318 |
+
function render_by_post_status_box() {
|
319 |
+
|
320 |
+
if ( $this->is_hidden(self::BOX_POST_STATUS) ) {
|
321 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
322 |
+
return;
|
323 |
+
}
|
324 |
+
|
325 |
$posts_count = wp_count_posts();
|
326 |
$drafts = $posts_count->draft;
|
327 |
$future = $posts_count->future;
|
328 |
$pending = $posts_count->pending;
|
329 |
$private = $posts_count->private;
|
330 |
?>
|
331 |
+
<h4><?php _e("Select the posts which you want to delete", 'bulk-delete'); ?></h4>
|
332 |
+
|
333 |
<fieldset class="options">
|
334 |
<table class="optiontable">
|
335 |
<tr>
|
368 |
|
369 |
<tr>
|
370 |
<td scope="row">
|
371 |
+
<input name="smbd_post_status_restrict" id="smbd_post_status_restrict" value = "true" type = "checkbox">
|
372 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
373 |
<select name="smbd_post_status_op" id="smbd_post_status_op" disabled>
|
374 |
<option value ="<"><?php _e("older than", 'bulk-delete');?></option>
|
387 |
|
388 |
<tr>
|
389 |
<td scope="row">
|
390 |
+
<input name="smbd_post_status_limit" id="smbd_post_status_limit" value = "true" type = "checkbox" >
|
391 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
392 |
<input type ="textbox" name="smbd_post_status_limit_to" id="smbd_post_status_limit_to" disabled value ="0" maxlength="4" size="4" /><?php _e("posts.", 'bulk-delete');?>
|
393 |
<?php _e("Use this option if there are more than 1000 posts and the script timesout.", 'bulk-delete') ?>
|
416 |
</table>
|
417 |
</fieldset>
|
418 |
|
419 |
+
<p>
|
420 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-post-status" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
421 |
</p>
|
422 |
+
<?php
|
423 |
+
}
|
424 |
|
425 |
+
/**
|
426 |
+
* Render By category box
|
427 |
+
*/
|
428 |
+
function render_by_category_box() {
|
429 |
|
430 |
+
if ( $this->is_hidden(self::BOX_CATEGORY) ) {
|
431 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
432 |
+
return;
|
433 |
+
}
|
|
|
434 |
|
435 |
+
?>
|
436 |
+
<!-- Category Start-->
|
|
|
|
|
|
|
|
|
|
|
437 |
<h4><?php _e("Select the categories whose post you want to delete", 'bulk-delete'); ?></h4>
|
438 |
|
|
|
|
|
|
|
439 |
<fieldset class="options">
|
440 |
+
<table class="optiontable">
|
441 |
<?php
|
442 |
$categories = get_categories(array('hide_empty' => false));
|
443 |
foreach ($categories as $category) {
|
455 |
?>
|
456 |
<tr>
|
457 |
<td scope="row" >
|
458 |
+
<input name="smbd_cats_all" id ="smbd_cats_all" value = "-1" type = "checkbox" >
|
459 |
</td>
|
460 |
<td>
|
461 |
<label for="smbd_cats_all"><?php _e("All Categories", 'bulk-delete') ?></label>
|
470 |
|
471 |
<tr>
|
472 |
<td scope="row">
|
473 |
+
<input name="smbd_cats_restrict" id="smbd_cats_restrict" value = "true" type = "checkbox" >
|
474 |
</td>
|
475 |
<td>
|
476 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
498 |
|
499 |
<tr>
|
500 |
<td scope="row">
|
501 |
+
<input name="smbd_cats_limit" id="smbd_cats_limit" value = "true" type = "checkbox">
|
502 |
</td>
|
503 |
<td>
|
504 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
535 |
|
536 |
</table>
|
537 |
</fieldset>
|
538 |
+
|
539 |
+
<p>
|
540 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-cats" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
541 |
</p>
|
542 |
+
<!-- Category end-->
|
543 |
+
<?php
|
544 |
+
}
|
545 |
|
546 |
+
function render_by_tag_box() {
|
547 |
|
548 |
+
if ( $this->is_hidden(self::BOX_TAG) ) {
|
549 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
550 |
+
return;
|
551 |
+
}
|
|
|
552 |
|
|
|
|
|
553 |
$tags = get_tags();
|
554 |
if (count($tags) > 0) {
|
555 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
556 |
<h4><?php _e("Select the tags whose post you want to delete", 'bulk-delete') ?></h4>
|
557 |
|
558 |
+
<!-- Tags start-->
|
|
|
|
|
|
|
559 |
<fieldset class="options">
|
560 |
<table class="optiontable">
|
561 |
<?php
|
574 |
?>
|
575 |
<tr>
|
576 |
<td scope="row" >
|
577 |
+
<input name="smbd_tags_all" id ="smbd_tags_all" value = "-1" type = "checkbox" >
|
578 |
</td>
|
579 |
<td>
|
580 |
<label for="smbd_tags_all"><?php _e("All Tags", 'bulk-delete') ?></label>
|
589 |
|
590 |
<tr>
|
591 |
<td scope="row">
|
592 |
+
<input name="smbd_tags_restrict" id ="smbd_tags_restrict" value = "true" type = "checkbox">
|
593 |
</td>
|
594 |
<td>
|
595 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
617 |
|
618 |
<tr>
|
619 |
<td scope="row">
|
620 |
+
<input name="smbd_tags_limit" id="smbd_tags_limit" value = "true" type = "checkbox">
|
621 |
</td>
|
622 |
<td>
|
623 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
624 |
+
<input type ="textbox" name="smbd_tags_limit_to" id="smbd_tags_limit_to" disabled value ="0" maxlength="4" size="4" ><?php _e("posts.", 'bulk-delete');?>
|
625 |
<?php _e("Use this option if there are more than 1000 posts and the script timesout.", 'bulk-delete') ?>
|
626 |
</td>
|
627 |
</tr>
|
649 |
</table>
|
650 |
</fieldset>
|
651 |
<p class="submit">
|
652 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-tags" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
653 |
</p>
|
654 |
+
<!-- Tags end-->
|
655 |
+
<?php
|
656 |
+
} else {
|
657 |
+
?>
|
658 |
+
<h4><?php _e("You don't have any posts assigned to tags in this blog.", 'bulk-delete') ?></h4>
|
659 |
+
<?php
|
660 |
+
}
|
661 |
+
}
|
662 |
|
663 |
+
/**
|
664 |
+
* Render delete by custom taxonomy box
|
665 |
+
*/
|
666 |
+
function render_by_tax_box() {
|
667 |
|
668 |
+
if ( $this->is_hidden(self::BOX_TAX) ) {
|
669 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
670 |
+
return;
|
|
|
|
|
671 |
}
|
|
|
|
|
672 |
|
673 |
+
$terms_array = array();
|
674 |
+
|
675 |
$taxs = get_taxonomies(array(
|
676 |
'public' => true,
|
677 |
'_builtin' => false
|
678 |
), 'objects'
|
679 |
);
|
680 |
+
|
681 |
if (count($taxs) > 0) {
|
682 |
+
foreach ($taxs as $tax) {
|
683 |
+
$terms = get_terms($tax->name);
|
684 |
+
if (count($terms) > 0) {
|
685 |
+
$terms_array[$tax->name] = $terms;
|
686 |
+
}
|
687 |
+
}
|
688 |
+
}
|
689 |
+
|
690 |
+
if ( count( $terms_array ) > 0 ) {
|
691 |
?>
|
692 |
+
<!-- Custom tax Start-->
|
|
|
|
|
|
|
|
|
|
|
693 |
<h4><?php _e("Select the taxonomies whose post you want to delete", 'bulk-delete') ?></h4>
|
694 |
|
|
|
|
|
|
|
|
|
695 |
<fieldset class="options">
|
696 |
<table class="optiontable">
|
697 |
<?php
|
698 |
+
foreach ($terms_array as $tax => $terms) {
|
|
|
|
|
|
|
|
|
699 |
?>
|
700 |
<tr>
|
701 |
<td scope="row" >
|
702 |
+
<input name="smbd_taxs" value = "<?php echo $tax; ?>" type = "radio" class = "custom-tax">
|
703 |
</td>
|
704 |
<td>
|
705 |
+
<label for="smbd_taxs"><?php echo $tax; ?> </label>
|
706 |
</td>
|
707 |
</tr>
|
708 |
<?php
|
|
|
709 |
}
|
710 |
?>
|
711 |
</table>
|
712 |
+
|
713 |
<h4><?php _e("The selected taxonomy has the following terms. Select the terms whose post you want to delete", 'bulk-delete') ?></h4>
|
714 |
<?php
|
715 |
+
foreach ($terms_array as $tax => $terms) {
|
|
|
716 |
?>
|
717 |
+
<table class="optiontable terms_<?php echo $tax;?> terms">
|
718 |
<?php
|
719 |
foreach ($terms as $term) {
|
720 |
?>
|
743 |
|
744 |
<tr>
|
745 |
<td scope="row">
|
746 |
+
<input name="smbd_taxs_restrict" id ="smbd_taxs_restrict" value = "true" type = "checkbox">
|
747 |
</td>
|
748 |
<td>
|
749 |
<?php _e("Only restrict to posts which are ", 'bulk-delete');?>
|
771 |
|
772 |
<tr>
|
773 |
<td scope="row">
|
774 |
+
<input name="smbd_taxs_limit" id="smbd_taxs_limit" value = "true" type = "checkbox">
|
775 |
</td>
|
776 |
<td>
|
777 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
803 |
</table>
|
804 |
</fieldset>
|
805 |
<p class="submit">
|
806 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-taxs" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
807 |
</p>
|
808 |
+
<!-- Custom tax end-->
|
|
|
|
|
|
|
|
|
|
|
|
|
809 |
<?php
|
810 |
+
} else {
|
811 |
?>
|
812 |
+
<h4><?php _e("You don't have any posts assigned to custom taxonomies in this blog.", 'bulk-delete') ?></h4>
|
813 |
+
<?php
|
814 |
+
}
|
815 |
+
}
|
816 |
|
817 |
+
/**
|
818 |
+
* Render delete by pages box
|
819 |
+
*/
|
820 |
+
function render_by_page_box() {
|
|
|
|
|
821 |
|
822 |
+
if ( $this->is_hidden(self::BOX_PAGE) ) {
|
823 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
824 |
+
return;
|
825 |
+
}
|
826 |
|
|
|
827 |
$pages_count = wp_count_posts( 'page' );
|
828 |
$pages = $pages_count->publish;
|
829 |
$page_drafts = $pages_count->draft;
|
831 |
$page_pending = $pages_count->pending;
|
832 |
$page_private = $pages_count->private;
|
833 |
?>
|
834 |
+
<!-- Pages start-->
|
835 |
+
<h4><?php _e("Select the pages which you want to delete", 'bulk-delete'); ?></h4>
|
836 |
+
|
837 |
<fieldset class="options">
|
838 |
<table class="optiontable">
|
839 |
<tr>
|
879 |
|
880 |
<tr>
|
881 |
<td scope="row">
|
882 |
+
<input name="smbd_pages_restrict" id="smbd_pages_restrict" value = "true" type = "checkbox">
|
883 |
<?php _e("Only restrict to pages which are ", 'bulk-delete');?>
|
884 |
+
<select name="smbd_pages_op" id="smbd_pages_op" disabled>
|
885 |
<option value ="<"><?php _e("older than", 'bulk-delete');?></option>
|
886 |
<option value =">"><?php _e("posted within last", 'bulk-delete');?></option>
|
887 |
</select>
|
888 |
+
<input type ="textbox" name="smbd_pages_days" id="smbd_pages_days" disabled value ="0" maxlength="4" size="4" /><?php _e("days", 'bulk-delete');?>
|
889 |
</td>
|
890 |
</tr>
|
891 |
|
892 |
<tr>
|
893 |
<td scope="row">
|
894 |
+
<input name="smbd_pages_force_delete" value = "false" type = "radio" checked="checked" /> <?php _e('Move to Trash', 'bulk-delete'); ?>
|
895 |
+
<input name="smbd_pages_force_delete" value = "true" type = "radio" /> <?php _e('Delete permanently', 'bulk-delete'); ?>
|
896 |
</td>
|
897 |
</tr>
|
898 |
|
899 |
<tr>
|
900 |
<td scope="row">
|
901 |
+
<input name="smbd_pages_limit" id="smbd_pages_limit" value = "true" type = "checkbox">
|
902 |
<?php _e("Only delete first ", 'bulk-delete');?>
|
903 |
+
<input type ="textbox" name="smbd_pages_limit_to" id="smbd_pages_limit_to" disabled value ="0" maxlength="4" size="4" /><?php _e("posts.", 'bulk-delete');?>
|
904 |
<?php _e("Use this option if there are more than 1000 posts and the script timesout.", 'bulk-delete') ?>
|
905 |
</td>
|
906 |
</tr>
|
927 |
</table>
|
928 |
</fieldset>
|
929 |
|
930 |
+
<p>
|
931 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-page" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
932 |
</p>
|
933 |
+
<!-- Pages end-->
|
934 |
+
<?php
|
935 |
+
}
|
936 |
|
937 |
+
/**
|
938 |
+
* Render delete by url box
|
939 |
+
*/
|
940 |
+
function render_by_url_box() {
|
941 |
|
942 |
+
if ( $this->is_hidden(self::BOX_URL) ) {
|
943 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
944 |
+
return;
|
945 |
+
}
|
|
|
946 |
|
947 |
+
?>
|
948 |
+
<!-- URLs start-->
|
|
|
|
|
|
|
949 |
<h4><?php _e("Delete these specific pages", 'bulk-delete'); ?></h4>
|
950 |
|
|
|
|
|
951 |
<fieldset class="options">
|
952 |
<table class="optiontable">
|
953 |
<tr>
|
974 |
</table>
|
975 |
</fieldset>
|
976 |
|
977 |
+
<p>
|
978 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-specific" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
979 |
</p>
|
980 |
+
<!-- URLs end-->
|
981 |
+
<?php
|
982 |
+
}
|
983 |
|
984 |
+
/**
|
985 |
+
* Render delete by post revisions box
|
986 |
+
*/
|
987 |
+
function render_by_post_revision_box() {
|
988 |
|
989 |
+
if ( $this->is_hidden(self::BOX_POST_REVISION) ) {
|
990 |
+
printf( __('This section just got enabled. Kindly <a href = "%1$s">refresh</a> the page to fully enable it.', 'bulk-delete' ), 'options-general.php?page=bulk-delete.php' );
|
991 |
+
return;
|
992 |
+
}
|
|
|
993 |
|
994 |
+
global $wpdb;
|
|
|
|
|
|
|
|
|
|
|
995 |
|
|
|
|
|
|
|
996 |
$revisions = $wpdb->get_var("select count(*) from $wpdb->posts where post_type = 'revision'");
|
997 |
?>
|
998 |
+
<!-- Post Revisions start-->
|
999 |
+
<h4><?php _e("Select the posts which you want to delete", 'bulk-delete'); ?></h4>
|
1000 |
+
|
1001 |
<fieldset class="options">
|
1002 |
<table class="optiontable">
|
1003 |
<tr>
|
1010 |
</table>
|
1011 |
</fieldset>
|
1012 |
|
1013 |
+
<p>
|
1014 |
+
<button type="submit" name="smbd_action" value = "bulk-delete-revisions" class="button-primary"><?php _e("Bulk Delete ", 'bulk-delete') ?>»</button>
|
1015 |
</p>
|
1016 |
+
<!-- Post Revisions end-->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1017 |
<?php
|
|
|
|
|
|
|
1018 |
}
|
1019 |
|
1020 |
/**
|
1021 |
+
* Render debug box
|
1022 |
*/
|
1023 |
+
function render_debug_box() {
|
1024 |
+
?>
|
1025 |
+
<!-- Debug box start-->
|
1026 |
+
<p>
|
1027 |
+
<?php _e('If you are seeing a blank page after clicking the Bulk Delete button, then ', 'bulk-delete'); ?><a href = "http://sudarmuthu.com/wordpress/bulk-delete#faq"><?php _e('check out this FAQ', 'bulk-delete');?></a>.
|
1028 |
+
<?php _e('You also need need the following debug information.', 'bulk-delete'); ?>
|
1029 |
+
</p>
|
1030 |
+
<table cellspacing="10">
|
1031 |
+
<tr>
|
1032 |
+
<th align = "right"><?php _e('PHP Version ', 'bulk-delete'); ?></th>
|
1033 |
+
<td><?php echo phpversion(); ?></td>
|
1034 |
+
</tr>
|
1035 |
+
<tr>
|
1036 |
+
<th align = "right"><?php _e('Plugin Version ', 'bulk-delete'); ?></th>
|
1037 |
+
<td><?php echo self::VERSION; ?></td>
|
1038 |
+
</tr>
|
1039 |
+
<tr>
|
1040 |
+
<th align = "right"><?php _e('Available memory size ', 'bulk-delete');?></th>
|
1041 |
+
<td><?php echo ini_get( 'memory_limit' ); ?></td>
|
1042 |
+
</tr>
|
1043 |
+
<tr>
|
1044 |
+
<th align = "right"><?php _e('Script time out ', 'bulk-delete');?></th>
|
1045 |
+
<td><?php echo ini_get( 'max_execution_time' ); ?></td>
|
1046 |
+
</tr>
|
1047 |
+
<tr>
|
1048 |
+
<th align = "right"><?php _e('Script input time ', 'bulk-delete'); ?></th>
|
1049 |
+
<td><?php echo ini_get( 'max_input_time' ); ?></td>
|
1050 |
+
</tr>
|
1051 |
+
</table>
|
1052 |
+
<!-- Debug box end-->
|
1053 |
+
<?php
|
1054 |
}
|
1055 |
|
1056 |
/**
|
1068 |
//Prepare Table of elements
|
1069 |
$cron_list_table = new Cron_List_Table();
|
1070 |
$cron_list_table->prepare_items($this->get_cron_schedules());
|
|
|
1071 |
?>
|
1072 |
<div class="wrap">
|
1073 |
<?php screen_icon(); ?>
|
1078 |
?>
|
1079 |
</div>
|
1080 |
<?php
|
1081 |
+
// Display credits in Footer
|
1082 |
+
add_action( 'in_admin_footer', array(&$this, 'admin_footer' ));
|
1083 |
}
|
1084 |
|
1085 |
/**
|
1086 |
+
* Request Handler. Handles both POST and GET requests
|
1087 |
*/
|
1088 |
function request_handler() {
|
|
|
|
|
1089 |
if (isset($_GET['smbd_action'])) {
|
1090 |
|
1091 |
switch($_GET['smbd_action']) {
|
1104 |
}
|
1105 |
}
|
1106 |
|
1107 |
+
if ( isset( $_POST['smbd_action'] ) && check_admin_referer( 'sm-bulk-delete-posts', 'sm-bulk-delete-posts-nonce' ) ) {
|
|
|
|
|
|
|
1108 |
|
1109 |
switch($_POST['smbd_action']) {
|
1110 |
|
1115 |
$delete_options['selected_cats'] = array_get($_POST, 'smbd_cats');
|
1116 |
$delete_options['restrict'] = array_get($_POST, 'smbd_cats_restrict', FALSE);
|
1117 |
$delete_options['private'] = array_get($_POST, 'smbd_cats_private');
|
1118 |
+
$delete_options['limit_to'] = absint(array_get($_POST, 'smbd_cats_limit_to', 0));
|
1119 |
$delete_options['force_delete'] = array_get($_POST, 'smbd_cats_force_delete', 'false');
|
1120 |
|
1121 |
$delete_options['cats_op'] = array_get($_POST, 'smbd_cats_op');
|
1147 |
$delete_options['selected_tags'] = array_get($_POST, 'smbd_tags');
|
1148 |
$delete_options['restrict'] = array_get($_POST, 'smbd_tags_restrict', FALSE);
|
1149 |
$delete_options['private'] = array_get($_POST, 'smbd_tags_private');
|
1150 |
+
$delete_options['limit_to'] = absint(array_get($_POST, 'smbd_tags_limit_to', 0));
|
1151 |
$delete_options['force_delete'] = array_get($_POST, 'smbd_tags_force_delete', 'false');
|
1152 |
|
1153 |
$delete_options['tags_op'] = array_get($_POST, 'smbd_tags_op');
|
1207 |
|
1208 |
$delete_options = array();
|
1209 |
$delete_options['restrict'] = array_get($_POST, 'smbd_post_status_restrict', FALSE);
|
1210 |
+
$delete_options['limit_to'] = absint(array_get($_POST, 'smbd_post_status_limit_to', 0));
|
1211 |
$delete_options['force_delete'] = array_get($_POST, 'smbd_post_status_force_delete', 'false');
|
1212 |
|
1213 |
$delete_options['post_status_op'] = array_get($_POST, 'smbd_post_status_op');
|
1240 |
// Delete pages
|
1241 |
|
1242 |
$delete_options = array();
|
1243 |
+
$delete_options['restrict'] = array_get($_POST, 'smbd_pages_restrict', FALSE);
|
1244 |
+
$delete_options['limit_to'] = absint(array_get($_POST, 'smbd_pages_limit_to', 0));
|
1245 |
+
$delete_options['force_delete'] = array_get($_POST, 'smbd_pages_force_delete', 'false');
|
1246 |
|
1247 |
+
$delete_options['page_op'] = array_get($_POST, 'smbd_pages_op');
|
1248 |
+
$delete_options['page_days'] = array_get($_POST, 'smbd_pages_days');
|
1249 |
|
1250 |
$delete_options['publish'] = array_get($_POST, 'smbd_published_pages');
|
1251 |
$delete_options['drafts'] = array_get($_POST, 'smbd_draft_pages');
|
1320 |
|
1321 |
// cleanup
|
1322 |
$this->msg = '';
|
1323 |
+
remove_action( 'admin_notices', array( &$this, 'deleted_notice' ));
|
1324 |
+
}
|
1325 |
+
|
1326 |
+
/**
|
1327 |
+
* @brief Check whether the box is hidden or not
|
1328 |
+
*
|
1329 |
+
* @param $box
|
1330 |
+
*
|
1331 |
+
* @return
|
1332 |
+
*/
|
1333 |
+
private function is_hidden( $box ) {
|
1334 |
+
$hidden_boxes = $this->get_hidden_boxes();
|
1335 |
+
return ( is_array( $hidden_boxes ) && in_array( $box, $hidden_boxes ) );
|
1336 |
+
}
|
1337 |
+
|
1338 |
+
/**
|
1339 |
+
* Get the list of hidden boxes
|
1340 |
+
*
|
1341 |
+
* @return the array of hidden meta boxes
|
1342 |
+
*/
|
1343 |
+
private function get_hidden_boxes() {
|
1344 |
+
$current_user = wp_get_current_user();
|
1345 |
+
return get_user_meta( $current_user->ID, 'metaboxhidden_settings_page_bulk-delete', TRUE );
|
1346 |
}
|
1347 |
|
1348 |
/**
|
1604 |
if ("published_pages" == $delete_options['publish']) {
|
1605 |
$post_status[] = 'publish';
|
1606 |
}
|
1607 |
+
|
1608 |
// Drafts
|
1609 |
if ("draft_pages" == $delete_options['drafts']) {
|
1610 |
$post_status[] = 'draft';
|
1642 |
foreach ($pages as $page) {
|
1643 |
wp_delete_post($page->ID, $force_delete);
|
1644 |
}
|
1645 |
+
|
1646 |
+
return count( $pages );
|
1647 |
}
|
1648 |
|
1649 |
/**
|
js/bulk-delete.js
CHANGED
@@ -7,40 +7,60 @@
|
|
7 |
*
|
8 |
*/
|
9 |
|
10 |
-
/*
|
|
|
11 |
jQuery(document).ready(function () {
|
|
|
12 |
// hide all terms
|
13 |
function hideAllTerms() {
|
14 |
jQuery('table.terms').hide();
|
15 |
jQuery('input.terms').attr('checked', false);
|
16 |
}
|
17 |
|
|
|
|
|
|
|
18 |
/**
|
19 |
-
* Toggle
|
20 |
*/
|
21 |
-
|
22 |
-
|
23 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
|
30 |
-
|
31 |
-
|
32 |
-
});
|
33 |
|
34 |
-
jQuery('
|
35 |
-
|
36 |
-
|
|
|
|
|
37 |
|
38 |
-
|
39 |
-
|
40 |
-
|
|
|
|
|
|
|
|
|
41 |
|
42 |
-
jQuery('#smbd_post_status_cron_start').datetimepicker({
|
43 |
-
timeFormat: 'HH:mm:ss'
|
44 |
});
|
45 |
|
46 |
// taxonomy click handling
|
@@ -55,64 +75,50 @@ jQuery(document).ready(function () {
|
|
55 |
}
|
56 |
});
|
57 |
|
58 |
-
|
59 |
-
|
|
|
|
|
60 |
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
|
|
|
|
70 |
} else {
|
71 |
-
|
|
|
72 |
}
|
73 |
}
|
74 |
-
}
|
75 |
-
}
|
76 |
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
function toggle_date_restrict(el) {
|
81 |
-
if (jQuery("#smbd_" + el + "_restrict").is(":checked")) {
|
82 |
-
jQuery("#smbd_" + el + "_op").removeAttr('disabled');
|
83 |
-
jQuery("#smbd_" + el + "_days").removeAttr('disabled');
|
84 |
-
} else {
|
85 |
-
jQuery("#smbd_" + el + "_op").attr('disabled', 'true');
|
86 |
-
jQuery("#smbd_" + el + "_days").attr('disabled', 'true');
|
87 |
-
}
|
88 |
-
}
|
89 |
|
90 |
-
|
91 |
-
|
92 |
-
jQuery("#smbd_" + el + "_limit_to").removeAttr('disabled');
|
93 |
-
} else {
|
94 |
-
jQuery("#smbd_" + el + "_limit_to").attr('disabled', 'true');
|
95 |
-
}
|
96 |
-
}
|
97 |
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
if (form.elements[i].type == "checkbox" && !(form.elements[i].getAttribute('onclick', 2))) {
|
105 |
-
if (form.elements[i].checked == true) {
|
106 |
-
valid = true;
|
107 |
-
break;
|
108 |
-
}
|
109 |
}
|
110 |
-
}
|
111 |
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
}
|
|
|
|
7 |
*
|
8 |
*/
|
9 |
|
10 |
+
/*jslint browser: true, devel: true*/
|
11 |
+
/*global BULK_DELETE, jQuery, document, postboxes, pagenow*/
|
12 |
jQuery(document).ready(function () {
|
13 |
+
|
14 |
// hide all terms
|
15 |
function hideAllTerms() {
|
16 |
jQuery('table.terms').hide();
|
17 |
jQuery('input.terms').attr('checked', false);
|
18 |
}
|
19 |
|
20 |
+
// call it for the first time
|
21 |
+
hideAllTerms();
|
22 |
+
|
23 |
/**
|
24 |
+
* Toggle the date restrict fields
|
25 |
*/
|
26 |
+
function toggle_date_restrict(el) {
|
27 |
+
if (jQuery("#smbd_" + el + "_restrict").is(":checked")) {
|
28 |
+
jQuery("#smbd_" + el + "_op").removeAttr('disabled');
|
29 |
+
jQuery("#smbd_" + el + "_days").removeAttr('disabled');
|
30 |
+
} else {
|
31 |
+
jQuery("#smbd_" + el + "_op").attr('disabled', 'true');
|
32 |
+
jQuery("#smbd_" + el + "_days").attr('disabled', 'true');
|
33 |
+
}
|
34 |
+
}
|
35 |
|
36 |
+
/**
|
37 |
+
* Toggle limit restrict fields
|
38 |
+
*/
|
39 |
+
function toggle_limit_restrict(el) {
|
40 |
+
if (jQuery("#smbd_" + el + "_limit").is(":checked")) {
|
41 |
+
jQuery("#smbd_" + el + "_limit_to").removeAttr('disabled');
|
42 |
+
} else {
|
43 |
+
jQuery("#smbd_" + el + "_limit_to").attr('disabled', 'true');
|
44 |
+
}
|
45 |
+
}
|
46 |
|
47 |
+
// for post boxes
|
48 |
+
postboxes.add_postbox_toggles(pagenow);
|
|
|
49 |
|
50 |
+
jQuery.each(['cats', 'tags', 'taxs', 'pages', 'post_status'], function (index, value) {
|
51 |
+
// invoke the date time picker
|
52 |
+
jQuery('#smbd_' + value + '_cron_start').datetimepicker({
|
53 |
+
timeFormat: 'HH:mm:ss'
|
54 |
+
});
|
55 |
|
56 |
+
jQuery('#smbd_' + value + '_restrict').change(function () {
|
57 |
+
toggle_date_restrict(value);
|
58 |
+
});
|
59 |
+
|
60 |
+
jQuery('#smbd_' + value + '_limit').change(function () {
|
61 |
+
toggle_limit_restrict(value);
|
62 |
+
});
|
63 |
|
|
|
|
|
64 |
});
|
65 |
|
66 |
// taxonomy click handling
|
75 |
}
|
76 |
});
|
77 |
|
78 |
+
// Handle clicking of submit buttons
|
79 |
+
jQuery('button').click(function () {
|
80 |
+
var current_button = jQuery(this).val(),
|
81 |
+
valid = false;
|
82 |
|
83 |
+
if (jQuery(this).val() === 'bulk-delete-specific') {
|
84 |
+
if (jQuery(this).parent().prev().children('table').find("textarea").val() !== '') {
|
85 |
+
valid = true;
|
86 |
+
} else {
|
87 |
+
// not valid
|
88 |
+
alert(BULK_DELETE.error.enterurl);
|
89 |
+
}
|
90 |
+
} else {
|
91 |
+
if (jQuery(this).parent().prev().children('table').find(":checkbox:checked[value!='true']").size() > 0) {
|
92 |
+
// monstrous selector
|
93 |
+
valid = true;
|
94 |
} else {
|
95 |
+
// not valid
|
96 |
+
alert(BULK_DELETE.error.selectone);
|
97 |
}
|
98 |
}
|
|
|
|
|
99 |
|
100 |
+
if (valid) {
|
101 |
+
return confirm(BULK_DELETE.msg.deletewarning);
|
102 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
|
104 |
+
return false;
|
105 |
+
});
|
|
|
|
|
|
|
|
|
|
|
106 |
|
107 |
+
// Handle selection of all checkboxes of cats
|
108 |
+
jQuery('#smbd_cats_all').change(function () {
|
109 |
+
if (jQuery(this).is(':checked')) {
|
110 |
+
jQuery('input[name="smbd_cats[]"]').attr('checked', true);
|
111 |
+
} else {
|
112 |
+
jQuery('input[name="smbd_cats[]"]').attr('checked', false);
|
|
|
|
|
|
|
|
|
|
|
113 |
}
|
114 |
+
});
|
115 |
|
116 |
+
// Handle selection of all checkboxes of tags
|
117 |
+
jQuery('#smbd_tags_all').change(function () {
|
118 |
+
if (jQuery(this).is(':checked')) {
|
119 |
+
jQuery('input[name="smbd_tags[]"]').attr('checked', true);
|
120 |
+
} else {
|
121 |
+
jQuery('input[name="smbd_tags[]"]').attr('checked', false);
|
122 |
+
}
|
123 |
+
});
|
124 |
+
});
|
languages/bulk-delete.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the same license as the Bulk Delete package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Bulk Delete 3.
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/bulk-delete\n"
|
7 |
-
"POT-Creation-Date: 2013-05-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -12,407 +12,435 @@ msgstr ""
|
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
15 |
-
#. #-#-#-#-# bulk-delete.pot (Bulk Delete 3.
|
16 |
#. Plugin Name of the plugin/theme
|
17 |
-
#: bulk-delete.php:
|
18 |
msgid "Bulk Delete"
|
19 |
msgstr ""
|
20 |
|
21 |
-
#: bulk-delete.php:
|
22 |
msgid "Bulk Delete Schedules"
|
23 |
msgstr ""
|
24 |
|
25 |
-
#: bulk-delete.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 |
msgid "About Plugin"
|
27 |
msgstr ""
|
28 |
|
29 |
-
#: bulk-delete.php:
|
30 |
msgid ""
|
31 |
"This plugin allows you to delete posts in bulk from selected categories, "
|
32 |
"tags, custom taxonomies or by post status like drafts, pending posts, "
|
33 |
"scheduled posts etc."
|
34 |
msgstr ""
|
35 |
|
36 |
-
#: bulk-delete.php:
|
37 |
msgid "More information"
|
38 |
msgstr ""
|
39 |
|
40 |
-
#: bulk-delete.php:
|
41 |
msgid "Plugin Homepage/support"
|
42 |
msgstr ""
|
43 |
|
44 |
-
#: bulk-delete.php:
|
45 |
msgid "Buy pro addons"
|
46 |
msgstr ""
|
47 |
|
48 |
-
#: bulk-delete.php:
|
49 |
msgid "Plugin author's blog"
|
50 |
msgstr ""
|
51 |
|
52 |
-
#: bulk-delete.php:
|
53 |
msgid "Other Plugin's by Author"
|
54 |
msgstr ""
|
55 |
|
56 |
-
#: bulk-delete.php:
|
57 |
msgid "Are you sure you want to delete all the selected posts"
|
58 |
msgstr ""
|
59 |
|
60 |
-
#: bulk-delete.php:
|
61 |
-
msgid "Please select at least one option"
|
62 |
msgstr ""
|
63 |
|
64 |
-
#: bulk-delete.php:
|
|
|
|
|
|
|
|
|
65 |
msgid "Manage"
|
66 |
msgstr ""
|
67 |
|
68 |
-
#: bulk-delete.php:
|
69 |
msgid "Buy Addons"
|
70 |
msgstr ""
|
71 |
|
72 |
-
#: bulk-delete.php:
|
73 |
msgid "WARNING: Posts deleted once cannot be retrieved back. Use with caution."
|
74 |
msgstr ""
|
75 |
|
76 |
-
#: bulk-delete.php:
|
77 |
-
msgid "
|
78 |
msgstr ""
|
79 |
|
80 |
-
#: bulk-delete.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
msgid "Select the posts which you want to delete"
|
82 |
msgstr ""
|
83 |
|
84 |
-
#: bulk-delete.php:
|
85 |
msgid "All Draft Posts"
|
86 |
msgstr ""
|
87 |
|
88 |
-
#: bulk-delete.php:
|
89 |
msgid "Drafts"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: bulk-delete.php:
|
93 |
msgid "All Pending posts"
|
94 |
msgstr ""
|
95 |
|
96 |
-
#: bulk-delete.php:
|
97 |
-
#: bulk-delete.php:
|
98 |
msgid "Posts"
|
99 |
msgstr ""
|
100 |
|
101 |
-
#: bulk-delete.php:
|
102 |
msgid "All scheduled posts"
|
103 |
msgstr ""
|
104 |
|
105 |
-
#: bulk-delete.php:
|
106 |
msgid "All private posts"
|
107 |
msgstr ""
|
108 |
|
109 |
-
#: bulk-delete.php:
|
110 |
-
#: bulk-delete.php:
|
111 |
msgid "Choose your filtering options"
|
112 |
msgstr ""
|
113 |
|
114 |
-
#: bulk-delete.php:
|
115 |
-
#: bulk-delete.php:
|
116 |
msgid "Only restrict to posts which are "
|
117 |
msgstr ""
|
118 |
|
119 |
-
#: bulk-delete.php:
|
120 |
-
#: bulk-delete.php:
|
121 |
msgid "older than"
|
122 |
msgstr ""
|
123 |
|
124 |
-
#: bulk-delete.php:
|
125 |
-
#: bulk-delete.php:
|
126 |
msgid "posted within last"
|
127 |
msgstr ""
|
128 |
|
129 |
-
#: bulk-delete.php:
|
130 |
-
#: bulk-delete.php:
|
131 |
msgid "days"
|
132 |
msgstr ""
|
133 |
|
134 |
-
#: bulk-delete.php:
|
135 |
-
#: bulk-delete.php:
|
136 |
msgid "Move to Trash"
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: bulk-delete.php:
|
140 |
-
#: bulk-delete.php:
|
141 |
msgid "Delete permanently"
|
142 |
msgstr ""
|
143 |
|
144 |
-
#: bulk-delete.php:
|
145 |
-
#: bulk-delete.php:
|
146 |
msgid "Only delete first "
|
147 |
msgstr ""
|
148 |
|
149 |
-
#: bulk-delete.php:
|
150 |
-
#: bulk-delete.php:
|
151 |
msgid "posts."
|
152 |
msgstr ""
|
153 |
|
154 |
-
#: bulk-delete.php:
|
155 |
-
#: bulk-delete.php:
|
156 |
msgid ""
|
157 |
"Use this option if there are more than 1000 posts and the script timesout."
|
158 |
msgstr ""
|
159 |
|
160 |
-
#: bulk-delete.php:
|
161 |
-
#: bulk-delete.php:
|
162 |
msgid "Delete now"
|
163 |
msgstr ""
|
164 |
|
165 |
-
#: bulk-delete.php:
|
166 |
-
#: bulk-delete.php:
|
167 |
#: include/class-cron-list-table.php:96
|
168 |
msgid "Schedule"
|
169 |
msgstr ""
|
170 |
|
171 |
-
#: bulk-delete.php:
|
172 |
-
#: bulk-delete.php:
|
173 |
msgid "repeat "
|
174 |
msgstr ""
|
175 |
|
176 |
-
#: bulk-delete.php:
|
177 |
-
#: bulk-delete.php:
|
178 |
msgid "Don't repeat"
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: bulk-delete.php:
|
182 |
-
#: bulk-delete.php:
|
183 |
msgid "Only available in Pro Addon"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: bulk-delete.php:
|
187 |
-
#: bulk-delete.php:
|
188 |
-
#: bulk-delete.php:
|
189 |
msgid "Bulk Delete "
|
190 |
msgstr ""
|
191 |
|
192 |
-
#: bulk-delete.php:
|
193 |
-
msgid "By Category"
|
194 |
-
msgstr ""
|
195 |
-
|
196 |
-
#: bulk-delete.php:355
|
197 |
msgid "Select the categories whose post you want to delete"
|
198 |
msgstr ""
|
199 |
|
200 |
-
#: bulk-delete.php:
|
201 |
msgid "All Categories"
|
202 |
msgstr ""
|
203 |
|
204 |
-
#: bulk-delete.php:
|
205 |
msgid "Public posts"
|
206 |
msgstr ""
|
207 |
|
208 |
-
#: bulk-delete.php:
|
209 |
msgid "Private Posts"
|
210 |
msgstr ""
|
211 |
|
212 |
-
#: bulk-delete.php:
|
213 |
msgid "Enter time in Y-m-d H:i:s format or enter now to use current time"
|
214 |
msgstr ""
|
215 |
|
216 |
-
#: bulk-delete.php:
|
217 |
-
msgid "By Tags"
|
218 |
-
msgstr ""
|
219 |
-
|
220 |
-
#: bulk-delete.php:484
|
221 |
msgid "Select the tags whose post you want to delete"
|
222 |
msgstr ""
|
223 |
|
224 |
-
#: bulk-delete.php:
|
225 |
msgid "All Tags"
|
226 |
msgstr ""
|
227 |
|
228 |
-
#: bulk-delete.php:
|
229 |
-
msgid "
|
230 |
msgstr ""
|
231 |
|
232 |
-
#: bulk-delete.php:
|
233 |
msgid "Select the taxonomies whose post you want to delete"
|
234 |
msgstr ""
|
235 |
|
236 |
-
#: bulk-delete.php:
|
237 |
msgid ""
|
238 |
"The selected taxonomy has the following terms. Select the terms whose post "
|
239 |
"you want to delete"
|
240 |
msgstr ""
|
241 |
|
242 |
-
#: bulk-delete.php:
|
243 |
-
msgid "
|
244 |
msgstr ""
|
245 |
|
246 |
-
#: bulk-delete.php:
|
247 |
msgid "Select the pages which you want to delete"
|
248 |
msgstr ""
|
249 |
|
250 |
-
#: bulk-delete.php:
|
251 |
msgid "All Published Pages"
|
252 |
msgstr ""
|
253 |
|
254 |
-
#: bulk-delete.php:
|
255 |
-
#: bulk-delete.php:
|
256 |
msgid "Pages"
|
257 |
msgstr ""
|
258 |
|
259 |
-
#: bulk-delete.php:
|
260 |
msgid "All Draft Pages"
|
261 |
msgstr ""
|
262 |
|
263 |
-
#: bulk-delete.php:
|
264 |
msgid "All Scheduled Pages"
|
265 |
msgstr ""
|
266 |
|
267 |
-
#: bulk-delete.php:
|
268 |
msgid "All Pending Pages"
|
269 |
msgstr ""
|
270 |
|
271 |
-
#: bulk-delete.php:
|
272 |
msgid "All Private Pages"
|
273 |
msgstr ""
|
274 |
|
275 |
-
#: bulk-delete.php:
|
276 |
msgid "Only restrict to pages which are "
|
277 |
msgstr ""
|
278 |
|
279 |
-
#: bulk-delete.php:
|
280 |
-
msgid "By Urls"
|
281 |
-
msgstr ""
|
282 |
-
|
283 |
-
#: bulk-delete.php:876
|
284 |
msgid "Delete these specific pages"
|
285 |
msgstr ""
|
286 |
|
287 |
-
#: bulk-delete.php:
|
288 |
msgid "Enter one post url (not post ids) per line"
|
289 |
msgstr ""
|
290 |
|
291 |
-
#: bulk-delete.php:
|
292 |
-
msgid "By Post Revisions"
|
293 |
-
msgstr ""
|
294 |
-
|
295 |
-
#: bulk-delete.php:935
|
296 |
msgid "All Revisions"
|
297 |
msgstr ""
|
298 |
|
299 |
-
#: bulk-delete.php:
|
300 |
msgid "Revisions"
|
301 |
msgstr ""
|
302 |
|
303 |
-
#: bulk-delete.php:
|
304 |
-
msgid "Debug Information"
|
305 |
-
msgstr ""
|
306 |
-
|
307 |
-
#: bulk-delete.php:962
|
308 |
msgid ""
|
309 |
"If you are seeing a blank page after clicking the Bulk Delete button, then "
|
310 |
msgstr ""
|
311 |
|
312 |
-
#: bulk-delete.php:
|
313 |
msgid "check out this FAQ"
|
314 |
msgstr ""
|
315 |
|
316 |
-
#: bulk-delete.php:
|
317 |
msgid "You also need need the following debug information."
|
318 |
msgstr ""
|
319 |
|
320 |
-
#: bulk-delete.php:
|
321 |
-
msgid "
|
322 |
msgstr ""
|
323 |
|
324 |
-
#: bulk-delete.php:
|
325 |
-
msgid "
|
326 |
msgstr ""
|
327 |
|
328 |
-
#: bulk-delete.php:
|
329 |
-
msgid "
|
330 |
-
msgstr ""
|
331 |
-
|
332 |
-
#: bulk-delete.php:998
|
333 |
-
msgid "plugin"
|
334 |
msgstr ""
|
335 |
|
336 |
-
#: bulk-delete.php:
|
337 |
-
msgid "
|
338 |
msgstr ""
|
339 |
|
340 |
-
#: bulk-delete.php:
|
341 |
-
msgid "
|
342 |
msgstr ""
|
343 |
|
344 |
-
#: bulk-delete.php:
|
345 |
msgid "The selected scheduled job was successfully deleted "
|
346 |
msgstr ""
|
347 |
|
348 |
-
#: bulk-delete.php:
|
349 |
msgid "Posts from the selected categories are scheduled for deletion."
|
350 |
msgstr ""
|
351 |
|
352 |
-
#: bulk-delete.php:
|
353 |
-
#: bulk-delete.php:
|
354 |
msgid "See the full list of <a href = \"%s\">scheduled tasks</a>"
|
355 |
msgstr ""
|
356 |
|
357 |
-
#: bulk-delete.php:
|
358 |
msgid "Deleted %d post from the selected categories"
|
359 |
msgid_plural "Deleted %d posts from the selected categories"
|
360 |
msgstr[0] ""
|
361 |
msgstr[1] ""
|
362 |
|
363 |
-
#: bulk-delete.php:
|
364 |
msgid "Posts from the selected tags are scheduled for deletion."
|
365 |
msgstr ""
|
366 |
|
367 |
-
#: bulk-delete.php:
|
368 |
msgid "Deleted %d post from the selected tags"
|
369 |
msgid_plural "Deleted %d posts from the selected tags"
|
370 |
msgstr[0] ""
|
371 |
msgstr[1] ""
|
372 |
|
373 |
-
#: bulk-delete.php:
|
374 |
msgid "Posts from the selected custom taxonomies are scheduled for deletion."
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: bulk-delete.php:
|
378 |
msgid "Deleted %d post from the selected custom taxonomies"
|
379 |
msgid_plural "Deleted %d posts from the selected custom taxonomies"
|
380 |
msgstr[0] ""
|
381 |
msgstr[1] ""
|
382 |
|
383 |
-
#: bulk-delete.php:
|
384 |
msgid "Posts with the selected status are scheduled for deletion."
|
385 |
msgstr ""
|
386 |
|
387 |
-
#: bulk-delete.php:
|
388 |
msgid "Deleted %d post with the selected post status"
|
389 |
msgid_plural "Deleted %d posts with the selected post status"
|
390 |
msgstr[0] ""
|
391 |
msgstr[1] ""
|
392 |
|
393 |
-
#: bulk-delete.php:
|
394 |
msgid "The selected pages are scheduled for deletion."
|
395 |
msgstr ""
|
396 |
|
397 |
-
#: bulk-delete.php:
|
398 |
msgid "Deleted %d page"
|
399 |
msgid_plural "Deleted %d pages"
|
400 |
msgstr[0] ""
|
401 |
msgstr[1] ""
|
402 |
|
403 |
-
#: bulk-delete.php:
|
404 |
msgid "Deleted %d post with the specified urls"
|
405 |
msgid_plural "Deleted %d posts with the specified urls"
|
406 |
msgstr[0] ""
|
407 |
msgstr[1] ""
|
408 |
|
409 |
-
#: bulk-delete.php:
|
410 |
msgid "Deleted %d post revision"
|
411 |
msgid_plural "Deleted %d post revisions"
|
412 |
msgstr[0] ""
|
413 |
msgstr[1] ""
|
414 |
|
415 |
-
#: bulk-delete.php:
|
416 |
msgctxt "Cron table date format"
|
417 |
msgid "M j, Y @ G:i"
|
418 |
msgstr ""
|
2 |
# This file is distributed under the same license as the Bulk Delete package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Bulk Delete 3.4\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/bulk-delete\n"
|
7 |
+
"POT-Creation-Date: 2013-05-21 16:27:02+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
15 |
+
#. #-#-#-#-# bulk-delete.pot (Bulk Delete 3.4) #-#-#-#-#
|
16 |
#. Plugin Name of the plugin/theme
|
17 |
+
#: bulk-delete.php:139 bulk-delete.php:268
|
18 |
msgid "Bulk Delete"
|
19 |
msgstr ""
|
20 |
|
21 |
+
#: bulk-delete.php:140 bulk-delete.php:1074
|
22 |
msgid "Bulk Delete Schedules"
|
23 |
msgstr ""
|
24 |
|
25 |
+
#: bulk-delete.php:152
|
26 |
+
msgid "By Post Status"
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: bulk-delete.php:153
|
30 |
+
msgid "By Category"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#: bulk-delete.php:154
|
34 |
+
msgid "By Tag"
|
35 |
+
msgstr ""
|
36 |
+
|
37 |
+
#: bulk-delete.php:155
|
38 |
+
msgid "By Custom Taxonomy"
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#: bulk-delete.php:156
|
42 |
+
msgid "By Page"
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
#: bulk-delete.php:157
|
46 |
+
msgid "By URL"
|
47 |
+
msgstr ""
|
48 |
+
|
49 |
+
#: bulk-delete.php:158
|
50 |
+
msgid "By Post Revision"
|
51 |
+
msgstr ""
|
52 |
+
|
53 |
+
#: bulk-delete.php:159
|
54 |
+
msgid "Debug Information"
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
+
#: bulk-delete.php:177
|
58 |
msgid "About Plugin"
|
59 |
msgstr ""
|
60 |
|
61 |
+
#: bulk-delete.php:179
|
62 |
msgid ""
|
63 |
"This plugin allows you to delete posts in bulk from selected categories, "
|
64 |
"tags, custom taxonomies or by post status like drafts, pending posts, "
|
65 |
"scheduled posts etc."
|
66 |
msgstr ""
|
67 |
|
68 |
+
#: bulk-delete.php:186
|
69 |
msgid "More information"
|
70 |
msgstr ""
|
71 |
|
72 |
+
#: bulk-delete.php:187
|
73 |
msgid "Plugin Homepage/support"
|
74 |
msgstr ""
|
75 |
|
76 |
+
#: bulk-delete.php:188
|
77 |
msgid "Buy pro addons"
|
78 |
msgstr ""
|
79 |
|
80 |
+
#: bulk-delete.php:189
|
81 |
msgid "Plugin author's blog"
|
82 |
msgstr ""
|
83 |
|
84 |
+
#: bulk-delete.php:190
|
85 |
msgid "Other Plugin's by Author"
|
86 |
msgstr ""
|
87 |
|
88 |
+
#: bulk-delete.php:219
|
89 |
msgid "Are you sure you want to delete all the selected posts"
|
90 |
msgstr ""
|
91 |
|
92 |
+
#: bulk-delete.php:223
|
93 |
+
msgid "Please select posts from at least one option"
|
94 |
msgstr ""
|
95 |
|
96 |
+
#: bulk-delete.php:224
|
97 |
+
msgid "Please enter at least one page url"
|
98 |
+
msgstr ""
|
99 |
+
|
100 |
+
#: bulk-delete.php:242
|
101 |
msgid "Manage"
|
102 |
msgstr ""
|
103 |
|
104 |
+
#: bulk-delete.php:256
|
105 |
msgid "Buy Addons"
|
106 |
msgstr ""
|
107 |
|
108 |
+
#: bulk-delete.php:284
|
109 |
msgid "WARNING: Posts deleted once cannot be retrieved back. Use with caution."
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: bulk-delete.php:312
|
113 |
+
msgid "plugin"
|
114 |
msgstr ""
|
115 |
|
116 |
+
#: bulk-delete.php:312
|
117 |
+
msgid "Version"
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: bulk-delete.php:312
|
121 |
+
msgid "by"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: bulk-delete.php:321 bulk-delete.php:431 bulk-delete.php:549
|
125 |
+
#: bulk-delete.php:669 bulk-delete.php:823 bulk-delete.php:943
|
126 |
+
#: bulk-delete.php:990
|
127 |
+
msgid ""
|
128 |
+
"This section just got enabled. Kindly <a href = \"%1$s\">refresh</a> the "
|
129 |
+
"page to fully enable it."
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: bulk-delete.php:331 bulk-delete.php:999
|
133 |
msgid "Select the posts which you want to delete"
|
134 |
msgstr ""
|
135 |
|
136 |
+
#: bulk-delete.php:338
|
137 |
msgid "All Draft Posts"
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: bulk-delete.php:338
|
141 |
msgid "Drafts"
|
142 |
msgstr ""
|
143 |
|
144 |
+
#: bulk-delete.php:345
|
145 |
msgid "All Pending posts"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: bulk-delete.php:345 bulk-delete.php:352 bulk-delete.php:359
|
149 |
+
#: bulk-delete.php:450 bulk-delete.php:569 bulk-delete.php:726
|
150 |
msgid "Posts"
|
151 |
msgstr ""
|
152 |
|
153 |
+
#: bulk-delete.php:352
|
154 |
msgid "All scheduled posts"
|
155 |
msgstr ""
|
156 |
|
157 |
+
#: bulk-delete.php:359
|
158 |
msgid "All private posts"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: bulk-delete.php:365 bulk-delete.php:467 bulk-delete.php:586
|
162 |
+
#: bulk-delete.php:740 bulk-delete.php:876 bulk-delete.php:963
|
163 |
msgid "Choose your filtering options"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: bulk-delete.php:372 bulk-delete.php:476 bulk-delete.php:595
|
167 |
+
#: bulk-delete.php:749
|
168 |
msgid "Only restrict to posts which are "
|
169 |
msgstr ""
|
170 |
|
171 |
+
#: bulk-delete.php:374 bulk-delete.php:478 bulk-delete.php:597
|
172 |
+
#: bulk-delete.php:751 bulk-delete.php:885
|
173 |
msgid "older than"
|
174 |
msgstr ""
|
175 |
|
176 |
+
#: bulk-delete.php:375 bulk-delete.php:479 bulk-delete.php:598
|
177 |
+
#: bulk-delete.php:752 bulk-delete.php:886
|
178 |
msgid "posted within last"
|
179 |
msgstr ""
|
180 |
|
181 |
+
#: bulk-delete.php:377 bulk-delete.php:481 bulk-delete.php:600
|
182 |
+
#: bulk-delete.php:754 bulk-delete.php:888
|
183 |
msgid "days"
|
184 |
msgstr ""
|
185 |
|
186 |
+
#: bulk-delete.php:383 bulk-delete.php:487 bulk-delete.php:606
|
187 |
+
#: bulk-delete.php:760 bulk-delete.php:894 bulk-delete.php:969
|
188 |
msgid "Move to Trash"
|
189 |
msgstr ""
|
190 |
|
191 |
+
#: bulk-delete.php:384 bulk-delete.php:488 bulk-delete.php:607
|
192 |
+
#: bulk-delete.php:761 bulk-delete.php:895 bulk-delete.php:970
|
193 |
msgid "Delete permanently"
|
194 |
msgstr ""
|
195 |
|
196 |
+
#: bulk-delete.php:391 bulk-delete.php:504 bulk-delete.php:623
|
197 |
+
#: bulk-delete.php:777 bulk-delete.php:902
|
198 |
msgid "Only delete first "
|
199 |
msgstr ""
|
200 |
|
201 |
+
#: bulk-delete.php:392 bulk-delete.php:505 bulk-delete.php:624
|
202 |
+
#: bulk-delete.php:778 bulk-delete.php:903
|
203 |
msgid "posts."
|
204 |
msgstr ""
|
205 |
|
206 |
+
#: bulk-delete.php:393 bulk-delete.php:506 bulk-delete.php:625
|
207 |
+
#: bulk-delete.php:779 bulk-delete.php:904
|
208 |
msgid ""
|
209 |
"Use this option if there are more than 1000 posts and the script timesout."
|
210 |
msgstr ""
|
211 |
|
212 |
+
#: bulk-delete.php:399 bulk-delete.php:512 bulk-delete.php:631
|
213 |
+
#: bulk-delete.php:785 bulk-delete.php:910
|
214 |
msgid "Delete now"
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: bulk-delete.php:400 bulk-delete.php:513 bulk-delete.php:632
|
218 |
+
#: bulk-delete.php:786 bulk-delete.php:911
|
219 |
#: include/class-cron-list-table.php:96
|
220 |
msgid "Schedule"
|
221 |
msgstr ""
|
222 |
|
223 |
+
#: bulk-delete.php:401 bulk-delete.php:514 bulk-delete.php:633
|
224 |
+
#: bulk-delete.php:787 bulk-delete.php:912
|
225 |
msgid "repeat "
|
226 |
msgstr ""
|
227 |
|
228 |
+
#: bulk-delete.php:403 bulk-delete.php:516 bulk-delete.php:635
|
229 |
+
#: bulk-delete.php:789 bulk-delete.php:914
|
230 |
msgid "Don't repeat"
|
231 |
msgstr ""
|
232 |
|
233 |
+
#: bulk-delete.php:413 bulk-delete.php:526 bulk-delete.php:645
|
234 |
+
#: bulk-delete.php:799 bulk-delete.php:924
|
235 |
msgid "Only available in Pro Addon"
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: bulk-delete.php:420 bulk-delete.php:540 bulk-delete.php:652
|
239 |
+
#: bulk-delete.php:806 bulk-delete.php:931 bulk-delete.php:978
|
240 |
+
#: bulk-delete.php:1014
|
241 |
msgid "Bulk Delete "
|
242 |
msgstr ""
|
243 |
|
244 |
+
#: bulk-delete.php:437
|
|
|
|
|
|
|
|
|
245 |
msgid "Select the categories whose post you want to delete"
|
246 |
msgstr ""
|
247 |
|
248 |
+
#: bulk-delete.php:461
|
249 |
msgid "All Categories"
|
250 |
msgstr ""
|
251 |
|
252 |
+
#: bulk-delete.php:494 bulk-delete.php:613 bulk-delete.php:767
|
253 |
msgid "Public posts"
|
254 |
msgstr ""
|
255 |
|
256 |
+
#: bulk-delete.php:495 bulk-delete.php:614 bulk-delete.php:768
|
257 |
msgid "Private Posts"
|
258 |
msgstr ""
|
259 |
|
260 |
+
#: bulk-delete.php:532
|
261 |
msgid "Enter time in Y-m-d H:i:s format or enter now to use current time"
|
262 |
msgstr ""
|
263 |
|
264 |
+
#: bulk-delete.php:556
|
|
|
|
|
|
|
|
|
265 |
msgid "Select the tags whose post you want to delete"
|
266 |
msgstr ""
|
267 |
|
268 |
+
#: bulk-delete.php:580
|
269 |
msgid "All Tags"
|
270 |
msgstr ""
|
271 |
|
272 |
+
#: bulk-delete.php:658
|
273 |
+
msgid "You don't have any posts assigned to tags in this blog."
|
274 |
msgstr ""
|
275 |
|
276 |
+
#: bulk-delete.php:693
|
277 |
msgid "Select the taxonomies whose post you want to delete"
|
278 |
msgstr ""
|
279 |
|
280 |
+
#: bulk-delete.php:713
|
281 |
msgid ""
|
282 |
"The selected taxonomy has the following terms. Select the terms whose post "
|
283 |
"you want to delete"
|
284 |
msgstr ""
|
285 |
|
286 |
+
#: bulk-delete.php:812
|
287 |
+
msgid "You don't have any posts assigned to custom taxonomies in this blog."
|
288 |
msgstr ""
|
289 |
|
290 |
+
#: bulk-delete.php:835
|
291 |
msgid "Select the pages which you want to delete"
|
292 |
msgstr ""
|
293 |
|
294 |
+
#: bulk-delete.php:842
|
295 |
msgid "All Published Pages"
|
296 |
msgstr ""
|
297 |
|
298 |
+
#: bulk-delete.php:842 bulk-delete.php:849 bulk-delete.php:856
|
299 |
+
#: bulk-delete.php:863 bulk-delete.php:870
|
300 |
msgid "Pages"
|
301 |
msgstr ""
|
302 |
|
303 |
+
#: bulk-delete.php:849
|
304 |
msgid "All Draft Pages"
|
305 |
msgstr ""
|
306 |
|
307 |
+
#: bulk-delete.php:856
|
308 |
msgid "All Scheduled Pages"
|
309 |
msgstr ""
|
310 |
|
311 |
+
#: bulk-delete.php:863
|
312 |
msgid "All Pending Pages"
|
313 |
msgstr ""
|
314 |
|
315 |
+
#: bulk-delete.php:870
|
316 |
msgid "All Private Pages"
|
317 |
msgstr ""
|
318 |
|
319 |
+
#: bulk-delete.php:883
|
320 |
msgid "Only restrict to pages which are "
|
321 |
msgstr ""
|
322 |
|
323 |
+
#: bulk-delete.php:949
|
|
|
|
|
|
|
|
|
324 |
msgid "Delete these specific pages"
|
325 |
msgstr ""
|
326 |
|
327 |
+
#: bulk-delete.php:955
|
328 |
msgid "Enter one post url (not post ids) per line"
|
329 |
msgstr ""
|
330 |
|
331 |
+
#: bulk-delete.php:1006
|
|
|
|
|
|
|
|
|
332 |
msgid "All Revisions"
|
333 |
msgstr ""
|
334 |
|
335 |
+
#: bulk-delete.php:1006
|
336 |
msgid "Revisions"
|
337 |
msgstr ""
|
338 |
|
339 |
+
#: bulk-delete.php:1027
|
|
|
|
|
|
|
|
|
340 |
msgid ""
|
341 |
"If you are seeing a blank page after clicking the Bulk Delete button, then "
|
342 |
msgstr ""
|
343 |
|
344 |
+
#: bulk-delete.php:1027
|
345 |
msgid "check out this FAQ"
|
346 |
msgstr ""
|
347 |
|
348 |
+
#: bulk-delete.php:1028
|
349 |
msgid "You also need need the following debug information."
|
350 |
msgstr ""
|
351 |
|
352 |
+
#: bulk-delete.php:1032
|
353 |
+
msgid "PHP Version "
|
354 |
msgstr ""
|
355 |
|
356 |
+
#: bulk-delete.php:1036
|
357 |
+
msgid "Plugin Version "
|
358 |
msgstr ""
|
359 |
|
360 |
+
#: bulk-delete.php:1040
|
361 |
+
msgid "Available memory size "
|
|
|
|
|
|
|
|
|
362 |
msgstr ""
|
363 |
|
364 |
+
#: bulk-delete.php:1044
|
365 |
+
msgid "Script time out "
|
366 |
msgstr ""
|
367 |
|
368 |
+
#: bulk-delete.php:1048
|
369 |
+
msgid "Script input time "
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: bulk-delete.php:1099
|
373 |
msgid "The selected scheduled job was successfully deleted "
|
374 |
msgstr ""
|
375 |
|
376 |
+
#: bulk-delete.php:1134
|
377 |
msgid "Posts from the selected categories are scheduled for deletion."
|
378 |
msgstr ""
|
379 |
|
380 |
+
#: bulk-delete.php:1135 bulk-delete.php:1166 bulk-delete.php:1198
|
381 |
+
#: bulk-delete.php:1231 bulk-delete.php:1266
|
382 |
msgid "See the full list of <a href = \"%s\">scheduled tasks</a>"
|
383 |
msgstr ""
|
384 |
|
385 |
+
#: bulk-delete.php:1138
|
386 |
msgid "Deleted %d post from the selected categories"
|
387 |
msgid_plural "Deleted %d posts from the selected categories"
|
388 |
msgstr[0] ""
|
389 |
msgstr[1] ""
|
390 |
|
391 |
+
#: bulk-delete.php:1165
|
392 |
msgid "Posts from the selected tags are scheduled for deletion."
|
393 |
msgstr ""
|
394 |
|
395 |
+
#: bulk-delete.php:1169
|
396 |
msgid "Deleted %d post from the selected tags"
|
397 |
msgid_plural "Deleted %d posts from the selected tags"
|
398 |
msgstr[0] ""
|
399 |
msgstr[1] ""
|
400 |
|
401 |
+
#: bulk-delete.php:1197
|
402 |
msgid "Posts from the selected custom taxonomies are scheduled for deletion."
|
403 |
msgstr ""
|
404 |
|
405 |
+
#: bulk-delete.php:1201
|
406 |
msgid "Deleted %d post from the selected custom taxonomies"
|
407 |
msgid_plural "Deleted %d posts from the selected custom taxonomies"
|
408 |
msgstr[0] ""
|
409 |
msgstr[1] ""
|
410 |
|
411 |
+
#: bulk-delete.php:1230
|
412 |
msgid "Posts with the selected status are scheduled for deletion."
|
413 |
msgstr ""
|
414 |
|
415 |
+
#: bulk-delete.php:1234
|
416 |
msgid "Deleted %d post with the selected post status"
|
417 |
msgid_plural "Deleted %d posts with the selected post status"
|
418 |
msgstr[0] ""
|
419 |
msgstr[1] ""
|
420 |
|
421 |
+
#: bulk-delete.php:1265
|
422 |
msgid "The selected pages are scheduled for deletion."
|
423 |
msgstr ""
|
424 |
|
425 |
+
#: bulk-delete.php:1269
|
426 |
msgid "Deleted %d page"
|
427 |
msgid_plural "Deleted %d pages"
|
428 |
msgstr[0] ""
|
429 |
msgstr[1] ""
|
430 |
|
431 |
+
#: bulk-delete.php:1295
|
432 |
msgid "Deleted %d post with the specified urls"
|
433 |
msgid_plural "Deleted %d posts with the specified urls"
|
434 |
msgstr[0] ""
|
435 |
msgstr[1] ""
|
436 |
|
437 |
+
#: bulk-delete.php:1304
|
438 |
msgid "Deleted %d post revision"
|
439 |
msgid_plural "Deleted %d post revisions"
|
440 |
msgstr[0] ""
|
441 |
msgstr[1] ""
|
442 |
|
443 |
+
#: bulk-delete.php:1678
|
444 |
msgctxt "Cron table date format"
|
445 |
msgid "M j, Y @ G:i"
|
446 |
msgstr ""
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: post, comment, delete, bulk, mass, draft, revision, page
|
|
4 |
Requires at least: 2.0
|
5 |
Tested up to: 3.5.1
|
6 |
Donate Link: http://sudarmuthu.com/if-you-wanna-thank-me
|
7 |
-
Stable tag: 3.
|
8 |
|
9 |
Bulk delete posts from selected categories, tags, custom taxonomies or by post type like drafts, scheduled posts, revisions etc.
|
10 |
|
@@ -63,7 +63,6 @@ Like posts, all the above options support the following filters as well
|
|
63 |
|
64 |
Coming soon :)
|
65 |
|
66 |
-
|
67 |
As you can see, the Plugin provide comprehensive options and filters to perform bulk deletion.
|
68 |
|
69 |
If you looking for just moving posts, instead of deleting, then use [Bulk Move Plugin][2] instead.
|
@@ -90,7 +89,6 @@ If you are looking for ideas, then you can start with one of the following TODO
|
|
90 |
|
91 |
The following are the features that I am thinking of adding to the Plugin, when I get some free time. If you have any feature request or want to increase the priority of a particular feature, then let me know.
|
92 |
|
93 |
-
- Ability to choose the different sections that should be loaded
|
94 |
- Bulk Delete by custom post types
|
95 |
- Bulk Delete posts based on page views
|
96 |
- Bulk Delete sticky posts
|
@@ -101,6 +99,7 @@ The following are the features that I am thinking of adding to the Plugin, when
|
|
101 |
- Delete images that are used by the posts that are being deleted
|
102 |
- <del>Change the message based on the option the user has chosen</del> - Added in v3.3
|
103 |
- <del>Expandable/collapsible taxonomies</del> - Added in v3.3
|
|
|
104 |
|
105 |
### Support
|
106 |
|
@@ -123,28 +122,19 @@ The following are the features that I am thinking of adding to the Plugin, when
|
|
123 |
|
124 |
The Plugin currently has translations for the following languages.
|
125 |
|
126 |
-
* Dutch (Thanks Rene
|
127 |
-
* Brazilian Portuguese (Thanks Marcelo of
|
128 |
-
* German (Thanks Jenny Beelens
|
129 |
-
* Turkish Portuguese (Thanks
|
130 |
-
* Spanish (Thanks Brian Flores
|
131 |
* Italian (Thanks Paolo Gabrielli)
|
132 |
-
* Bulgarian (Thanks Nikolay Nikolov
|
133 |
-
* Russian (Thanks Maxim Pesteev
|
134 |
-
* Lithuanian (Thanks Vincent G
|
135 |
* Hindi (Thanks Love Chandel)
|
136 |
* Serbian (Thanks Diana)
|
137 |
|
138 |
-
The pot file is available with the Plugin. If you are willing to do translation for the Plugin, use the pot file to create the .po files for your language and let me know.
|
139 |
-
|
140 |
-
[10]: http://www.inmotionhosting.com/
|
141 |
-
[11]: http://en.chat4o.com/
|
142 |
-
[12]: http://www.weblancer.net/users/Kirky/
|
143 |
-
[13]: http://www.host1free.com
|
144 |
-
[14]: http://wpwebshop.com/premium-wordpress-plugins/
|
145 |
-
[15]: http://www.techload.com.br/
|
146 |
-
[16]: http://www.professionaltranslation.com
|
147 |
-
[17]: http://www.matematik.us
|
148 |
|
149 |
== Credits ==
|
150 |
|
@@ -168,6 +158,12 @@ In particular try to change the following settings
|
|
168 |
* `max_input_time = 30` - Maximum amount of time each script may spend parsing request data
|
169 |
* `memory_limit = 256M` - Maximum amount of memory a script may consume
|
170 |
|
|
|
|
|
|
|
|
|
|
|
|
|
171 |
= How do I know what are the current values for these options configured in my server? =
|
172 |
|
173 |
Scroll down to the button of the Plugin page and you can see the current values of these options printed for your reference under the “Debug Information” heading
|
@@ -196,8 +192,14 @@ The ability to schedule deletion of posts is available as a pro addon.
|
|
196 |
|
197 |
7. The above screenshot shows the scheduled auto delete jobs will be displayed. Note that this feature is available only when you buy [pro addons](http://sudarmuthu.com/wordpress/bulk-delete/pro-addons).
|
198 |
|
|
|
|
|
199 |
== Changelog ==
|
200 |
|
|
|
|
|
|
|
|
|
201 |
= 2013-05-11 - v3.3 - (Dev time: 10 hours) =
|
202 |
* Enhanced the deletion of posts using custom taxonomies
|
203 |
* Added the ability to schedule auto delete of taxonomies by date
|
@@ -304,6 +306,9 @@ The ability to schedule deletion of posts is available as a pro addon.
|
|
304 |
|
305 |
== Upgrade Notice ==
|
306 |
|
|
|
|
|
|
|
307 |
= 3.3 =
|
308 |
Fixed issues in deleting posts using custom taxonomy
|
309 |
|
4 |
Requires at least: 2.0
|
5 |
Tested up to: 3.5.1
|
6 |
Donate Link: http://sudarmuthu.com/if-you-wanna-thank-me
|
7 |
+
Stable tag: 3.4
|
8 |
|
9 |
Bulk delete posts from selected categories, tags, custom taxonomies or by post type like drafts, scheduled posts, revisions etc.
|
10 |
|
63 |
|
64 |
Coming soon :)
|
65 |
|
|
|
66 |
As you can see, the Plugin provide comprehensive options and filters to perform bulk deletion.
|
67 |
|
68 |
If you looking for just moving posts, instead of deleting, then use [Bulk Move Plugin][2] instead.
|
89 |
|
90 |
The following are the features that I am thinking of adding to the Plugin, when I get some free time. If you have any feature request or want to increase the priority of a particular feature, then let me know.
|
91 |
|
|
|
92 |
- Bulk Delete by custom post types
|
93 |
- Bulk Delete posts based on page views
|
94 |
- Bulk Delete sticky posts
|
99 |
- Delete images that are used by the posts that are being deleted
|
100 |
- <del>Change the message based on the option the user has chosen</del> - Added in v3.3
|
101 |
- <del>Expandable/collapsible taxonomies</del> - Added in v3.3
|
102 |
+
- <del>Ability to choose the different sections that should be loaded</del> - Added in v3.4
|
103 |
|
104 |
### Support
|
105 |
|
122 |
|
123 |
The Plugin currently has translations for the following languages.
|
124 |
|
125 |
+
* Dutch (Thanks Rene)
|
126 |
+
* Brazilian Portuguese (Thanks Marcelo of Criacao de Sites em Ribeirao Preto)
|
127 |
+
* German (Thanks Jenny Beelens)
|
128 |
+
* Turkish Portuguese (Thanks Bahadir Yildiz)
|
129 |
+
* Spanish (Thanks Brian Flores)
|
130 |
* Italian (Thanks Paolo Gabrielli)
|
131 |
+
* Bulgarian (Thanks Nikolay Nikolov)
|
132 |
+
* Russian (Thanks Maxim Pesteev)
|
133 |
+
* Lithuanian (Thanks Vincent G)
|
134 |
* Hindi (Thanks Love Chandel)
|
135 |
* Serbian (Thanks Diana)
|
136 |
|
137 |
+
The pot file is available with the Plugin. If you are willing to do translation for the Plugin, use the pot file to create the .po files for your language and let me know.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
|
139 |
== Credits ==
|
140 |
|
158 |
* `max_input_time = 30` - Maximum amount of time each script may spend parsing request data
|
159 |
* `memory_limit = 256M` - Maximum amount of memory a script may consume
|
160 |
|
161 |
+
You can also try to disable different sections of the Plugin, if you have huge number of posts.
|
162 |
+
|
163 |
+
= How do I disable different sections of the Plugin =
|
164 |
+
|
165 |
+
You can enable or disable different sections of the Plugin by choosing the required modules in the screen option. You can open screen options by clicking the link in the top right corner of the Plugin page.
|
166 |
+
|
167 |
= How do I know what are the current values for these options configured in my server? =
|
168 |
|
169 |
Scroll down to the button of the Plugin page and you can see the current values of these options printed for your reference under the “Debug Information” heading
|
192 |
|
193 |
7. The above screenshot shows the scheduled auto delete jobs will be displayed. Note that this feature is available only when you buy [pro addons](http://sudarmuthu.com/wordpress/bulk-delete/pro-addons).
|
194 |
|
195 |
+
8. The above screenshot shows how you can enable/disable different sections of the Plugin.
|
196 |
+
|
197 |
== Changelog ==
|
198 |
|
199 |
+
= 2013-05-22 - v3.4 - (Dev time: 20 hours) =
|
200 |
+
* Incorporated Screen API to select/deselect different sections of the page
|
201 |
+
* Load only sections that are selected by the user
|
202 |
+
|
203 |
= 2013-05-11 - v3.3 - (Dev time: 10 hours) =
|
204 |
* Enhanced the deletion of posts using custom taxonomies
|
205 |
* Added the ability to schedule auto delete of taxonomies by date
|
306 |
|
307 |
== Upgrade Notice ==
|
308 |
|
309 |
+
= 3.4 =
|
310 |
+
Added the ability to disable different sections of the Plugin.
|
311 |
+
|
312 |
= 3.3 =
|
313 |
Fixed issues in deleting posts using custom taxonomy
|
314 |
|