[Jobs & Experts] custom template for [jbp-job-update-page] page

I want to make a custom page where I use this shorctcode [jbp-job-update-page]. I need to add there some text and make re-order.

After I updated the plugin, my changes will are lost.

During the chat we provide some mu-plugin but this does not work.

Can you help me with this one?

Thank you.

  • Panos
    • SLS

    Hi there Bo ,

    That shortcode seems to be using the template file :


    So you need to make a new file that will replicate that and do your custom changes. The best place for the new file’s location is probably the mu-plugins directory (or you can create an entire custom plugin for this and store template files in your plugins directories). Lets make a new folder in mu-plugins called custom-layouts, this is where the new file will be located and it’s path should be:


    Copy the original file:




    Now you need to filter the layouts, so it uses the new layout file for that shortcode. Create a new mu-plugin for this, you can name it something like:


    and add the following snippet in that file:

    add_filter( 'ig_view_file', 'wpmudev_filter_ig_view_file', 20 );

    function wpmudev_filter_ig_view_file( $path ) {

    $target_layout = 'views/job-form/main.php';
    if ( $target_layout == substr( $path, strlen( $path ) - strlen( $target_layout ) ) ) {
    $path = WP_CONTENT_DIR . DIRECTORY_SEPARATOR . 'mu-plugins' . DIRECTORY_SEPARATOR . 'custom-layouts' . DIRECTORY_SEPARATOR . 'main.php';
    remove_filter( 'ig_view_file', 'wpmudev_filter_ig_view_file', 20 );

    return $path;

    Now you should be able to modify the new main.php file as you wish.

    Hope this helps :slight_smile:

  • Bo
    • Flash Drive

    thank you, documentation of some kind would be VERY helpful. We need to make a number of custom changes to the Jobs&Expert plugin and the membership plugin. We want to be able to make all these changes properly so we can still allow updates, but we cant do that without using all the proper hooks. This one worked for making some minor edits to that template file, however we will be adding additional fields to the add a post form, changes to the post end date calendar, post open for, and number of other random edits needed. And my developer was having a really hard time getting the changes to work cause it was pulling code from multiple pages and didn’t know all the proper hooks to make all the changes properly.

  • Panos
    • SLS

    Hi there Bo ,

    So sorry for missing your reply here.

    Unfortunately there are no docs including available hooks. However we can provide some guidance which hopefully could help. For adding a new Job field (eg for Country) you can do as follows :

    1. Create the admin meta box:

    //Add job metabox:

    function wpmudev_job_location_metabox() {

    $id = get_the_ID();
    $model = JE_Job_Model::model()->find( $id );
    $form = new IG_Active_Form( $model );
    $country = get_post_meta( $id, '_jbp_job_country', true );

    <th valign="top">
    <?php _e( "Country", je()->domain ) ?>
    <input type="text" value="<?php echo $country; ?>" name="JE_Job_Model[country]" class="widefat" id="je_job_model-country">

    add_action( 'add_meta_boxes', function(){

    __( "Job Location", je()->domain ),
    'side' );

    } );

    2. Save the country meta:

    add_action( 'save_post', function( $post_id, WP_Post $post, $update ){

    if ( get_post_type( $post_id ) != 'jbp_job' ) {

    if ( ! isset( $_POST['JE_Job_Model']['country'] ) ) {

    $country = sanitize_text_field( wp_unslash( $_POST['JE_Job_Model']['country'] ) );
    update_post_meta( $post_id, '_jbp_job_country',$country );

    }, 10, 3 );

    3. Show country field in front end:

    add_action( 'je_job_after_form', function( $model, $form ){

    $country = get_post_meta( $model->id, '_jbp_job_country', true );
    <div class="form-group ">
    <label for="je_job_model-country" class="col-lg-3 control-label">Country</label>
    <div class="col-lg-9">
    <div class="input-group">
    <span class="input-group-addon"><i class="dashicons dashicons-admin-site"></i></span>
    <input type="text" value="<?php echo $country; ?>" name="JE_Job_Model[country]" class="form-control" id="je_job_model-country">
    <span class="help-block m-b-none error-min_budget"></span>
    <div class="clearfix"></div>
    }, 20, 2 );

    I suppose you have completed your customization by now, in case there is anything else please let us know :slight_smile:

    Kind regards!

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.