PluginProbe ʕ •ᴥ•ʔ
WP Job Manager / 2.4.7
WP Job Manager v2.4.7
2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.1.0 1.1.1 1.1.2 1.1.3 1.10.0 1.11.0 1.11.1 1.12.0 1.12.1 1.13.0 1.14.0 1.15.0 1.16.0 1.16.1 1.17.0 1.18.0 1.19.0 1.2.0 1.20.0 1.20.1 1.21.0 1.21.1 1.21.2 1.21.3 1.21.4 1.22.0 1.22.1 1.22.2 1.22.3 1.23.0 1.23.1 1.23.10 1.23.11 1.23.12 1.23.13 1.23.2 1.23.3 1.23.4 1.23.5 1.23.6 1.23.7 1.23.8 1.23.9 1.24.0 1.24.0.1 1.25.0 1.25.0.1 1.25.1 1.25.1.1 1.25.2 1.25.2.1 1.25.3 1.25.3.1 1.26.0 1.26.0.1 1.26.1 1.26.1.1 1.26.2 1.26.2.1 1.27.0 1.27.0.1 1.28.0 1.28.0.1 1.29.0 1.29.0.1 1.29.1 1.29.1.1 1.29.2 1.29.2.1 1.29.3 1.29.3.1 1.3.0 1.3.1 1.30.0 1.30.0.1 1.30.1 1.30.1.1 1.30.2 1.30.2.1 1.31.0 1.31.0.1 1.31.1 1.31.1.1 1.31.2 1.31.3 1.32.0 1.32.1 1.32.2 1.32.3 1.33.0 1.33.1 1.33.2 1.33.3 1.33.4 1.33.5 1.34.0 1.34.1 1.34.2 1.34.3 1.34.4 1.34.5 1.35.0 1.35.1 1.35.2 1.35.3 1.36.0 1.36.1 1.36.2 1.37.0 1.38.0 1.38.1 1.39.0 1.4.0 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.7.1 1.7.3 1.8.0 1.8.1 1.8.2 1.9.0 1.9.1 1.9.2 1.9.3 2.0.0 2.1.0 2.1.1 2.2.0 2.2.1 2.2.2 2.3.0 2.4.0 2.4.1
wp-job-manager / includes / class-wp-job-manager-data-exporter.php
wp-job-manager / includes Last commit date
3rd-party 3 days ago abstracts 3 months ago admin 2 weeks ago emails 2 weeks ago forms 3 days ago helper 3 months ago promoted-jobs 3 days ago ui 2 weeks ago widgets 2 weeks ago class-access-token.php 2 years ago class-dev-tools.php 2 years ago class-guest-session.php 2 years ago class-guest-user.php 2 years ago class-job-dashboard-shortcode.php 6 months ago class-job-listing-stats.php 2 years ago class-job-overlay.php 2 years ago class-stats-dashboard.php 2 years ago class-stats-script.php 3 months ago class-stats.php 3 months ago class-wp-job-manager-ajax.php 2 months ago class-wp-job-manager-api.php 6 years ago class-wp-job-manager-blocks.php 2 weeks ago class-wp-job-manager-cache-helper.php 3 months ago class-wp-job-manager-category-walker.php 6 years ago class-wp-job-manager-com-api.php 2 years ago class-wp-job-manager-data-cleaner.php 2 years ago class-wp-job-manager-data-exporter.php 3 months ago class-wp-job-manager-dependency-checker.php 2 years ago class-wp-job-manager-email-notifications.php 2 years ago class-wp-job-manager-forms.php 5 years ago class-wp-job-manager-geocode.php 2 weeks ago class-wp-job-manager-install.php 2 years ago class-wp-job-manager-post-types.php 3 days ago class-wp-job-manager-recaptcha.php 6 months ago class-wp-job-manager-rest-api.php 2 months ago class-wp-job-manager-shortcodes.php 2 weeks ago class-wp-job-manager-usage-tracking-data.php 2 years ago class-wp-job-manager-usage-tracking.php 2 years ago class-wp-job-manager-widget.php 2 weeks ago class-wp-job-manager.php 3 months ago trait-singleton.php 2 years ago
class-wp-job-manager-data-exporter.php
92 lines
1 <?php
2 /**
3 * File containing the class WP_Job_Manager_Data_Exporter.
4 *
5 * @package wp-job-manager
6 */
7
8 if ( ! defined( 'ABSPATH' ) ) {
9 exit;
10 }
11
12 /**
13 * Handles the user data export.
14 *
15 * @package
16 * @since
17 */
18 class WP_Job_Manager_Data_Exporter {
19 /**
20 * Register the user data exporter method
21 *
22 * @param array $exporters The exporter array.
23 * @return array $exporters The exporter array.
24 */
25 public static function register_wpjm_user_data_exporter( $exporters ) {
26 $exporters['wp-job-manager'] = [
27 'exporter_friendly_name' => __( 'WP Job Manager', 'wp-job-manager' ),
28 'callback' => [ __CLASS__, 'user_data_exporter' ],
29 ];
30 return $exporters;
31 }
32
33 /**
34 * Data exporter
35 *
36 * @param string $email_address User email address.
37 * @return array
38 */
39 public static function user_data_exporter( $email_address ) {
40 $export_items = [];
41 $user = get_user_by( 'email', $email_address );
42 if ( false === $user ) {
43 return [
44 'data' => $export_items,
45 'done' => true,
46 ];
47 }
48
49 $user_data_to_export = [];
50 $user_meta_keys = [
51 '_company_logo' => __( 'Company Logo', 'wp-job-manager' ),
52 '_company_name' => __( 'Company Name', 'wp-job-manager' ),
53 '_company_website' => __( 'Company Website', 'wp-job-manager' ),
54 '_company_tagline' => __( 'Company Tagline', 'wp-job-manager' ),
55 '_company_twitter' => __( 'Company X / Twitter', 'wp-job-manager' ),
56 '_company_video' => __( 'Company Video', 'wp-job-manager' ),
57 ];
58
59 foreach ( $user_meta_keys as $user_meta_key => $name ) {
60 $user_meta = get_user_meta( $user->ID, $user_meta_key, true );
61
62 if ( empty( $user_meta ) ) {
63 continue;
64 }
65
66 if ( '_company_logo' === $user_meta_key ) {
67 $user_meta = wp_get_attachment_url( $user_meta );
68 if ( false === $user_meta ) {
69 continue;
70 }
71 }
72
73 $user_data_to_export[] = [
74 'name' => $name,
75 'value' => $user_meta,
76 ];
77 }
78
79 $export_items[] = [
80 'group_id' => 'wpjm-user-data',
81 'group_label' => __( 'WP Job Manager User Data', 'wp-job-manager' ),
82 'item_id' => "wpjm-user-data-{$user->ID}",
83 'data' => $user_data_to_export,
84 ];
85
86 return [
87 'data' => $export_items,
88 'done' => true,
89 ];
90 }
91 }
92