TrackerRMS Help

Your one-stop shop for help on TrackerRMS

Back to Topics

Help Topic: Publishing Jobs to your website


Publish Jobs Addresses

The Publish Jobs Address will differ based on whether your system is hosted in the US or UK environments and your Client Success Manager will be able to confirm this for you.

  • For the US, the address will be https://evoportalus.tracker-rms.com/clientdatabase/jobs
  • For the UK, the address will be https://evoportaluk.tracker-rms.com/clientdatabase/jobs
  • For CA, the address will be https://evoportalca.tracker-rms.com/clientdatabase/jobs

Note: The clientdatabase will be a unique name given to each client and can be obtained from our Live Chat or your Client Success Manager.

 

Publish Jobs Via Your Website

You can publish jobs directly to your website from TrackerRMS using our free publishing feature which is embedded in your website using a single line of HTML.

This feature allows you to control the following aspects of published jobs:

  • The fields that are displayed (for example a summary list may display less information than the full details of the Job)
  • The order in which the fields are displayed
  • The look and feel of the published information in keeping with your own website (Cascading Style Sheets)
  • Filter only certain jobs based on work type, location etc

Please note: In order to appear in the publish jobs page, the Job must be at an "open" status and you must set the Publish on My Website? setting to Yes.  

This can be found on the Publish tab within the main Job record within TrackerRMS.  The publish feature only selects “open” Jobs and so Jobs will be removed from the publish jobs list automatically once filled, placed or otherwise closed.

 

How it works

The publish jobs information is embedded using an <iframe/> which essentially places a website powered by TrackerRMS into an existing web page on your website.  Your web developer will pass a series of instructions to this <iframe/> to cover each of the points bulleted in the section below to control how the page will be displayed.

TrackerRMS will then render the HTML based on this information within the <iframe/> for visitor to view and action accordingly.

 

Configuring the Job Feed

The options that can be passed to the publish function have improved recently to offer more flexibility in the presentation and filtering of jobs on your website and are detailed in the following pages. 

There are a number of options that can be passed to the new Publish function which are:

fields

This is a comma separated list of fields that will be displayed for each published job and in the order they appear in this list provided.  A full list of fields can be found in the table below.

For example: fields=reference,title,location will display the Job Reference, the Job Title and the Location of the Job:

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location

filters

This is a comma separated list of filters to apply, each containing a pipe delimited value in the format column|value for example reference|1234.

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,description&filters=reference|1741

sorts

This is a comma separated list containing the sorts your would like to apply, for example to order by job id in descending date order you would pass “opportunityid DESC”.

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,worktype,location,startdate&sorts=publishstartdate DESC

theme

We have introduced a standard set of themes that you can automatically apply to the publish results which align to those found in the Evolution screen settings page, for example “bluesky”, “purplehaze”, “quicksilver”.

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location,worktype,linkregister&theme=bluesky

You can still use your own custom stylesheet if you wish by passing the full URL of your custom CSS file to the theme parameter e.g. &theme=mysite.com/custom.css

output

There are 3 options for outputting publish jobs:

  • “html” or blank = HTML
  • “xml” = XML formatted and ideal for integrating into another system
  • “json” – JSON formatted and ideal for integrating into another system

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location&output=xml

start

The record from which the list is to start from which is useful if you are paging jobs on your website, for example 10 starts the list from the 10th record in the results.

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location&start=5

limit

This limits the numbers of results returned which again is useful if using paging on your website, or if you only want to display the first n records on your page.

This can be used in combination with the start option of course.

Example code:

https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location&start=5&limit=5

inject

If you decide to inject the publish jobs code directly into your existing web page rather than using the iframe method then setting &inject=true will ensure that no styles are applied so that they are adopted from your own website page.

See details below for iframe versus injection methods.

joblinkuri

A fully qualified URI to a web page that will be linked to when using the joblink parameter

