osFaq v1.1.ST Install Guide

osFAQ v1.1.ST integaration guide for osTicket 1.6 STABLE (and RC5)

Setup SEO Friendly URL’s (optional)


You must have osTicket v1.6.RC5 or v1.6.STABLE installed.

osFaq v1.1 ST – Install / Upgrade

  1. Download

    the osFaq files here: osFaq Download

  2. Offline mode

    Its recommended to set your osTicket site to offline mode before continuing.

  3. Extract

    the compressed download and upload the contents of the upload/ folder to your osTicket directory. EG: the same directory you installed osTicket in.
    *** Upgrading from RC3/4/5/6 or 1.0ST to 1.1ST … skip to step 7.
    *** Upgrading from RC2 to 1.1ST … skip to step 6.

  4. Integrate osFaq into the osTicket staff area.

    The osFaq installer can also guide you through this process.
    Edit: [your-osTicket-installation]/include/staff/header.inc.php
    and paste the following text between the ‹head› and ‹/head› tags, preferably below the other stylesheet imports:


    Edit [your-osTicket-installation]/include/class.nav.php
    and paste the following below the “My Account” tab in the function StaffNav (after line 42 approx.):

    $tabs['faq']=array('desc'=>'FAQs','href'=>'faq_admin.php','title'=>'Frequently Asked Questions');


        function StaffNav($pagetype='staff'){
            global $thisuser;
            if($thisuser->isAdmin() && strcasecmp($pagetype,'admin')==0) {
                $tabs['dashboard']=array('desc'=>'Dashboard','href'=>'admin.php?t=dashboard','title'=>'Admin Dashboard');
                $tabs['settings']=array('desc'=>'Settings','href'=>'admin.php?t=settings','title'=>'System Settings');
                $tabs['emails']=array('desc'=>'Emails','href'=>'admin.php?t=email','title'=>'Email Settings');
                $tabs['topics']=array('desc'=>'Help Topics','href'=>'admin.php?t=topics','title'=>'Help Topics');
                $tabs['staff']=array('desc'=>'Staff','href'=>'admin.php?t=staff','title'=>'Staff Members');
            }else {
                $tabs['tickets']=array('desc'=>'Tickets','href'=>'tickets.php','title'=>'Ticket Queue');
                if($thisuser && $thisuser->canManageKb()){
                 $tabs['kbase']=array('desc'=>'Knowledge Base','href'=>'kb.php','title'=>'Knowledge Base: Premade');
                $tabs['directory']=array('desc'=>'Directory','href'=>'directory.php','title'=>'Staff Directory');
                $tabs['profile']=array('desc'=>'My Account','href'=>'profile.php','title'=>'My Profile');
                $tabs['faq']=array('desc'=>'FAQs','href'=>'faq_admin.php','title'=>'Frequently Asked Questions');
  5. Integrate osFaq into the osTicket client area.

    The osFaq installer can also guide you through this process.
    Edit [your-osTicket-installation]/include/client/header.inc.php
    and paste the following text between the ‹head› and ‹/head› tags, preferably below the other stylesheet imports:


    Edit [your-osTicket-installation]/include/client/header.inc.php
    and paste the following text between the ‹ul id="nav"› and ‹/ul› tags, preferably directly under the opening ‹ul id="nav"› tag
    (the link will appear as the far right header link):

  6. FAQs
  7. ie:


  8. Display the featured FAQ area on your osTicket home page

    You can display the featured FAQ area on any osTicket page by using the following line of code. Paste it where you want the featured FAQ’s to be displayed.
    The installer/upgrader will check for the existence of this line of code in [your-osTicket-directory]/index.php

    This is an example implementation:

  9. Run the osFaq Installer:

    In a new browser window, goto: http://[your-osTicket-directory]/faq/setup/

    • The installer will ask what language you want to use when it first starts. The chosen language will also be applied to osFaq. You can also change language from the osFaq settings area after the install/upgrade.
    • The install wizard will choose the most suitable install or upgrade option for you.
    • Next the installer will install or upgrade the osFaq database tables in your existing osTicket database to osFaq version 1.1-ST (STABLE).
    • Then the installer will guide you through any incomplete integration steps (as listed above).
    • Once finished your new osFaq installation is ready to use.
  10. Online mode

    You should turn your osTicket site back online now.

Setup SEO Friendly URL’s (optional)

Only required if you want to use SEO friendly URLs instead of the default php type URLs. SEO URLs will have a greater indexable value to search engines due to text from the FAQs being used for the URL text.
This process can be automated from the osFaq settings page after the install is complete. If you dont have a .htaccess file in your osticket directory, you will need to create one first and set its permissions to writtable. The file location should be [your-osticket-install]/.htaccess

When SEO-URL’s is enabled on the osFaq settings page, it will ask if you want to write some data to this file. Anything already in your .htaccess file (in the osTicket root directory) from previous installs of osFaq will be removed. Other custom entries will be preserved and new data will be written to it if the .htaccess option is checked. You can turn the SEO-URL option on or off at any time from the osFaq settings page. If you turn SEO-URLs off and have the write box checked, any entries written by this system will be removed from the file.

NOTE: You can also perform the .htaccess writes manually if you wish, using the manual-instructions below. If you wish to enable the SEO-URL’s option in osFaq, make sure the .htaccess option is NOT checked.


Manual Instructions (not required in most cases)

IMPORTANT: Copy the information below and past it into [your-osTicket-directory]/.htaccess. Make sure you change the RewriteBase location in [your-osTicket-directory]/.htaccess to match your installation of osTicket.
EG: the path where you installed osTicket, in relation to your servers public root directory “/
The example below is for an osTicket installation installed in a folder called support


Options +FollowSymLinks
RewriteEngine On
RewriteBase /support/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)-c([0-9]+)-a([0-9]+)-p.html$ faq.php?cid=$2&answer=$3&print=true&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+)-a([0-9]+).html$ faq.php?cid=$2&answer=$3&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+)-a([0-9]+)-(pg|i)([0-9]+)-p.html$ faq.php?cid=$2&answer=$3&$4=$5&print=true&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+)-a([0-9]+)-(pg|i)([0-9]+).html$ faq.php?cid=$2&answer=$3&$4=$5&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+)-(pg|i)([0-9]+)-p.html$ faq.php?cid=$2&$3=$4&print=true&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+)-(pg|i)([0-9]+).html$ faq.php?cid=$2&$3=$4&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+)-p.html$ faq.php?cid=$2&print=true&%{QUERY_STRING}
RewriteRule ^(.*)-c([0-9]+).html$ faq.php?cid=$2&%{QUERY_STRING}