Need a hook for Job submission & WPML support
-
Hi,
I am a programmer using your plugins. Great job!
I am also using WPML to translate my job listings.
The problem is this: when a user creates a listing, it will not appear in other languages, as there is no front-end method for an Employer to translate a post. The only way would be to manually duplicate the listing in the admin section…
The solution I have would require you guys to add an action hook to the job submission method, save_job(), so that duplicates can be automatically created by WPML upon creation of a listing.
Add the hook:
class-wp-job-manager-form-submit-job.php:500protected function save_job( $post_title, $post_content, $status = 'preview', $values = array(), $update_slug = true ) { $job_data = array( 'post_title' => $post_title, 'post_content' => $post_content, 'post_type' => 'job_listing', 'comment_status' => 'closed' ); ... if ( $this->job_id ) { $job_data['ID'] = $this->job_id; wp_update_post( $job_data ); } else { $this->job_id = wp_insert_post( $job_data ); //ACTION HOOK TO BE ADDED HERE do_action( 'job_manager_job_created', $this->job_id ); if ( ! headers_sent() ) { ... } } }
Add the action:
functions.phpfunction theme_duplicate_on_submission($job_id) { //https://wpml.org/forums/topic/undefined-method-translationmanagementget_duplicates/ $post = get_post($job_id); if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $job_id; }; if (isset($post->post_type) && $post->post_type == 'revision') { return $job_id; }; if (isset($post->post_type) && $post->post_type != 'job_listing') { return $job_id; }; $is_translated = apply_filters('wpml_element_has_translations', NULL, $job_id, $post->post_type); if (!$is_translated) { do_action('wpml_make_post_duplicates', $job_id); }; } add_action('job_manager_job_created', 'theme_duplicate_on_submission');
I hope this can be implemented in further releases.
Please let me know what you think
- The topic ‘Need a hook for Job submission & WPML support’ is closed to new replies.