(e.g. http://mysite/myjobpage.php)

Note: This can be a new webpage for displaying a single job and the URI will be appended with &jobcode=123 (where 123 is the unique job id) to facilitate this (e.g. http://mysite/myjobpage.php?jobcode=123). This jobcode can be passed back to this publish function using the &reference= parameter to retrieve the specific job as required.

Examples for PHP and ASP:

&reference=<?php echo $_GET["jobcode"]; ?>
&reference=<%=Request.QueryString("jobcode")%>

joblinktarget

Can be used to specify where the redirected page is displayed for example "_blank" opens a new window and "_self" or "_parent" etc will open in the same frame/window.

joblinkonclick

You can call a javascript function (e.g. openMyJob) rather than redirect to a new window using the joblinkonclick to pass the name of the javascript function (joblinkuri and joblinktarget must be blank).

Note: This can be a javascript function for displaying a single job and the function call will be appended with the jobcode as a parameter to the function to facilitate this (e.g. openMyJob(123); ).

 

Field List

Here is a list of all the fields available to you for this feature and can be populated from the Publish Job tab with the Job in Evolution:

&fields=

category

The Publish Category

description

The Publish Description in HTML format

duration

The Publish Duration

email

The Publish Email Address for the Consultant owning the Job in TrackerRMS (including mailto link)

joblink

An active link to the job that redirects to a new page or javascript function (see job link details below)

linkregister

An automatic link to your online registration portal passing the Job Id for potential short listing

location

The Publish Location

reference

The TrackerRMS Job Reference

salaryfrom

The Publish Salary From

salaryper

The Publish Salary Period (e.g. per day, per hour etc)

salaryto

The Publish Salary To

sector

The Publish Sector

startdate

The Publish Start Date

title

The Publish Job Title

worktype

The Publish Work Type

postcode

The Postcode Location from the main Job Record

benefits

The Publish Benefits

publishdate

The Publish Date

creationdate

The date the Job record was created

city

The first City field in the publish location

state

The second field in the publish location

department

The Department for the Job record

consultantname

The name of the Consultant in the Main Contact on the Publish Tab

consultantemail

The email address of the Consultant in the Main Contact on the Publish Tab

consultanttelephone

The telephone number of the Consultant in the Main Contact on the Publish Tab

consultantphoto

The photo of the Consultant in the Main Contact on the Publish Tab (taken from the User's uploaded profile picture)

[customfield]*

The Custom Field Name for the Job record (must be a Job Custom Field)

businesstype

The Business Type from the main Job record

jobtype

The Job Type from the main Job record

*Selecting Custom Fields

If you want to select any custom fields associated to Jobs, please provide the custom field name as the field name with no spaces and in lower case.

For example, if you have a custom fields associated to Jobs called "Job Division" then you would use:

&fields=jobdivision

Please ensure that your custom field names do not match any of those in the table above as the standard filters will always take precedence.

Filter List

There are a number of filters that have been included for when you want to reduce or differentiate the Jobs being displayed, for example you may want to have a search box on your website to allow visitors to fine certain job titles or have a drop down filter to select between permanent and temporary Job Vacancies only.  This is where filters come in and you can add any combination of these to your publish call.  The list of filters available are as follows:

Filters are applied using the format column|value and multiple filters can be applied by comma separating these values such as column1|value,column2|value and so on.

&filters=

reference

The Job Id of the main Job record (returns a single record so great for the Job details page)

worktype

The Work Type for the main Job record in text format

department

The Department of the main Job record in text format

departmentwildcard

The Department of the main Job record in text format (wildcard means the department name will contain the characters provided e.g. "Health" will include "Healthcare" and "Health" departments)

keywords

Keywords for searching title and description

location

Location as defined in the Publish section

sector

Sector as defined in the Publish section

user

The email address of the user marked as the Main Contact for the Published Job

[customfield]*

The Custom Field Name for the Job record (must be a Job Custom Field)

businesstype

The Business Type from the main Job record

*Filtering on Custom Fields

If you want to filter on any custom fields associated to Jobs, please provide the custom field name as the filter name and the value as required from the custom field.

For example, if you have a custom fields associated to Jobs called "Division" then you would use:

&filters=Division|ABC

Please ensure that your custom field names do not match any of those in the table above as the standard filters will always take precedence.

 

Using Javascript and pure HTML pages

If you are unable to use dynamic pages such as .ASP, .ASPX or .PHP to retrieve the &jobcode from the web address then we have compiled the following Javascript code that can be used in any .HTML page to retrieve the jobcode from the address and pass this to the <iframe/> for you.

Paste the following Javascript code at the bottom of your “Job Details” page:

<script type="text/javascript">
   var getQueryString = function (field, url) {
       var href = url ? url : window.location.href;
       var reg = new RegExp('[?&]' + field + '=([^&#]*)', 'i');
       var string = reg.exec(href);
       return string ? string[1] : null;
    };

   function loadSite() {
       var site = "https://evoportalus.tracker-rms.com/clientdatabase/jobs";
       site += "?fields=title,location&filters=reference|" + getQueryString("jobcode");
       document.getElementById("trmsjobs").src = site;
   }
</script>

Then within the body of the page, ensure the following code is included:

<body onload="loadSite();">
   <iframe id="trmsjobs" src="" frameborder="0" scrolling="yes" width="100%" height="700"></iframe>
</body>

 

Iframe versus Injection

There are 2 main methods of embedding publish jobs within your webpage:

Iframe

Iframe creates a window onto our servers and is the simplest way to implement published jobs for the novice or beginner client.

Example for a simple joblist:

<iframe id="trmsjobs" frameborder="0" scrolling="no" width="100%" height="700" src="https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location,worktype,joblink&theme=bluesky&joblinktarget=_parent"></iframe>

Example for an individual jobpage:

<iframe id="trmsjobs" frameborder="0" scrolling="no" width="100%" height="700" src="https://evoportalus.tracker-rms.com/clientdatabase/jobs?fields=reference,title,location,worktype,description,linkregister&filters=reference|1741&theme=bluesky"></iframe>

Injection

The injection method uses a background task to call our publish function and returns the text to inject directly into an area of your webpage. 

This has some benefits including alleviating some security issues that may occur when accessing files and pages within an iframe (Safari for example does not permit cookie access by pages within an iframe unless the page within that iframe has been visited in the main browser window first).

Note: You may require javascript coding experience to use injection and required JQuery on the webpage to work.

Example <div> placed on the page at the point you want to display the job list:

<div id="trmsjobs"></div>

Example code to place at the bottom of the webpage:

<script type="text/javascript">
var options = {
       fields="reference,title,location",
       filters="",
       sorts="",
       theme="bluesky"
       };

var url = "";

$(document).ready(function () {
               $.ajax({
                       url: "https://evoportalus.tracker-rms.com/clientdatabase/jobs",
                       data: options,
                       success: function(data) {
                               $("#trmsjobs").html(data);
                       }
               });
});
</script>


The HTML and CSS Stylesheet

The styling can be based on the examples below and are completely customisable so will need to be authored by your website designer in order to reflect the look and feel of your website when displaying the published job information.  The published job HTML is rendered using a simple unordered list format as in the following example:

<div id="trackerpublishlist">
    <ul>
        <li>
            <ul>
                <li class="publish_reference">JOB-1168</li>
                <li class="publish_title">Administrator</li>
                <li class="publish_location">London</li>
            </ul>
        </li>
    </ul>
</div>

First, you will probably want to set up the base style for the iframe body and the unordered list that is rendered as follows:

#trackerpublishlist
{
 list-style: none;
 padding: 10px;
 margin: 0px;
 background-color: #fff;
 overflow: auto;
 vertical-align: text-top;
}
#trackerpublishlist ul
{
 list-style: none;
 padding: 0px;
 margin: 0px;
 position: relative;
}
#trackerpublishlist ul li
{
 list-style: none;
 position: relative;
 padding: 0px;
 margin: 0px;
}
#trackerpublishlist ul li ul
{
 list-style: none;
 padding: 0px;
 margin: 0px;
 position: relative;
}
#trackerpublishlist ul li ul li
{
 list-style: none;
 position: relative;
 padding: 0px;
 margin: 0px;
}

As you can see from the example HTML above, each field in the parameter list has its own class reference in the HTML rendered so that it can be style independently to any other field. For example, the “title” parameter can has a corresponding class=”publish_title” CSS class so can be re-styled as in the example below.  Each of the fields therefore can have its own class defined in the CSS file.

#trackerpublishlist ul li ul li.publish_title
{
     font-size: 15px;
     color: #666;
     list-style: none;
     left: 0px;
}

Once all the classes have been defined for the current page, this CSS file should be saved onto your main web server alongside your website in order that it can be referenced in the <iframe/> code.

 

Getting creative with the CSS

CSS is very flexible in its ability to control the look, feel and content of the information displayed on screen and here are some additional tricks you can use to help you better display published job information to your visitors.

Example 1: This CSS snippet will add the text “Location: ” before the location information is displayed:

#trackerpublishlist ul li ul li.publish_location
{
     font-size: 13px;
     font-weight: bold;
     color: #333;
     list-style: none;
     left: 0px;
     margin-top: 20px;
}
.publish_location:before
{
     content: "Location: ";
     font-weight: normal;
}

Example 2: This CSS snippet will truncate the description to 1 line and add “…” to the end if it runs off the page.  Idea for Vacancy lists:

.publish_description
{
    font-size: 13px;
    	font-weight: normal;
    	color: #333;
    	list-style: normal;
    	left: 0px;
    	background-color: #ffffff;
    	margin-bottom: 10px;
    width: 700px;
    height: 20px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
Safari Known Issues

Safari browsers may have an issue when using iframes as this browser does not allow iframe’d pages to use cookies unless the end user has first visited the same page in the main browser window.  This can cause the registration pages to error on Safari and iPhone etc as it uses cookies to store certain information about the session.

The work-around for this is to use the urlRedirect parameter which allows you to call our registration page as the main page in the browser and then instantly redirect to your branded web page.  This allows the browser the ability to store the cookies which are then used within the iframe.

To do this:

  1. If not already in place, ensure that you have a branded web page on your website for housing our TrackerRMS registration page (e.g. www.yourwebsite.com/register/ ) and that the jobcode in the query string we pass you is transferred to the src of the iframe.  See instruction above regarding this.
  2. Update your TrackerRMS settings to make the registration button point to the redirected page in Tools > Job Settings > Job Boards > Registration Override URI
    e.g. https://evoportalus.tracker-rms.com/[yoursite]/apply?urlRedirect=http://www.yourwebsite.com/register/

This will ensure a seamless link to the registration page that will work in any browser, but address the issues surrounding iframes in Safari