Version Description
- Enhancement: Added support for WordPress.com marketplace
- Change: Only perform application field validation when required or not empty (@tripflex)
- Fix: Deprecated error in
the_company_twitter()
(@MPolleke) - Fix: Using WP Job Manager functions before they're fully loaded.
Download this release
Release Info
Developer | jakeom |
Plugin | WP Job Manager |
Version | 1.38.1 |
Comparing to | |
See all releases |
Code changes from version 1.38.0 to 1.38.1
- changelog.txt +6 -0
- includes/3rd-party/3rd-party.php +1 -0
- includes/3rd-party/wpcom.php +92 -0
- includes/class-wp-job-manager-shortcodes.php +8 -6
- includes/forms/class-wp-job-manager-form-submit-job.php +19 -16
- includes/helper/class-wp-job-manager-helper.php +1 -1
- includes/helper/views/html-licences.php +33 -28
- languages/wp-job-manager.pot +51 -47
- readme.txt +7 -1
- wp-job-manager-template.php +2 -2
- wp-job-manager.php +3 -3
changelog.txt
CHANGED
@@ -1,3 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
= 1.38.0 =
|
2 |
* Enhancement: Add remote position to filtering (@tripflex)
|
3 |
* Enhancement: Add setting to enable/disable remote position field (@tripflex)
|
1 |
+
= 1.38.1 =
|
2 |
+
* Enhancement: Added support for WordPress.com marketplace
|
3 |
+
* Change: Only perform application field validation when required or not empty (@tripflex)
|
4 |
+
* Fix: Deprecated error in `the_company_twitter()` (@MPolleke)
|
5 |
+
* Fix: Using WP Job Manager functions before they're fully loaded.
|
6 |
+
|
7 |
= 1.38.0 =
|
8 |
* Enhancement: Add remote position to filtering (@tripflex)
|
9 |
* Enhancement: Add setting to enable/disable remote position field (@tripflex)
|
includes/3rd-party/3rd-party.php
CHANGED
@@ -13,3 +13,4 @@ require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/yoast.php';
|
|
13 |
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/all-in-one-seo-pack.php';
|
14 |
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/rp4wp.php';
|
15 |
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/wp-all-import.php';
|
|
13 |
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/all-in-one-seo-pack.php';
|
14 |
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/rp4wp.php';
|
15 |
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/wp-all-import.php';
|
16 |
+
require_once JOB_MANAGER_PLUGIN_DIR . '/includes/3rd-party/wpcom.php';
|
includes/3rd-party/wpcom.php
ADDED
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* WP.com Marketplace licensing integration for premium core addons.
|
4 |
+
*
|
5 |
+
* @package wp-job-manager
|
6 |
+
*/
|
7 |
+
|
8 |
+
/**
|
9 |
+
* Configure license configuration for WP Job Manager when purchased from WP.com Marketplace.
|
10 |
+
*
|
11 |
+
* @param bool|WP_Error $result The result of the licensing configuration.
|
12 |
+
* @param array $payload The payload receivced from WPJobManager.com back-end API.
|
13 |
+
* @param string $event_type The event type that triggers this filter.
|
14 |
+
*
|
15 |
+
* @return bool
|
16 |
+
*/
|
17 |
+
function wpjm_dotcom_marketplace_configure_license_for_wp_job_manager_addon( $result, $payload, $event_type ) {
|
18 |
+
if ( 'provision_license' !== $event_type ) {
|
19 |
+
return $result;
|
20 |
+
}
|
21 |
+
|
22 |
+
$helper = WP_Job_Manager_Helper::instance();
|
23 |
+
$helper->activate_licence( $payload['wpjm_product_slug'], $payload['license_code'], $payload['email_address'] );
|
24 |
+
|
25 |
+
$messages = $helper->get_messages( $payload['wpjm_product_slug'] );
|
26 |
+
|
27 |
+
$errors = array_filter(
|
28 |
+
$messages,
|
29 |
+
function ( $message ) {
|
30 |
+
return 'error' === $message['type'];
|
31 |
+
}
|
32 |
+
);
|
33 |
+
|
34 |
+
if ( ! empty( $errors ) ) {
|
35 |
+
return new \WP_Error( 'error', 'An error has occurred while installing ' . $payload['wpjm_product_slug'], $errors );
|
36 |
+
}
|
37 |
+
|
38 |
+
return $result;
|
39 |
+
}
|
40 |
+
|
41 |
+
const WPJM_WPCOM_PRODUCTS = [
|
42 |
+
'wp-job-manager-applications',
|
43 |
+
'wp-job-manager-resumes',
|
44 |
+
'wp-job-manager-simple-paid-listings',
|
45 |
+
'wp-job-manager-wc-paid-listings',
|
46 |
+
'wp-job-manager-tags',
|
47 |
+
'wp-job-manager-bookmarks',
|
48 |
+
'wp-job-manager-alerts',
|
49 |
+
'wp-job-manager-application-deadline',
|
50 |
+
'wp-job-manager-embeddable-job-widget',
|
51 |
+
];
|
52 |
+
|
53 |
+
foreach ( WPJM_WPCOM_PRODUCTS as $wpjm_wpcom_product ) {
|
54 |
+
add_filter( 'wpcom_marketplace_webhook_response_' . $wpjm_wpcom_product, 'wpjm_dotcom_marketplace_configure_license_for_wp_job_manager_addon', 10, 3 );
|
55 |
+
}
|
56 |
+
|
57 |
+
/**
|
58 |
+
* Hide the license form on the licenses page for addons that are purchased from WP.com.
|
59 |
+
*
|
60 |
+
* @param bool $status
|
61 |
+
* @param string $product_slug
|
62 |
+
*
|
63 |
+
* @return false|mixed
|
64 |
+
*/
|
65 |
+
function wpjm_hide_addon_license_form_for_purchases_on_wpcom( $status, $product_slug ) {
|
66 |
+
$subscriptions = get_option( 'wpcom_active_subscriptions', [] );
|
67 |
+
if ( isset( $subscriptions[ $product_slug ] ) ) {
|
68 |
+
return false;
|
69 |
+
}
|
70 |
+
|
71 |
+
return $status;
|
72 |
+
}
|
73 |
+
|
74 |
+
add_filter( 'wpjm_display_license_form_for_addon', 'wpjm_hide_addon_license_form_for_purchases_on_wpcom', 10, 2 );
|
75 |
+
|
76 |
+
/**
|
77 |
+
* Display a notice after the license form for each addon.
|
78 |
+
*
|
79 |
+
* @param string $product_slug
|
80 |
+
*
|
81 |
+
* @return false|void
|
82 |
+
*/
|
83 |
+
function wpjm_display_managed_by_wpcom_notice_for_addon( $product_slug ) {
|
84 |
+
$subscriptions = get_option( 'wpcom_active_subscriptions', [] );
|
85 |
+
if ( ! isset( $subscriptions[ $product_slug ] ) ) {
|
86 |
+
return;
|
87 |
+
}
|
88 |
+
|
89 |
+
esc_html_e( 'The license for this add-on is automatically managed by WordPress.com.', 'wp-job-manager' );
|
90 |
+
}
|
91 |
+
|
92 |
+
add_action( 'wpjm_manage_license_page_after_license_form', 'wpjm_display_managed_by_wpcom_notice_for_addon' );
|
includes/class-wp-job-manager-shortcodes.php
CHANGED
@@ -95,20 +95,22 @@ class WP_Job_Manager_Shortcodes {
|
|
95 |
* Handle redirects
|
96 |
*/
|
97 |
public function handle_redirects() {
|
98 |
-
|
99 |
-
|
|
|
|
|
|
|
|
|
100 |
return;
|
101 |
}
|
102 |
|
103 |
-
$
|
104 |
-
$
|
105 |
-
$job_count = job_manager_count_user_job_listings();
|
106 |
|
107 |
if (
|
108 |
$submit_job_form_page_id
|
109 |
&& $submission_limit
|
110 |
&& $job_count >= $submission_limit
|
111 |
-
&& is_page( $submit_job_form_page_id )
|
112 |
) {
|
113 |
$employer_dashboard_page_id = get_option( 'job_manager_job_dashboard_page_id' );
|
114 |
if ( $employer_dashboard_page_id ) {
|
95 |
* Handle redirects
|
96 |
*/
|
97 |
public function handle_redirects() {
|
98 |
+
$submit_job_form_page_id = get_option( 'job_manager_submit_job_form_page_id' );
|
99 |
+
|
100 |
+
if ( ! is_user_logged_in() || ! is_page( $submit_job_form_page_id ) ||
|
101 |
+
// phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Input is used safely.
|
102 |
+
( ! empty( $_REQUEST['job_id'] ) && job_manager_user_can_edit_job( intval( $_REQUEST['job_id'] ) ) )
|
103 |
+
) {
|
104 |
return;
|
105 |
}
|
106 |
|
107 |
+
$submission_limit = get_option( 'job_manager_submission_limit' );
|
108 |
+
$job_count = job_manager_count_user_job_listings();
|
|
|
109 |
|
110 |
if (
|
111 |
$submit_job_form_page_id
|
112 |
&& $submission_limit
|
113 |
&& $job_count >= $submission_limit
|
|
|
114 |
) {
|
115 |
$employer_dashboard_page_id = get_option( 'job_manager_job_dashboard_page_id' );
|
116 |
if ( $employer_dashboard_page_id ) {
|
includes/forms/class-wp-job-manager-form-submit-job.php
CHANGED
@@ -515,6 +515,7 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
|
|
515 |
// Application method.
|
516 |
if ( ! $this->should_application_field_skip_email_url_validation() && isset( $values['job']['application'] ) ) {
|
517 |
$allowed_application_method = get_option( 'job_manager_allowed_application_method', '' );
|
|
|
518 |
|
519 |
$is_valid = true;
|
520 |
|
@@ -525,24 +526,26 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
|
|
525 |
$this->fields['job']['application']['value'] = $posted_value;
|
526 |
}
|
527 |
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
throw new Exception( __( 'Please enter a valid application URL', 'wp-job-manager' ) );
|
537 |
-
}
|
538 |
-
break;
|
539 |
-
default:
|
540 |
-
if ( ! is_email( $values['job']['application'] ) ) {
|
541 |
if ( ! $is_valid || ! filter_var( $values['job']['application'], FILTER_VALIDATE_URL ) ) {
|
542 |
-
throw new Exception( __( 'Please enter a valid application
|
543 |
}
|
544 |
-
|
545 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
546 |
}
|
547 |
}
|
548 |
|
515 |
// Application method.
|
516 |
if ( ! $this->should_application_field_skip_email_url_validation() && isset( $values['job']['application'] ) ) {
|
517 |
$allowed_application_method = get_option( 'job_manager_allowed_application_method', '' );
|
518 |
+
$application_required = isset( $this->fields['job']['application']['required'] ) && $this->fields['job']['application']['required'];
|
519 |
|
520 |
$is_valid = true;
|
521 |
|
526 |
$this->fields['job']['application']['value'] = $posted_value;
|
527 |
}
|
528 |
|
529 |
+
if ( $application_required || ! empty( $values['job']['application'] ) ) {
|
530 |
+
switch ( $allowed_application_method ) {
|
531 |
+
case 'email':
|
532 |
+
if ( ! $is_valid || ! is_email( $values['job']['application'] ) ) {
|
533 |
+
throw new Exception( __( 'Please enter a valid application email address', 'wp-job-manager' ) );
|
534 |
+
}
|
535 |
+
break;
|
536 |
+
case 'url':
|
|
|
|
|
|
|
|
|
|
|
537 |
if ( ! $is_valid || ! filter_var( $values['job']['application'], FILTER_VALIDATE_URL ) ) {
|
538 |
+
throw new Exception( __( 'Please enter a valid application URL', 'wp-job-manager' ) );
|
539 |
}
|
540 |
+
break;
|
541 |
+
default:
|
542 |
+
if ( ! is_email( $values['job']['application'] ) ) {
|
543 |
+
if ( ! $is_valid || ! filter_var( $values['job']['application'], FILTER_VALIDATE_URL ) ) {
|
544 |
+
throw new Exception( __( 'Please enter a valid application email address or URL', 'wp-job-manager' ) );
|
545 |
+
}
|
546 |
+
}
|
547 |
+
break;
|
548 |
+
}
|
549 |
}
|
550 |
}
|
551 |
|
includes/helper/class-wp-job-manager-helper.php
CHANGED
@@ -511,7 +511,7 @@ class WP_Job_Manager_Helper {
|
|
511 |
* @param string $licence_key
|
512 |
* @param string $email
|
513 |
*/
|
514 |
-
|
515 |
$response = $this->api->activate(
|
516 |
[
|
517 |
'api_product_id' => $product_slug,
|
511 |
* @param string $licence_key
|
512 |
* @param string $email
|
513 |
*/
|
514 |
+
public function activate_licence( $product_slug, $licence_key, $email ) {
|
515 |
$response = $this->api->activate(
|
516 |
[
|
517 |
'api_product_id' => $product_slug,
|
includes/helper/views/html-licences.php
CHANGED
@@ -44,39 +44,44 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
44 |
foreach ( $notices as $message ) {
|
45 |
echo '<div class="notice inline notice-' . esc_attr( $message['type'] ) . '"><p>' . wp_kses_post( $message['message'] ) . '</p></div>';
|
46 |
}
|
47 |
-
|
48 |
-
<form method="post">
|
49 |
-
<?php wp_nonce_field( 'wpjm-manage-licence' ); ?>
|
50 |
-
<?php
|
51 |
-
if ( ! empty( $licence['licence_key'] ) && ! empty( $licence['email'] ) ) {
|
52 |
?>
|
53 |
-
<
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
55 |
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
|
63 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
<?php
|
65 |
-
}
|
66 |
-
|
67 |
-
<input type="hidden" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_action" name="action" value="activate"/>
|
68 |
-
<input type="hidden" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_plugin" name="product_slug" value="<?php echo esc_attr( $product_slug ); ?>"/>
|
69 |
-
<label for="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_licence_key"><?php esc_html_e( 'License', 'wp-job-manager' ); ?>:
|
70 |
-
<input type="text" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_licence_key" name="licence_key" placeholder="XXXX-XXXX-XXXX-XXXX"/>
|
71 |
-
</label>
|
72 |
-
<label for="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_email"><?php esc_html_e( 'Email', 'wp-job-manager' ); ?>:
|
73 |
-
<input type="email" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_email" name="email" placeholder="<?php esc_attr_e( 'Email address', 'wp-job-manager' ); ?>" value="<?php echo esc_attr( get_option( 'admin_email' ) ); ?>"/>
|
74 |
-
</label>
|
75 |
-
<input type="submit" class="button" name="submit" value="<?php esc_attr_e( 'Activate License', 'wp-job-manager' ); ?>" />
|
76 |
-
<?php
|
77 |
-
} // end if : else licence is not active.
|
78 |
?>
|
79 |
-
</form>
|
80 |
</div>
|
81 |
</div>
|
82 |
<?php endforeach; ?>
|
44 |
foreach ( $notices as $message ) {
|
45 |
echo '<div class="notice inline notice-' . esc_attr( $message['type'] ) . '"><p>' . wp_kses_post( $message['message'] ) . '</p></div>';
|
46 |
}
|
47 |
+
if ( apply_filters( 'wpjm_display_license_form_for_addon', true, $product_slug ) ) {
|
|
|
|
|
|
|
|
|
48 |
?>
|
49 |
+
<form method="post">
|
50 |
+
<?php wp_nonce_field( 'wpjm-manage-licence' ); ?>
|
51 |
+
<?php
|
52 |
+
if ( ! empty( $licence['licence_key'] ) && ! empty( $licence['email'] ) ) {
|
53 |
+
?>
|
54 |
+
<input type="hidden" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_action" name="action" value="deactivate"/>
|
55 |
+
<input type="hidden" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_plugin" name="product_slug" value="<?php echo esc_attr( $product_slug ); ?>"/>
|
56 |
|
57 |
+
<label for="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_licence_key"><?php esc_html_e( 'License', 'wp-job-manager' ); ?>:
|
58 |
+
<input type="text" disabled="disabled" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_licence_key" name="licence_key" placeholder="XXXX-XXXX-XXXX-XXXX" value="<?php echo esc_attr( $licence['licence_key'] ); ?>"/>
|
59 |
+
</label>
|
60 |
+
<label for="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_email"><?php esc_html_e( 'Email', 'wp-job-manager' ); ?>:
|
61 |
+
<input type="email" disabled="disabled" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_email" name="email" placeholder="<?php esc_attr_e( 'Email address', 'wp-job-manager' ); ?>" value="<?php echo esc_attr( $licence['email'] ); ?>"/>
|
62 |
+
</label>
|
63 |
|
64 |
+
<input type="submit" class="button" name="submit" value="<?php esc_attr_e( 'Deactivate License', 'wp-job-manager' ); ?>" />
|
65 |
+
<?php
|
66 |
+
} else { // licence is not active.
|
67 |
+
?>
|
68 |
+
<input type="hidden" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_action" name="action" value="activate"/>
|
69 |
+
<input type="hidden" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_plugin" name="product_slug" value="<?php echo esc_attr( $product_slug ); ?>"/>
|
70 |
+
<label for="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_licence_key"><?php esc_html_e( 'License', 'wp-job-manager' ); ?>:
|
71 |
+
<input type="text" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_licence_key" name="licence_key" placeholder="XXXX-XXXX-XXXX-XXXX"/>
|
72 |
+
</label>
|
73 |
+
<label for="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_email"><?php esc_html_e( 'Email', 'wp-job-manager' ); ?>:
|
74 |
+
<input type="email" id="<?php echo esc_attr( sanitize_title( $product_slug ) ); ?>_email" name="email" placeholder="<?php esc_attr_e( 'Email address', 'wp-job-manager' ); ?>" value="<?php echo esc_attr( get_option( 'admin_email' ) ); ?>"/>
|
75 |
+
</label>
|
76 |
+
<input type="submit" class="button" name="submit" value="<?php esc_attr_e( 'Activate License', 'wp-job-manager' ); ?>" />
|
77 |
+
<?php
|
78 |
+
} // end if : else licence is not active.
|
79 |
+
?>
|
80 |
+
</form>
|
81 |
<?php
|
82 |
+
}
|
83 |
+
do_action( 'wpjm_manage_license_page_after_license_form', $product_slug );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
?>
|
|
|
85 |
</div>
|
86 |
</div>
|
87 |
<?php endforeach; ?>
|
languages/wp-job-manager.pot
CHANGED
@@ -2,16 +2,16 @@
|
|
2 |
# This file is distributed under the GPL2+.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: WP Job Manager 1.38.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-job-manager/\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2022-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
-
"X-Generator: WP-CLI 2.
|
15 |
"X-Domain: wp-job-manager\n"
|
16 |
|
17 |
#. Plugin Name of the plugin
|
@@ -32,6 +32,10 @@ msgstr ""
|
|
32 |
msgid "Automattic"
|
33 |
msgstr ""
|
34 |
|
|
|
|
|
|
|
|
|
35 |
#: includes/3rd-party/wpml.php:94
|
36 |
msgid "Page Not Set"
|
37 |
msgstr ""
|
@@ -277,7 +281,7 @@ msgid "Featured?"
|
|
277 |
msgstr ""
|
278 |
|
279 |
#: includes/admin/class-wp-job-manager-cpt.php:507
|
280 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
281 |
msgid "Filled?"
|
282 |
msgstr ""
|
283 |
|
@@ -317,13 +321,13 @@ msgstr ""
|
|
317 |
#. translators: Placeholder %s is the singular label of the job listing post type.
|
318 |
#: includes/admin/class-wp-job-manager-cpt.php:652
|
319 |
#: includes/class-wp-job-manager-post-types.php:340
|
320 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
321 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
322 |
msgid "Edit"
|
323 |
msgstr ""
|
324 |
|
325 |
#: includes/admin/class-wp-job-manager-cpt.php:659
|
326 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
327 |
msgid "Delete"
|
328 |
msgstr ""
|
329 |
|
@@ -1566,76 +1570,76 @@ msgstr ""
|
|
1566 |
msgid "Add a salary period unit, this field is optional. Leave it empty to use the default salary unit, if one is defined."
|
1567 |
msgstr ""
|
1568 |
|
1569 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1570 |
msgid "Invalid ID"
|
1571 |
msgstr ""
|
1572 |
|
1573 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1574 |
msgid "This position has already been filled"
|
1575 |
msgstr ""
|
1576 |
|
1577 |
#. translators: Placeholder %s is the job listing title.
|
1578 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1579 |
msgid "%s has been filled"
|
1580 |
msgstr ""
|
1581 |
|
1582 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1583 |
msgid "This position is not filled"
|
1584 |
msgstr ""
|
1585 |
|
1586 |
#. translators: Placeholder %s is the job listing title.
|
1587 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1588 |
msgid "%s has been marked as not filled"
|
1589 |
msgstr ""
|
1590 |
|
1591 |
#. translators: Placeholder %s is the job listing title.
|
1592 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1593 |
msgid "%s has been deleted"
|
1594 |
msgstr ""
|
1595 |
|
1596 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1597 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1598 |
msgid "Missing submission page."
|
1599 |
msgstr ""
|
1600 |
|
1601 |
#. translators: Placeholder %s is the plural label for the job listing post type.
|
1602 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1603 |
#: includes/widgets/class-wp-job-manager-widget-featured-jobs.php:36
|
1604 |
#: includes/widgets/class-wp-job-manager-widget-featured-jobs.php:52
|
1605 |
#: includes/widgets/class-wp-job-manager-widget-recent-jobs.php:36
|
1606 |
msgid "Title"
|
1607 |
msgstr ""
|
1608 |
|
1609 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1610 |
msgid "Date Posted"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1614 |
msgid "Listing Expires"
|
1615 |
msgstr ""
|
1616 |
|
1617 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1618 |
msgid "Mark not filled"
|
1619 |
msgstr ""
|
1620 |
|
1621 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1622 |
msgid "Mark filled"
|
1623 |
msgstr ""
|
1624 |
|
1625 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1626 |
msgid "Duplicate"
|
1627 |
msgstr ""
|
1628 |
|
1629 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1630 |
msgid "Relist"
|
1631 |
msgstr ""
|
1632 |
|
1633 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1634 |
msgid "Continue Submission"
|
1635 |
msgstr ""
|
1636 |
|
1637 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1638 |
-
#: includes/class-wp-job-manager-shortcodes.php:
|
1639 |
msgid "Load more listings"
|
1640 |
msgstr ""
|
1641 |
|
@@ -1776,7 +1780,7 @@ msgid "Submit Details"
|
|
1776 |
msgstr ""
|
1777 |
|
1778 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:93
|
1779 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1780 |
#: templates/job-preview.php:30
|
1781 |
msgid "Preview"
|
1782 |
msgstr ""
|
@@ -1867,49 +1871,49 @@ msgstr ""
|
|
1867 |
msgid "Invalid attachment provided."
|
1868 |
msgstr ""
|
1869 |
|
1870 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1871 |
msgid "Please enter a valid application email address"
|
1872 |
msgstr ""
|
1873 |
|
1874 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1875 |
msgid "Please enter a valid application URL"
|
1876 |
msgstr ""
|
1877 |
|
1878 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1879 |
msgid "Please enter a valid application email address or URL"
|
1880 |
msgstr ""
|
1881 |
|
1882 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1883 |
msgid "Please enter a username."
|
1884 |
msgstr ""
|
1885 |
|
1886 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1887 |
msgid "Please enter a password."
|
1888 |
msgstr ""
|
1889 |
|
1890 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1891 |
msgid "Please enter your email address."
|
1892 |
msgstr ""
|
1893 |
|
1894 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1895 |
msgid "Passwords must match."
|
1896 |
msgstr ""
|
1897 |
|
1898 |
#. translators: Placeholder %s is the password hint.
|
1899 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1900 |
msgid "Invalid Password: %s"
|
1901 |
msgstr ""
|
1902 |
|
1903 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1904 |
msgid "Password is not valid."
|
1905 |
msgstr ""
|
1906 |
|
1907 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1908 |
msgid "You must be signed in to post a new listing."
|
1909 |
msgstr ""
|
1910 |
|
1911 |
#. translators: placeholder is the URL to the job dashboard page.
|
1912 |
-
#: includes/forms/class-wp-job-manager-form-submit-job.php:
|
1913 |
msgid "Draft was saved. Job listing drafts can be resumed from the <a href=\"%s\">job dashboard</a>."
|
1914 |
msgstr ""
|
1915 |
|
@@ -1923,7 +1927,7 @@ msgid "Manage License"
|
|
1923 |
msgstr ""
|
1924 |
|
1925 |
#: includes/helper/class-wp-job-manager-helper.php:285
|
1926 |
-
#: includes/helper/views/html-licences.php:
|
1927 |
#: tests/php/tests/includes/helper/test_class.wp-job-manager-helper.php:278
|
1928 |
msgid "Activate License"
|
1929 |
msgstr ""
|
@@ -1967,31 +1971,31 @@ msgstr ""
|
|
1967 |
msgid "<a href=\"%1$s\">Please enter your license key</a> to get updates for \"%2$s\"."
|
1968 |
msgstr ""
|
1969 |
|
1970 |
-
#: includes/helper/views/html-licences.php:
|
1971 |
-
#: includes/helper/views/html-licences.php:
|
1972 |
msgid "License"
|
1973 |
msgstr ""
|
1974 |
|
1975 |
-
#: includes/helper/views/html-licences.php:
|
1976 |
-
#: includes/helper/views/html-licences.php:
|
1977 |
msgid "Email"
|
1978 |
msgstr ""
|
1979 |
|
1980 |
-
#: includes/helper/views/html-licences.php:
|
1981 |
-
#: includes/helper/views/html-licences.php:
|
1982 |
msgid "Email address"
|
1983 |
msgstr ""
|
1984 |
|
1985 |
-
#: includes/helper/views/html-licences.php:
|
1986 |
msgid "Deactivate License"
|
1987 |
msgstr ""
|
1988 |
|
1989 |
#. translators: Placeholder %s is the lost license key URL.
|
1990 |
-
#: includes/helper/views/html-licences.php:
|
1991 |
msgid "Lost your license key? <a href=\"%s\">Retrieve it here</a>."
|
1992 |
msgstr ""
|
1993 |
|
1994 |
-
#: includes/helper/views/html-licences.php:
|
1995 |
msgid "No plugins are activated that have licenses managed by WP Job Manager."
|
1996 |
msgstr ""
|
1997 |
|
2 |
# This file is distributed under the GPL2+.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: WP Job Manager 1.38.1\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-job-manager/\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2022-10-25T15:40:11+00:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
+
"X-Generator: WP-CLI 2.7.1\n"
|
15 |
"X-Domain: wp-job-manager\n"
|
16 |
|
17 |
#. Plugin Name of the plugin
|
32 |
msgid "Automattic"
|
33 |
msgstr ""
|
34 |
|
35 |
+
#: includes/3rd-party/wpcom.php:89
|
36 |
+
msgid "The license for this add-on is automatically managed by WordPress.com."
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
#: includes/3rd-party/wpml.php:94
|
40 |
msgid "Page Not Set"
|
41 |
msgstr ""
|
281 |
msgstr ""
|
282 |
|
283 |
#: includes/admin/class-wp-job-manager-cpt.php:507
|
284 |
+
#: includes/class-wp-job-manager-shortcodes.php:395
|
285 |
msgid "Filled?"
|
286 |
msgstr ""
|
287 |
|
321 |
#. translators: Placeholder %s is the singular label of the job listing post type.
|
322 |
#: includes/admin/class-wp-job-manager-cpt.php:652
|
323 |
#: includes/class-wp-job-manager-post-types.php:340
|
324 |
+
#: includes/class-wp-job-manager-shortcodes.php:443
|
325 |
+
#: includes/class-wp-job-manager-shortcodes.php:476
|
326 |
msgid "Edit"
|
327 |
msgstr ""
|
328 |
|
329 |
#: includes/admin/class-wp-job-manager-cpt.php:659
|
330 |
+
#: includes/class-wp-job-manager-shortcodes.php:491
|
331 |
msgid "Delete"
|
332 |
msgstr ""
|
333 |
|
1570 |
msgid "Add a salary period unit, this field is optional. Leave it empty to use the default salary unit, if one is defined."
|
1571 |
msgstr ""
|
1572 |
|
1573 |
+
#: includes/class-wp-job-manager-shortcodes.php:203
|
1574 |
msgid "Invalid ID"
|
1575 |
msgstr ""
|
1576 |
|
1577 |
+
#: includes/class-wp-job-manager-shortcodes.php:210
|
1578 |
msgid "This position has already been filled"
|
1579 |
msgstr ""
|
1580 |
|
1581 |
#. translators: Placeholder %s is the job listing title.
|
1582 |
+
#: includes/class-wp-job-manager-shortcodes.php:218
|
1583 |
msgid "%s has been filled"
|
1584 |
msgstr ""
|
1585 |
|
1586 |
+
#: includes/class-wp-job-manager-shortcodes.php:223
|
1587 |
msgid "This position is not filled"
|
1588 |
msgstr ""
|
1589 |
|
1590 |
#. translators: Placeholder %s is the job listing title.
|
1591 |
+
#: includes/class-wp-job-manager-shortcodes.php:231
|
1592 |
msgid "%s has been marked as not filled"
|
1593 |
msgstr ""
|
1594 |
|
1595 |
#. translators: Placeholder %s is the job listing title.
|
1596 |
+
#: includes/class-wp-job-manager-shortcodes.php:239
|
1597 |
msgid "%s has been deleted"
|
1598 |
msgstr ""
|
1599 |
|
1600 |
+
#: includes/class-wp-job-manager-shortcodes.php:244
|
1601 |
+
#: includes/class-wp-job-manager-shortcodes.php:258
|
1602 |
msgid "Missing submission page."
|
1603 |
msgstr ""
|
1604 |
|
1605 |
#. translators: Placeholder %s is the plural label for the job listing post type.
|
1606 |
+
#: includes/class-wp-job-manager-shortcodes.php:394
|
1607 |
#: includes/widgets/class-wp-job-manager-widget-featured-jobs.php:36
|
1608 |
#: includes/widgets/class-wp-job-manager-widget-featured-jobs.php:52
|
1609 |
#: includes/widgets/class-wp-job-manager-widget-recent-jobs.php:36
|
1610 |
msgid "Title"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
+
#: includes/class-wp-job-manager-shortcodes.php:396
|
1614 |
msgid "Date Posted"
|
1615 |
msgstr ""
|
1616 |
|
1617 |
+
#: includes/class-wp-job-manager-shortcodes.php:397
|
1618 |
msgid "Listing Expires"
|
1619 |
msgstr ""
|
1620 |
|
1621 |
+
#: includes/class-wp-job-manager-shortcodes.php:449
|
1622 |
msgid "Mark not filled"
|
1623 |
msgstr ""
|
1624 |
|
1625 |
+
#: includes/class-wp-job-manager-shortcodes.php:454
|
1626 |
msgid "Mark filled"
|
1627 |
msgstr ""
|
1628 |
|
1629 |
+
#: includes/class-wp-job-manager-shortcodes.php:460
|
1630 |
msgid "Duplicate"
|
1631 |
msgstr ""
|
1632 |
|
1633 |
+
#: includes/class-wp-job-manager-shortcodes.php:467
|
1634 |
msgid "Relist"
|
1635 |
msgstr ""
|
1636 |
|
1637 |
+
#: includes/class-wp-job-manager-shortcodes.php:484
|
1638 |
msgid "Continue Submission"
|
1639 |
msgstr ""
|
1640 |
|
1641 |
+
#: includes/class-wp-job-manager-shortcodes.php:690
|
1642 |
+
#: includes/class-wp-job-manager-shortcodes.php:729
|
1643 |
msgid "Load more listings"
|
1644 |
msgstr ""
|
1645 |
|
1780 |
msgstr ""
|
1781 |
|
1782 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:93
|
1783 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:670
|
1784 |
#: templates/job-preview.php:30
|
1785 |
msgid "Preview"
|
1786 |
msgstr ""
|
1871 |
msgid "Invalid attachment provided."
|
1872 |
msgstr ""
|
1873 |
|
1874 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:533
|
1875 |
msgid "Please enter a valid application email address"
|
1876 |
msgstr ""
|
1877 |
|
1878 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:538
|
1879 |
msgid "Please enter a valid application URL"
|
1880 |
msgstr ""
|
1881 |
|
1882 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:544
|
1883 |
msgid "Please enter a valid application email address or URL"
|
1884 |
msgstr ""
|
1885 |
|
1886 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:729
|
1887 |
msgid "Please enter a username."
|
1888 |
msgstr ""
|
1889 |
|
1890 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:733
|
1891 |
msgid "Please enter a password."
|
1892 |
msgstr ""
|
1893 |
|
1894 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:737
|
1895 |
msgid "Please enter your email address."
|
1896 |
msgstr ""
|
1897 |
|
1898 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:743
|
1899 |
msgid "Passwords must match."
|
1900 |
msgstr ""
|
1901 |
|
1902 |
#. translators: Placeholder %s is the password hint.
|
1903 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:749
|
1904 |
msgid "Invalid Password: %s"
|
1905 |
msgstr ""
|
1906 |
|
1907 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:751
|
1908 |
msgid "Password is not valid."
|
1909 |
msgstr ""
|
1910 |
|
1911 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:783
|
1912 |
msgid "You must be signed in to post a new listing."
|
1913 |
msgstr ""
|
1914 |
|
1915 |
#. translators: placeholder is the URL to the job dashboard page.
|
1916 |
+
#: includes/forms/class-wp-job-manager-form-submit-job.php:809
|
1917 |
msgid "Draft was saved. Job listing drafts can be resumed from the <a href=\"%s\">job dashboard</a>."
|
1918 |
msgstr ""
|
1919 |
|
1927 |
msgstr ""
|
1928 |
|
1929 |
#: includes/helper/class-wp-job-manager-helper.php:285
|
1930 |
+
#: includes/helper/views/html-licences.php:76
|
1931 |
#: tests/php/tests/includes/helper/test_class.wp-job-manager-helper.php:278
|
1932 |
msgid "Activate License"
|
1933 |
msgstr ""
|
1971 |
msgid "<a href=\"%1$s\">Please enter your license key</a> to get updates for \"%2$s\"."
|
1972 |
msgstr ""
|
1973 |
|
1974 |
+
#: includes/helper/views/html-licences.php:57
|
1975 |
+
#: includes/helper/views/html-licences.php:70
|
1976 |
msgid "License"
|
1977 |
msgstr ""
|
1978 |
|
1979 |
+
#: includes/helper/views/html-licences.php:60
|
1980 |
+
#: includes/helper/views/html-licences.php:73
|
1981 |
msgid "Email"
|
1982 |
msgstr ""
|
1983 |
|
1984 |
+
#: includes/helper/views/html-licences.php:61
|
1985 |
+
#: includes/helper/views/html-licences.php:74
|
1986 |
msgid "Email address"
|
1987 |
msgstr ""
|
1988 |
|
1989 |
+
#: includes/helper/views/html-licences.php:64
|
1990 |
msgid "Deactivate License"
|
1991 |
msgstr ""
|
1992 |
|
1993 |
#. translators: Placeholder %s is the lost license key URL.
|
1994 |
+
#: includes/helper/views/html-licences.php:89
|
1995 |
msgid "Lost your license key? <a href=\"%s\">Retrieve it here</a>."
|
1996 |
msgstr ""
|
1997 |
|
1998 |
+
#: includes/helper/views/html-licences.php:91
|
1999 |
msgid "No plugins are activated that have licenses managed by WP Job Manager."
|
2000 |
msgstr ""
|
2001 |
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: job manager, job listing, job board, job management, job lists, job list,
|
|
4 |
Requires at least: 5.8
|
5 |
Tested up to: 6.0
|
6 |
Requires PHP: 7.2
|
7 |
-
Stable tag: 1.38.
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -153,6 +153,12 @@ It then creates a database based on the parameters passed to it.
|
|
153 |
|
154 |
== Changelog ==
|
155 |
|
|
|
|
|
|
|
|
|
|
|
|
|
156 |
= 1.38.0 =
|
157 |
* Enhancement: Add remote position to filtering (@tripflex)
|
158 |
* Enhancement: Add setting to enable/disable remote position field (@tripflex)
|
4 |
Requires at least: 5.8
|
5 |
Tested up to: 6.0
|
6 |
Requires PHP: 7.2
|
7 |
+
Stable tag: 1.38.1
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
153 |
|
154 |
== Changelog ==
|
155 |
|
156 |
+
= 1.38.1 =
|
157 |
+
* Enhancement: Added support for WordPress.com marketplace
|
158 |
+
* Change: Only perform application field validation when required or not empty (@tripflex)
|
159 |
+
* Fix: Deprecated error in `the_company_twitter()` (@MPolleke)
|
160 |
+
* Fix: Using WP Job Manager functions before they're fully loaded.
|
161 |
+
|
162 |
= 1.38.0 =
|
163 |
* Enhancement: Add remote position to filtering (@tripflex)
|
164 |
* Enhancement: Add setting to enable/disable remote position field (@tripflex)
|
wp-job-manager-template.php
CHANGED
@@ -1134,7 +1134,7 @@ function get_the_company_tagline( $post = null ) {
|
|
1134 |
function the_company_twitter( $before = '', $after = '', $echo = true, $post = null ) {
|
1135 |
$company_twitter = get_the_company_twitter( $post );
|
1136 |
|
1137 |
-
if (
|
1138 |
return null;
|
1139 |
}
|
1140 |
|
@@ -1162,7 +1162,7 @@ function get_the_company_twitter( $post = null ) {
|
|
1162 |
|
1163 |
$company_twitter = $post->_company_twitter;
|
1164 |
|
1165 |
-
if (
|
1166 |
return null;
|
1167 |
}
|
1168 |
|
1134 |
function the_company_twitter( $before = '', $after = '', $echo = true, $post = null ) {
|
1135 |
$company_twitter = get_the_company_twitter( $post );
|
1136 |
|
1137 |
+
if ( empty( $company_twitter ) ) {
|
1138 |
return null;
|
1139 |
}
|
1140 |
|
1162 |
|
1163 |
$company_twitter = $post->_company_twitter;
|
1164 |
|
1165 |
+
if ( empty( $company_twitter ) ) {
|
1166 |
return null;
|
1167 |
}
|
1168 |
|
wp-job-manager.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
* Plugin Name: WP Job Manager
|
4 |
* Plugin URI: https://wpjobmanager.com/
|
5 |
* Description: Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
|
6 |
-
* Version: 1.38.
|
7 |
* Author: Automattic
|
8 |
* Author URI: https://wpjobmanager.com/
|
9 |
* Requires at least: 5.8
|
10 |
-
* Tested up to: 6.
|
11 |
* Requires PHP: 7.2
|
12 |
* Text Domain: wp-job-manager
|
13 |
* Domain Path: /languages/
|
@@ -21,7 +21,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
21 |
}
|
22 |
|
23 |
// Define constants.
|
24 |
-
define( 'JOB_MANAGER_VERSION', '1.38.
|
25 |
define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
|
26 |
define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
|
27 |
define( 'JOB_MANAGER_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
3 |
* Plugin Name: WP Job Manager
|
4 |
* Plugin URI: https://wpjobmanager.com/
|
5 |
* Description: Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
|
6 |
+
* Version: 1.38.1
|
7 |
* Author: Automattic
|
8 |
* Author URI: https://wpjobmanager.com/
|
9 |
* Requires at least: 5.8
|
10 |
+
* Tested up to: 6.1
|
11 |
* Requires PHP: 7.2
|
12 |
* Text Domain: wp-job-manager
|
13 |
* Domain Path: /languages/
|
21 |
}
|
22 |
|
23 |
// Define constants.
|
24 |
+
define( 'JOB_MANAGER_VERSION', '1.38.1' );
|
25 |
define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
|
26 |
define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
|
27 |
define( 'JOB_MANAGER_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|