Version Description
- Moved plugin class to singleton model
- Improved language handling
- French translation - thanks @bastho - http://wordpress.org/support/profile/bastho
Download this release
Release Info
Developer | qlstudio |
Plugin | Export User Data |
Version | 0.9.0 |
Comparing to | |
See all releases |
Code changes from version 0.8.3 to 0.9.0
- export-user-data.php +88 -63
- languages/default.mo +0 -0
- languages/default.po +6 -6
- languages/export-user-data-fr_FR.mo +0 -0
- languages/export-user-data-fr_FR.po +166 -0
- readme.txt +10 -5
export-user-data.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
Plugin Name: Export User Data
|
5 |
Plugin URI: http://qstudio.us/plugins/
|
6 |
Description: Export User data, metadata and BuddyPressX Profile data.
|
7 |
-
Version: 0.
|
8 |
Author: Q Studio
|
9 |
Author URI: http://qstudio.us
|
10 |
License: GPL2
|
@@ -15,53 +15,64 @@ Text Domain: export-user-data
|
|
15 |
defined( 'ABSPATH' ) OR exit;
|
16 |
|
17 |
/* Check for Class */
|
18 |
-
if ( ! class_exists( '
|
19 |
{
|
20 |
-
|
|
|
|
|
|
|
21 |
// instatiate class via hook, only if inside admin
|
22 |
if ( is_admin() ) {
|
23 |
|
24 |
// instatiate plugin via WP hook - not too early, not too late ##
|
25 |
-
add_action( 'init', array ( '
|
26 |
|
27 |
}
|
28 |
|
29 |
-
/*
|
30 |
-
* Load plugin text-domain
|
31 |
-
*/
|
32 |
-
load_plugin_textdomain( 'export-user-data', false, basename( dirname( __FILE__ ) ) . '/languages' );
|
33 |
-
|
34 |
|
35 |
/**
|
36 |
* Main plugin class
|
37 |
*
|
38 |
* @since 0.1
|
39 |
**/
|
40 |
-
class
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
/**
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
|
|
|
|
53 |
}
|
54 |
|
|
|
55 |
/**
|
56 |
* Class contructor
|
57 |
*
|
58 |
* @since 0.1
|
59 |
**/
|
60 |
-
|
61 |
{
|
62 |
|
63 |
if (is_admin() ) {
|
64 |
-
|
|
|
65 |
add_action( 'admin_menu', array( $this, 'add_admin_pages' ) );
|
66 |
add_action( 'init', array( $this, 'generate_data' ) );
|
67 |
add_filter( 'q_eud_exclude_data', array( $this, 'exclude_data' ) );
|
@@ -72,7 +83,20 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
72 |
}
|
73 |
|
74 |
}
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
|
77 |
/**
|
78 |
* Add administration menus
|
@@ -82,17 +106,17 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
82 |
public function add_admin_pages()
|
83 |
{
|
84 |
|
85 |
-
add_users_page( __( 'Export User Data',
|
86 |
|
87 |
}
|
88 |
|
89 |
|
90 |
/* style and interaction */
|
91 |
-
function add_css_and_js( $hook )
|
92 |
{
|
93 |
|
94 |
// load the scripts on only the plugin admin page
|
95 |
-
if (isset( $_GET['page'] ) && ( $_GET['page'] ==
|
96 |
|
97 |
wp_register_style('q_eud_multi_select_css', plugins_url('css/multi-select.css',__FILE__ ));
|
98 |
wp_enqueue_style('q_eud_multi_select_css');
|
@@ -433,6 +457,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
433 |
|
434 |
}
|
435 |
|
|
|
436 |
/**
|
437 |
* Content of the settings page
|
438 |
*
|
@@ -442,17 +467,17 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
442 |
{
|
443 |
|
444 |
if ( ! current_user_can( 'list_users' ) ) {
|
445 |
-
wp_die( __( 'You do not have sufficient permissions to access this page.',
|
446 |
}
|
447 |
?>
|
448 |
|
449 |
<div class="wrap">
|
450 |
-
<h2><?php _e( 'Export User Data',
|
451 |
<?php
|
452 |
|
453 |
// nothing happening? ##
|
454 |
if ( isset( $_GET['error'] ) ) {
|
455 |
-
echo '<div class="updated"><p><strong>' . __( 'No users found.',
|
456 |
}
|
457 |
|
458 |
?>
|
@@ -508,9 +533,9 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
508 |
?>
|
509 |
<tr valign="top">
|
510 |
<th scope="row">
|
511 |
-
<label for="q_eud_usermeta"><?php _e( 'User Meta Fields',
|
512 |
<p class="filter" style="margin: 10px 0 0;">
|
513 |
-
<?php _e('Filter',
|
514 |
</p>
|
515 |
</th>
|
516 |
<td>
|
@@ -561,7 +586,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
561 |
</select>
|
562 |
<p class="description"><?php
|
563 |
printf(
|
564 |
-
__( 'Select the user meta keys to export, use the filters to simplify the list.',
|
565 |
);
|
566 |
?></p>
|
567 |
</td>
|
@@ -590,7 +615,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
590 |
|
591 |
?>
|
592 |
<tr valign="top">
|
593 |
-
<th scope="row"><label for="q_eud_xprofile"><?php _e( 'BP xProfile Fields',
|
594 |
<td>
|
595 |
<select multiple="multiple" id="bp_fields" name="bp_fields[]">
|
596 |
<?php
|
@@ -611,7 +636,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
611 |
</select>
|
612 |
<p class="description"><?php
|
613 |
printf(
|
614 |
-
__( 'Select the BuddyPress XProfile keys to export',
|
615 |
);
|
616 |
?></p>
|
617 |
</td>
|
@@ -623,7 +648,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
623 |
?>
|
624 |
<tr valign="top" class="toggleable">
|
625 |
<th scope="row">
|
626 |
-
<label for="q_eud_xprofile"><?php _e( 'BP xProfile Fields Update Time',
|
627 |
</th>
|
628 |
<td>
|
629 |
<select multiple="multiple" id="bp_fields_update_time" name="bp_fields_update_time[]">
|
@@ -639,7 +664,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
639 |
</select>
|
640 |
<p class="description"><?php
|
641 |
printf(
|
642 |
-
__( 'Select the BuddyPress XProfile keys updated dates to export',
|
643 |
);
|
644 |
?></p>
|
645 |
</td>
|
@@ -650,12 +675,12 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
650 |
|
651 |
?>
|
652 |
<tr valign="top" class="toggleable">
|
653 |
-
<th scope="row"><label for="q_eud_users_role"><?php _e( 'Role',
|
654 |
<td>
|
655 |
<select name="role" id="q_eud_users_role">
|
656 |
<?php
|
657 |
|
658 |
-
echo '<option value="">' . __( 'All Roles',
|
659 |
global $wp_roles;
|
660 |
foreach ( $wp_roles->role_names as $role => $name ) {
|
661 |
echo "\n\t<option value='" . esc_attr( $role ) . "'>$name</option>";
|
@@ -665,7 +690,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
665 |
</select>
|
666 |
<p class="description"><?php
|
667 |
printf(
|
668 |
-
__( 'Filter the exported users by a WordPress Role. <a href="%s" target="_blank">%s</a>',
|
669 |
, esc_html('http://codex.wordpress.org/Roles_and_Capabilities')
|
670 |
, 'Codex'
|
671 |
);
|
@@ -679,12 +704,12 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
679 |
|
680 |
?>
|
681 |
<tr valign="top" class="toggleable">
|
682 |
-
<th scope="row"><label for="q_eud_users_program"><?php _e( 'Programs',
|
683 |
<td>
|
684 |
<select name="program" id="q_eud_users_program">
|
685 |
<?php
|
686 |
|
687 |
-
echo '<option value="">' . __( 'All Programs',
|
688 |
|
689 |
$clubs_array = get_posts(array( 'post_type'=> 'club', 'posts_per_page' => -1 )); // grab all posts of type "club" ##
|
690 |
|
@@ -705,32 +730,32 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
705 |
|
706 |
?>
|
707 |
<tr valign="top" class="toggleable">
|
708 |
-
<th scope="row"><label><?php _e( 'Registered',
|
709 |
<td>
|
710 |
<select name="start_date" id="q_eud_users_start_date">
|
711 |
-
<option value="0"><?php _e( 'Start Date',
|
712 |
<?php $this->export_date_options(); ?>
|
713 |
</select>
|
714 |
<select name="end_date" id="q_eud_users_end_date">
|
715 |
-
<option value="0"><?php _e( 'End Date',
|
716 |
<?php $this->export_date_options(); ?>
|
717 |
</select>
|
718 |
<p class="description"><?php
|
719 |
printf(
|
720 |
-
__( 'Pick a start and end user registration date to limit the results.',
|
721 |
);
|
722 |
?></p>
|
723 |
</td>
|
724 |
</tr>
|
725 |
|
726 |
<tr valign="top" class="toggleable">
|
727 |
-
<th scope="row"><label><?php _e( 'Limit Range',
|
728 |
<td>
|
729 |
-
<input name="limit_offset" type="text" id="q_eud_users_limit_offset" value="" class="regular-text code numeric" style="width: 136px;" placeholder="<?php _e( 'Offset',
|
730 |
-
<input name="limit_total" type="text" id="q_eud_users_limit_total" value="" class="regular-text code numeric" style="width: 136px;" placeholder="<?php _e( 'Total',
|
731 |
<p class="description"><?php
|
732 |
printf(
|
733 |
-
__( 'Enter an offset start number and a total number of users to export. <a href="%s" target="_blank">%s</a>',
|
734 |
, esc_html('http://codex.wordpress.org/Function_Reference/get_users#Parameters')
|
735 |
, 'Codex'
|
736 |
);
|
@@ -739,19 +764,19 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
739 |
</tr>
|
740 |
|
741 |
<tr valign="top">
|
742 |
-
<th scope="row"><label for="q_eud_users_format"><?php _e( 'Format',
|
743 |
<td>
|
744 |
<select name="format" id="q_eud_users_format">
|
745 |
<?php
|
746 |
|
747 |
-
echo '<option value="excel">' . __( 'Excel',
|
748 |
-
echo '<option value="csv">' . __( 'CSV',
|
749 |
|
750 |
?>
|
751 |
</select>
|
752 |
<p class="description"><?php
|
753 |
printf(
|
754 |
-
__( 'Select the format for the export file.',
|
755 |
);
|
756 |
?></p>
|
757 |
</td>
|
@@ -759,11 +784,11 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
759 |
|
760 |
<tr valign="top">
|
761 |
<th scope="row">
|
762 |
-
<label for="q_eud_xprofile"><?php _e( 'Advanced Options',
|
763 |
</th>
|
764 |
<td>
|
765 |
<div class="toggle">
|
766 |
-
<a href="#"><?php _e( 'Show',
|
767 |
</div>
|
768 |
</td>
|
769 |
</tr>
|
@@ -771,7 +796,7 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
771 |
</table>
|
772 |
<p class="submit">
|
773 |
<input type="hidden" name="_wp_http_referer" value="<?php echo $_SERVER['REQUEST_URI'] ?>" />
|
774 |
-
<input type="submit" class="button-primary" value="<?php _e( 'Export',
|
775 |
</p>
|
776 |
</form>
|
777 |
|
@@ -783,11 +808,11 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
783 |
* Inline jQuery
|
784 |
* @since 0.8.2
|
785 |
*/
|
786 |
-
function jquery()
|
787 |
{
|
788 |
|
789 |
// load the scripts on only the plugin admin page
|
790 |
-
if (isset( $_GET['page'] ) && ( $_GET['page'] ==
|
791 |
?>
|
792 |
<script>
|
793 |
|
@@ -835,9 +860,9 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
835 |
$toggleable = jQuery("tr.toggleable");
|
836 |
$toggleable.toggle();
|
837 |
if ( $toggleable.is(":visible") ) {
|
838 |
-
jQuery(this).text("<?php _e( 'Hide',
|
839 |
} else {
|
840 |
-
jQuery(this).text("<?php _e( 'Show',
|
841 |
}
|
842 |
});
|
843 |
|
@@ -854,11 +879,11 @@ if ( ! class_exists( 'Q_EUD_Export_Users' ) )
|
|
854 |
* Inline CSS
|
855 |
* @since 0.8.2
|
856 |
*/
|
857 |
-
function css()
|
858 |
{
|
859 |
|
860 |
// load the scripts on only the plugin admin page
|
861 |
-
if (isset( $_GET['page'] ) && ( $_GET['page'] ==
|
862 |
?>
|
863 |
<style>
|
864 |
.toggleable { display: none; }
|
4 |
Plugin Name: Export User Data
|
5 |
Plugin URI: http://qstudio.us/plugins/
|
6 |
Description: Export User data, metadata and BuddyPressX Profile data.
|
7 |
+
Version: 0.9.0
|
8 |
Author: Q Studio
|
9 |
Author URI: http://qstudio.us
|
10 |
License: GPL2
|
15 |
defined( 'ABSPATH' ) OR exit;
|
16 |
|
17 |
/* Check for Class */
|
18 |
+
if ( ! class_exists( 'Q_Export_User_Data' ) )
|
19 |
{
|
20 |
+
|
21 |
+
// plugin version
|
22 |
+
define( 'Q_EXPORT_USER_DATA_VERSION', '0.9.0' ); // version ##
|
23 |
+
|
24 |
// instatiate class via hook, only if inside admin
|
25 |
if ( is_admin() ) {
|
26 |
|
27 |
// instatiate plugin via WP hook - not too early, not too late ##
|
28 |
+
add_action( 'init', array ( 'Q_Export_User_Data', 'get_instance' ), 0 );
|
29 |
|
30 |
}
|
31 |
|
|
|
|
|
|
|
|
|
|
|
32 |
|
33 |
/**
|
34 |
* Main plugin class
|
35 |
*
|
36 |
* @since 0.1
|
37 |
**/
|
38 |
+
class Q_Export_User_Data {
|
39 |
+
|
40 |
+
|
41 |
+
// Refers to a single instance of this class. ##
|
42 |
+
private static $instance = null;
|
43 |
+
|
44 |
+
|
45 |
+
/* properties */
|
46 |
+
public $text_domain = 'export-user-data'; // for translation ##
|
47 |
+
|
48 |
+
|
49 |
/**
|
50 |
+
* Creates or returns an instance of this class.
|
51 |
+
*
|
52 |
+
* @return Foo A single instance of this class.
|
53 |
+
*/
|
54 |
+
public static function get_instance() {
|
55 |
+
|
56 |
+
if ( null == self::$instance ) {
|
57 |
+
self::$instance = new self;
|
58 |
+
}
|
59 |
+
|
60 |
+
return self::$instance;
|
61 |
+
|
62 |
}
|
63 |
|
64 |
+
|
65 |
/**
|
66 |
* Class contructor
|
67 |
*
|
68 |
* @since 0.1
|
69 |
**/
|
70 |
+
private function __construct()
|
71 |
{
|
72 |
|
73 |
if (is_admin() ) {
|
74 |
+
|
75 |
+
add_action( 'init', array( $this, 'load_plugin_textdomain' ) );
|
76 |
add_action( 'admin_menu', array( $this, 'add_admin_pages' ) );
|
77 |
add_action( 'init', array( $this, 'generate_data' ) );
|
78 |
add_filter( 'q_eud_exclude_data', array( $this, 'exclude_data' ) );
|
83 |
}
|
84 |
|
85 |
}
|
86 |
+
|
87 |
+
|
88 |
+
/**
|
89 |
+
* Load plugin text-domain
|
90 |
+
*
|
91 |
+
* @since 0.9.0
|
92 |
+
* @return void
|
93 |
+
**/
|
94 |
+
public function load_plugin_textdomain()
|
95 |
+
{
|
96 |
+
|
97 |
+
load_plugin_textdomain( $this->text_domain, false, basename( dirname( __FILE__ ) ) . '/languages' );
|
98 |
+
|
99 |
+
}
|
100 |
|
101 |
/**
|
102 |
* Add administration menus
|
106 |
public function add_admin_pages()
|
107 |
{
|
108 |
|
109 |
+
add_users_page( __( 'Export User Data', $this->text_domain ), __( 'Export User Data', $this->text_domain ), 'list_users', $this->text_domain, array( $this, 'users_page' ) );
|
110 |
|
111 |
}
|
112 |
|
113 |
|
114 |
/* style and interaction */
|
115 |
+
public function add_css_and_js( $hook )
|
116 |
{
|
117 |
|
118 |
// load the scripts on only the plugin admin page
|
119 |
+
if (isset( $_GET['page'] ) && ( $_GET['page'] == $this->text_domain ) ) {
|
120 |
|
121 |
wp_register_style('q_eud_multi_select_css', plugins_url('css/multi-select.css',__FILE__ ));
|
122 |
wp_enqueue_style('q_eud_multi_select_css');
|
457 |
|
458 |
}
|
459 |
|
460 |
+
|
461 |
/**
|
462 |
* Content of the settings page
|
463 |
*
|
467 |
{
|
468 |
|
469 |
if ( ! current_user_can( 'list_users' ) ) {
|
470 |
+
wp_die( __( 'You do not have sufficient permissions to access this page.', $this->text_domain ) );
|
471 |
}
|
472 |
?>
|
473 |
|
474 |
<div class="wrap">
|
475 |
+
<h2><?php _e( 'Export User Data', $this->text_domain ); ?></h2>
|
476 |
<?php
|
477 |
|
478 |
// nothing happening? ##
|
479 |
if ( isset( $_GET['error'] ) ) {
|
480 |
+
echo '<div class="updated"><p><strong>' . __( 'No users found.', $this->text_domain ) . '</strong></p></div>';
|
481 |
}
|
482 |
|
483 |
?>
|
533 |
?>
|
534 |
<tr valign="top">
|
535 |
<th scope="row">
|
536 |
+
<label for="q_eud_usermeta"><?php _e( 'User Meta Fields', $this->text_domain ); ?></label>
|
537 |
<p class="filter" style="margin: 10px 0 0;">
|
538 |
+
<?php _e('Filter', $this->text_domain); ?>: <a href="#" class="usermeta-all"><?php _e('All', $this->text_domain); ?></a> | <a href="#" class="usermeta-common"><?php _e('Common', $this->text_domain); ?></a>
|
539 |
</p>
|
540 |
</th>
|
541 |
<td>
|
586 |
</select>
|
587 |
<p class="description"><?php
|
588 |
printf(
|
589 |
+
__( 'Select the user meta keys to export, use the filters to simplify the list.', $this->text_domain )
|
590 |
);
|
591 |
?></p>
|
592 |
</td>
|
615 |
|
616 |
?>
|
617 |
<tr valign="top">
|
618 |
+
<th scope="row"><label for="q_eud_xprofile"><?php _e( 'BP xProfile Fields', $this->text_domain ); ?></label></th>
|
619 |
<td>
|
620 |
<select multiple="multiple" id="bp_fields" name="bp_fields[]">
|
621 |
<?php
|
636 |
</select>
|
637 |
<p class="description"><?php
|
638 |
printf(
|
639 |
+
__( 'Select the BuddyPress XProfile keys to export', $this->text_domain )
|
640 |
);
|
641 |
?></p>
|
642 |
</td>
|
648 |
?>
|
649 |
<tr valign="top" class="toggleable">
|
650 |
<th scope="row">
|
651 |
+
<label for="q_eud_xprofile"><?php _e( 'BP xProfile Fields Update Time', $this->text_domain ); ?></label>
|
652 |
</th>
|
653 |
<td>
|
654 |
<select multiple="multiple" id="bp_fields_update_time" name="bp_fields_update_time[]">
|
664 |
</select>
|
665 |
<p class="description"><?php
|
666 |
printf(
|
667 |
+
__( 'Select the BuddyPress XProfile keys updated dates to export', $this->text_domain )
|
668 |
);
|
669 |
?></p>
|
670 |
</td>
|
675 |
|
676 |
?>
|
677 |
<tr valign="top" class="toggleable">
|
678 |
+
<th scope="row"><label for="q_eud_users_role"><?php _e( 'Role', $this->text_domain ); ?></label></th>
|
679 |
<td>
|
680 |
<select name="role" id="q_eud_users_role">
|
681 |
<?php
|
682 |
|
683 |
+
echo '<option value="">' . __( 'All Roles', $this->text_domain ) . '</option>';
|
684 |
global $wp_roles;
|
685 |
foreach ( $wp_roles->role_names as $role => $name ) {
|
686 |
echo "\n\t<option value='" . esc_attr( $role ) . "'>$name</option>";
|
690 |
</select>
|
691 |
<p class="description"><?php
|
692 |
printf(
|
693 |
+
__( 'Filter the exported users by a WordPress Role. <a href="%s" target="_blank">%s</a>', $this->text_domain )
|
694 |
, esc_html('http://codex.wordpress.org/Roles_and_Capabilities')
|
695 |
, 'Codex'
|
696 |
);
|
704 |
|
705 |
?>
|
706 |
<tr valign="top" class="toggleable">
|
707 |
+
<th scope="row"><label for="q_eud_users_program"><?php _e( 'Programs', $this->text_domain ); ?></label></th>
|
708 |
<td>
|
709 |
<select name="program" id="q_eud_users_program">
|
710 |
<?php
|
711 |
|
712 |
+
echo '<option value="">' . __( 'All Programs', $this->text_domain ) . '</option>';
|
713 |
|
714 |
$clubs_array = get_posts(array( 'post_type'=> 'club', 'posts_per_page' => -1 )); // grab all posts of type "club" ##
|
715 |
|
730 |
|
731 |
?>
|
732 |
<tr valign="top" class="toggleable">
|
733 |
+
<th scope="row"><label><?php _e( 'Registered', $this->text_domain ); ?></label></th>
|
734 |
<td>
|
735 |
<select name="start_date" id="q_eud_users_start_date">
|
736 |
+
<option value="0"><?php _e( 'Start Date', $this->text_domain ); ?></option>
|
737 |
<?php $this->export_date_options(); ?>
|
738 |
</select>
|
739 |
<select name="end_date" id="q_eud_users_end_date">
|
740 |
+
<option value="0"><?php _e( 'End Date', $this->text_domain ); ?></option>
|
741 |
<?php $this->export_date_options(); ?>
|
742 |
</select>
|
743 |
<p class="description"><?php
|
744 |
printf(
|
745 |
+
__( 'Pick a start and end user registration date to limit the results.', $this->text_domain )
|
746 |
);
|
747 |
?></p>
|
748 |
</td>
|
749 |
</tr>
|
750 |
|
751 |
<tr valign="top" class="toggleable">
|
752 |
+
<th scope="row"><label><?php _e( 'Limit Range', $this->text_domain ); ?></label></th>
|
753 |
<td>
|
754 |
+
<input name="limit_offset" type="text" id="q_eud_users_limit_offset" value="" class="regular-text code numeric" style="width: 136px;" placeholder="<?php _e( 'Offset', $this->text_domain ); ?>">
|
755 |
+
<input name="limit_total" type="text" id="q_eud_users_limit_total" value="" class="regular-text code numeric" style="width: 136px;" placeholder="<?php _e( 'Total', $this->text_domain ); ?>">
|
756 |
<p class="description"><?php
|
757 |
printf(
|
758 |
+
__( 'Enter an offset start number and a total number of users to export. <a href="%s" target="_blank">%s</a>', $this->text_domain )
|
759 |
, esc_html('http://codex.wordpress.org/Function_Reference/get_users#Parameters')
|
760 |
, 'Codex'
|
761 |
);
|
764 |
</tr>
|
765 |
|
766 |
<tr valign="top">
|
767 |
+
<th scope="row"><label for="q_eud_users_format"><?php _e( 'Format', $this->text_domain ); ?></label></th>
|
768 |
<td>
|
769 |
<select name="format" id="q_eud_users_format">
|
770 |
<?php
|
771 |
|
772 |
+
echo '<option value="excel">' . __( 'Excel', $this->text_domain ) . '</option>';
|
773 |
+
echo '<option value="csv">' . __( 'CSV', $this->text_domain ) . '</option>';
|
774 |
|
775 |
?>
|
776 |
</select>
|
777 |
<p class="description"><?php
|
778 |
printf(
|
779 |
+
__( 'Select the format for the export file.', $this->text_domain )
|
780 |
);
|
781 |
?></p>
|
782 |
</td>
|
784 |
|
785 |
<tr valign="top">
|
786 |
<th scope="row">
|
787 |
+
<label for="q_eud_xprofile"><?php _e( 'Advanced Options', $this->text_domain ); ?></label>
|
788 |
</th>
|
789 |
<td>
|
790 |
<div class="toggle">
|
791 |
+
<a href="#"><?php _e( 'Show', $this->text_domain ); ?></a>
|
792 |
</div>
|
793 |
</td>
|
794 |
</tr>
|
796 |
</table>
|
797 |
<p class="submit">
|
798 |
<input type="hidden" name="_wp_http_referer" value="<?php echo $_SERVER['REQUEST_URI'] ?>" />
|
799 |
+
<input type="submit" class="button-primary" value="<?php _e( 'Export', $this->text_domain ); ?>" />
|
800 |
</p>
|
801 |
</form>
|
802 |
|
808 |
* Inline jQuery
|
809 |
* @since 0.8.2
|
810 |
*/
|
811 |
+
public function jquery()
|
812 |
{
|
813 |
|
814 |
// load the scripts on only the plugin admin page
|
815 |
+
if (isset( $_GET['page'] ) && ( $_GET['page'] == $this->text_domain ) ) {
|
816 |
?>
|
817 |
<script>
|
818 |
|
860 |
$toggleable = jQuery("tr.toggleable");
|
861 |
$toggleable.toggle();
|
862 |
if ( $toggleable.is(":visible") ) {
|
863 |
+
jQuery(this).text("<?php _e( 'Hide', $this->text_domain ); ?>");
|
864 |
} else {
|
865 |
+
jQuery(this).text("<?php _e( 'Show', $this->text_domain ); ?>");
|
866 |
}
|
867 |
});
|
868 |
|
879 |
* Inline CSS
|
880 |
* @since 0.8.2
|
881 |
*/
|
882 |
+
public function css()
|
883 |
{
|
884 |
|
885 |
// load the scripts on only the plugin admin page
|
886 |
+
if (isset( $_GET['page'] ) && ( $_GET['page'] == $this->text_domain ) ) {
|
887 |
?>
|
888 |
<style>
|
889 |
.toggleable { display: none; }
|
languages/default.mo
CHANGED
Binary file
|
languages/default.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Export User Data\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/export-users-to-csv\n"
|
5 |
-
"POT-Creation-Date: 2014-
|
6 |
-
"PO-Revision-Date: 2014-
|
7 |
"Last-Translator: Ray <ray@qstudio.us>\n"
|
8 |
"Language-Team: Q Studio <team@qstudio.us>\n"
|
9 |
"Language: en\n"
|
@@ -111,18 +111,18 @@ msgid "Limit Range"
|
|
111 |
msgstr ""
|
112 |
|
113 |
#: ../export-user-data.php:729
|
114 |
-
msgid "
|
115 |
msgstr ""
|
116 |
|
117 |
#: ../export-user-data.php:730
|
118 |
-
msgid "
|
119 |
msgstr ""
|
120 |
|
121 |
#: ../export-user-data.php:733
|
122 |
#, php-format
|
123 |
msgid ""
|
124 |
-
"Enter an offset start number and a total number to export. <a href
|
125 |
-
"target=\"_blank\">%s</a>"
|
126 |
msgstr ""
|
127 |
|
128 |
#: ../export-user-data.php:742
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Export User Data\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/export-users-to-csv\n"
|
5 |
+
"POT-Creation-Date: 2014-03-15 09:46-0000\n"
|
6 |
+
"PO-Revision-Date: 2014-03-15 09:46-0000\n"
|
7 |
"Last-Translator: Ray <ray@qstudio.us>\n"
|
8 |
"Language-Team: Q Studio <team@qstudio.us>\n"
|
9 |
"Language: en\n"
|
111 |
msgstr ""
|
112 |
|
113 |
#: ../export-user-data.php:729
|
114 |
+
msgid "Offset"
|
115 |
msgstr ""
|
116 |
|
117 |
#: ../export-user-data.php:730
|
118 |
+
msgid "Total"
|
119 |
msgstr ""
|
120 |
|
121 |
#: ../export-user-data.php:733
|
122 |
#, php-format
|
123 |
msgid ""
|
124 |
+
"Enter an offset start number and a total number of users to export. <a href="
|
125 |
+
"\"%s\" target=\"_blank\">%s</a>"
|
126 |
msgstr ""
|
127 |
|
128 |
#: ../export-user-data.php:742
|
languages/export-user-data-fr_FR.mo
ADDED
Binary file
|
languages/export-user-data-fr_FR.po
ADDED
@@ -0,0 +1,166 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Export User Data\n"
|
4 |
+
"Report-Msgid-Bugs-To: http://wordpress.org/tag/export-users-to-csv\n"
|
5 |
+
"POT-Creation-Date: 2014-01-26 00:56+0100\n"
|
6 |
+
"PO-Revision-Date: 2014-03-13 14:08+0100\n"
|
7 |
+
"Last-Translator: aurélie <administratif@urbancube.fr>\n"
|
8 |
+
"Language-Team: urbancube <contact@urbancube.fr>\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.6.4\n"
|
13 |
+
"X-Poedit-KeywordsList: _;_e;_n;__\n"
|
14 |
+
"X-Poedit-Basepath: .\n"
|
15 |
+
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"Language: fr\n"
|
18 |
+
"X-Poedit-SearchPath-0: .\n"
|
19 |
+
"X-Poedit-SearchPath-1: ..\n"
|
20 |
+
|
21 |
+
#: ../export-user-data.php:85 ../export-user-data.php:450
|
22 |
+
msgid "Export User Data"
|
23 |
+
msgstr "Exportez les données utilisateurs."
|
24 |
+
|
25 |
+
#: ../export-user-data.php:445
|
26 |
+
msgid "You do not have sufficient permissions to access this page."
|
27 |
+
msgstr "Vous n'avez pas la permission d'accéder à cette page."
|
28 |
+
|
29 |
+
#: ../export-user-data.php:455
|
30 |
+
msgid "No users found."
|
31 |
+
msgstr "Aucun utilisateur trouvé."
|
32 |
+
|
33 |
+
#: ../export-user-data.php:511
|
34 |
+
msgid "User Meta Fields"
|
35 |
+
msgstr "Champs de balise utilisateurs"
|
36 |
+
|
37 |
+
#: ../export-user-data.php:513
|
38 |
+
msgid "Filter"
|
39 |
+
msgstr "Filtre"
|
40 |
+
|
41 |
+
#: ../export-user-data.php:513
|
42 |
+
msgid "All"
|
43 |
+
msgstr "Tous"
|
44 |
+
|
45 |
+
#: ../export-user-data.php:513
|
46 |
+
msgid "Common"
|
47 |
+
msgstr "Commun"
|
48 |
+
|
49 |
+
#: ../export-user-data.php:564
|
50 |
+
msgid ""
|
51 |
+
"Select the user meta keys to export, use the filters to simplify the list."
|
52 |
+
msgstr ""
|
53 |
+
"Choisissez les balises clés d'utilisateur pour exporter, utiliser les "
|
54 |
+
"filtres pour simplifier la liste."
|
55 |
+
|
56 |
+
#: ../export-user-data.php:593
|
57 |
+
msgid "BP xProfile Fields"
|
58 |
+
msgstr "Champs BP xProfile"
|
59 |
+
|
60 |
+
#: ../export-user-data.php:614
|
61 |
+
msgid "Select the BuddyPress XProfile keys to export"
|
62 |
+
msgstr "Choisissez le bouton BuddyPress XProfile pour exporter"
|
63 |
+
|
64 |
+
#: ../export-user-data.php:626
|
65 |
+
msgid "BP xProfile Fields Update Time"
|
66 |
+
msgstr "Champs de temps passé BP xProfile"
|
67 |
+
|
68 |
+
#: ../export-user-data.php:642
|
69 |
+
msgid "Select the BuddyPress XProfile keys updated dates to export"
|
70 |
+
msgstr ""
|
71 |
+
"Choisissez les touches BuddyPress XProfile des dates mises à jour pour "
|
72 |
+
"exporter"
|
73 |
+
|
74 |
+
#: ../export-user-data.php:653
|
75 |
+
msgid "Role"
|
76 |
+
msgstr "Rôle"
|
77 |
+
|
78 |
+
#: ../export-user-data.php:658
|
79 |
+
msgid "All Roles"
|
80 |
+
msgstr "Tous les rôles"
|
81 |
+
|
82 |
+
#: ../export-user-data.php:668
|
83 |
+
#, php-format
|
84 |
+
msgid ""
|
85 |
+
"Filter the exported users by a WordPress Role. <a href=\"%s\" target=\"_blank"
|
86 |
+
"\">%s</a>"
|
87 |
+
msgstr ""
|
88 |
+
"Filtrez les utilisateurs exportés par un Rôle WordPress. <a href=\"%s\" "
|
89 |
+
"target=\"_blank\">%s</a>"
|
90 |
+
|
91 |
+
#: ../export-user-data.php:682
|
92 |
+
msgid "Programs"
|
93 |
+
msgstr "Programmes"
|
94 |
+
|
95 |
+
#: ../export-user-data.php:687
|
96 |
+
msgid "All Programs"
|
97 |
+
msgstr "Tous les programmes"
|
98 |
+
|
99 |
+
#: ../export-user-data.php:708
|
100 |
+
msgid "Registered"
|
101 |
+
msgstr "Enregistré"
|
102 |
+
|
103 |
+
#: ../export-user-data.php:711
|
104 |
+
msgid "Start Date"
|
105 |
+
msgstr "Date de début"
|
106 |
+
|
107 |
+
#: ../export-user-data.php:715
|
108 |
+
msgid "End Date"
|
109 |
+
msgstr "Date de fin"
|
110 |
+
|
111 |
+
#: ../export-user-data.php:720
|
112 |
+
msgid "Pick a start and end user registration date to limit the results."
|
113 |
+
msgstr ""
|
114 |
+
"Choisissez une date de début et de fin d'enregistrement utilisateur pour "
|
115 |
+
"limiter les résultats."
|
116 |
+
|
117 |
+
#: ../export-user-data.php:727
|
118 |
+
msgid "Limit Range"
|
119 |
+
msgstr "Limite supérieure"
|
120 |
+
|
121 |
+
#: ../export-user-data.php:729
|
122 |
+
msgid "From"
|
123 |
+
msgstr "De"
|
124 |
+
|
125 |
+
#: ../export-user-data.php:730
|
126 |
+
msgid "To"
|
127 |
+
msgstr "A"
|
128 |
+
|
129 |
+
#: ../export-user-data.php:733
|
130 |
+
#, php-format
|
131 |
+
msgid ""
|
132 |
+
"Enter an offset start number and a total number to export. <a href=\"%s\" "
|
133 |
+
"target=\"_blank\">%s</a>"
|
134 |
+
msgstr "Entrez un nombre de début décalé et un nombre total pour exporter"
|
135 |
+
|
136 |
+
#: ../export-user-data.php:742
|
137 |
+
msgid "Format"
|
138 |
+
msgstr "Format"
|
139 |
+
|
140 |
+
#: ../export-user-data.php:747
|
141 |
+
msgid "Excel"
|
142 |
+
msgstr "Excel"
|
143 |
+
|
144 |
+
#: ../export-user-data.php:748
|
145 |
+
msgid "CSV"
|
146 |
+
msgstr "CSV"
|
147 |
+
|
148 |
+
#: ../export-user-data.php:754
|
149 |
+
msgid "Select the format for the export file."
|
150 |
+
msgstr "Choisissez le format d'exportation du fichier."
|
151 |
+
|
152 |
+
#: ../export-user-data.php:762
|
153 |
+
msgid "Advanced Options"
|
154 |
+
msgstr "Options avancées"
|
155 |
+
|
156 |
+
#: ../export-user-data.php:766 ../export-user-data.php:840
|
157 |
+
msgid "Show"
|
158 |
+
msgstr "Montrer"
|
159 |
+
|
160 |
+
#: ../export-user-data.php:774
|
161 |
+
msgid "Export"
|
162 |
+
msgstr "Export"
|
163 |
+
|
164 |
+
#: ../export-user-data.php:838
|
165 |
+
msgid "Hide"
|
166 |
+
msgstr "En cache"
|
readme.txt
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
-
===
|
2 |
Contributors: qlstudio
|
3 |
Tags: user, users, xprofile, usermeta csv, excel, batch, export, save, download
|
4 |
Requires at least: 3.2
|
5 |
Tested up to: 3.8.1
|
6 |
-
Stable tag: 0.
|
7 |
License: GPLv2
|
8 |
|
9 |
Export users data, metadata and buddypress xprofile data to a csv or Excel file
|
@@ -33,18 +33,18 @@ For an automatic installation through WordPress:
|
|
33 |
1. Go to the 'Add New' plugins screen in your WordPress admin area
|
34 |
2. Search for 'Export User Data'
|
35 |
3. Click 'Install Now' and activate the plugin
|
36 |
-
4. Go the '
|
37 |
|
38 |
For a manual installation via FTP:
|
39 |
|
40 |
1. Upload the `export-user-data` directory to the `/wp-content/plugins/` directory
|
41 |
2. Activate the plugin through the 'Plugins' screen in your WordPress admin area
|
42 |
-
3. Go the '
|
43 |
|
44 |
To upload the plugin through WordPress, instead of FTP:
|
45 |
|
46 |
1. Upload the downloaded zip file on the 'Add New' plugins screen (see the 'Upload' tab) in your WordPress admin area and activate.
|
47 |
-
2. Go the '
|
48 |
|
49 |
== Frequently Asked Questions ==
|
50 |
|
@@ -58,6 +58,11 @@ Click on the 'Export User Data' link in the 'Users' menu, choose the role and th
|
|
58 |
|
59 |
== Changelog ==
|
60 |
|
|
|
|
|
|
|
|
|
|
|
61 |
= 0.8.3 =
|
62 |
* clarified export limit options
|
63 |
|
1 |
+
=== Export User Data ===
|
2 |
Contributors: qlstudio
|
3 |
Tags: user, users, xprofile, usermeta csv, excel, batch, export, save, download
|
4 |
Requires at least: 3.2
|
5 |
Tested up to: 3.8.1
|
6 |
+
Stable tag: 0.9.0
|
7 |
License: GPLv2
|
8 |
|
9 |
Export users data, metadata and buddypress xprofile data to a csv or Excel file
|
33 |
1. Go to the 'Add New' plugins screen in your WordPress admin area
|
34 |
2. Search for 'Export User Data'
|
35 |
3. Click 'Install Now' and activate the plugin
|
36 |
+
4. Go the 'Export User Data' menu, under 'Users'
|
37 |
|
38 |
For a manual installation via FTP:
|
39 |
|
40 |
1. Upload the `export-user-data` directory to the `/wp-content/plugins/` directory
|
41 |
2. Activate the plugin through the 'Plugins' screen in your WordPress admin area
|
42 |
+
3. Go the 'Export User Data' menu, under 'Users'
|
43 |
|
44 |
To upload the plugin through WordPress, instead of FTP:
|
45 |
|
46 |
1. Upload the downloaded zip file on the 'Add New' plugins screen (see the 'Upload' tab) in your WordPress admin area and activate.
|
47 |
+
2. Go the 'Export User Data' menu, under 'Users'
|
48 |
|
49 |
== Frequently Asked Questions ==
|
50 |
|
58 |
|
59 |
== Changelog ==
|
60 |
|
61 |
+
= 0.9.0 =
|
62 |
+
* Moved plugin class to singleton model
|
63 |
+
* Improved language handling
|
64 |
+
* French translation - thanks @bastho - http://wordpress.org/support/profile/bastho
|
65 |
+
|
66 |
= 0.8.3 =
|
67 |
* clarified export limit options
|
68 |
|