Request a quote

Request a quote provides an easy to use request a quote form, stores and displays quote requests from customers. It also has fully customizable notification system for customers and admin.

Documentation

Author: eMarket Design
Last Updated: 2017-01-30

Introduction

Request a quote provides an easy to use request a quote form, stores and displays quote requests from customers.

Concepts

The following is the definition(s) of the concept(s) covered in the context of Request a quote app:

Last Updated: 2016-11-07

Quotes

Last Updated: 2017-01-30

Quick Start

Request a Quote Introduction

Watch Request a Quote Introduction video to learn about the plugin features and configuration.

How to resolve theme related issues

If your theme is not coded based on WordPress theme coding standards and does have an unorthodox markup, you will see some things on your site such as sidebars not getting displayed where they are supposed to or random text getting displayed on headers etc. The good news is you may fix all of theme related conflicts following the steps in the documentation.

Please note that if you’re unfamiliar with code/templates and resolving potential conflicts, we strongly suggest to hire us or a developer to complete the project for you.

Request a Quote Community Edition Documentation - Resolving theme related conflicts

Working with Quotes

Using Request a quote, you can create, modify, delete, and search quote records, associated taxonomies, or relationships.

Last Updated: 2016-11-07

Creating Quotes

To create quote records in the admin area:

  1. Log in to your Administration Panel.
  2. Click the 'Quotes' tab.
  3. Click the 'Add New' sub-tab or the “Add New” button in the quote list page.
  4. Start filling in your quote fields. You must fill all required fields. All required fields have red star after their labels.
  5. As needed, set quote taxonomies and relationships. All required relationships or taxonomies must be set.
  6. When you are ready, click Publish. If you do not have publish privileges, the "Submit for Review" button is displayed.
  7. After the submission is completed, the quote status changes to "Published" or "Pending Review". Users must have "publish" right to publish quotes. Users who do not have "publish" right can still create quotes; however, these quotes must be reviewed and approved by a user with quote "publish" right. Check Roles and Responsibilities section of this document to see which access groups have quote "publish" right.

Alternatively, you can create quote records using the quote entry form in the frontend by filling out the required fields.

Last Updated: 2016-11-07

Modifying Quotes

Quotes can be modified by clicking on the "Edit" link under the quote title in the quote list page in the admin area. Make any necessary changes and then click Publish.

Last Updated: 2016-11-07

Searching Quotes

In Request a quote, users are only allowed to search quotes they have access to. Users who have access to quotes can search using the filter system in the quote admin area.

Last Updated: 2016-11-07

Scheduling Quotes

To schedule Quotes for publication on a future time or date in the admin area:

  1. Log in to your Administration Panel.
  2. Click the 'Quotes' tab.
  3. Click the 'Add New' sub-tab or the “Add New” button in the quote list page.
  4. Start filling in your quote fields. You must fill all required fields. All required fields have red star after their labels.
  5. As needed, set quote taxonomies and relationships. All required relationships or taxonomies must be set.
  6. When you are ready, click "Edit" in the Publish area next to the words "Publish immediately". You can also change the publish date to a date in the past to back-date Quotes. Change the settings to the desired time and date. You must also hit the "Publish" button when you have completed the quote to publish at the desired time and date.
  7. After the submission is completed, the quote status changes to "Published".
Last Updated: 2016-11-07

Password Protected Quotes

To create a password protected quote in the admin area:

  1. Log in to your Administration Panel.
  2. Click the 'Quotes' tab.
  3. Click the 'Add New' sub-tab or the “Add New” button in the quote list page.
  4. Start filling in your quote fields. You must fill all required fields. All required fields have red star after their labels.
  5. As needed, set quote taxonomies and relationships. All required relationships or taxonomies must be set.
  6. Click the "Edit" link next to Visibility in the publish box and select "Password protected".
  7. Enter a password that will be required to view that quote in the text field. The password is limited to 20 characters.
  8. When you are ready, click the "Publish" button (or "Update" if the quote is already published.)
  9. After the submission is completed, the quote status changes to "Published".

Only an Administrator and users with "publish" right can change the password set for your quote or modify visibility setting by clicking the "Visibility: Edit" link again.

When quote content is password protected, quote title displays the text "Protected: " before the quote Title and the content prints a password form with this text: "This content is password protected. To view it please enter your password below:".

If multiple quotes have the same password, one will only have to enter the required password once. Only one password is tracked at a time so if you visit two different quotes with two different password, you must re-enter the quote password to access content. WordPress saves passwords for maximum 10 days. After this period expires, one must reenter the password again to view the protected content.

Last Updated: 2016-11-07

Private Quotes

Quotes can be privately published to remove them from quote lists and feeds.

To create a private quote in the admin area:

  1. Log in to your Administration Panel.
  2. Click the 'Quotes' tab.
  3. Click the 'Add New' sub-tab or the “Add New” button in the quote list page.
  4. Start filling in your quote fields. You must fill all required fields. All required fields have red star after their labels.
  5. As needed, set quote taxonomies and relationships. All required relationships or taxonomies must be set.
  6. Click the "Edit" link next to Visibility in the publish box and select "Private".
  7. Once you change the visibility to private, the quote status changes to "Privately Published".
  8. When you are ready, click the "UPDATE" button.

Only an Administrator and users with "publish" right for the quote can change visibility setting by clicking the "Visibility: Edit" link again.

Last Updated: 2016-11-07

Previewing Quotes

To preview quote content press the "Preview" button - a button directly above the “publish” button - in the publish box before officially publishing or sending for review.

Last Updated: 2016-11-07

Draft Quotes

To create a draft quote in the admin area:

  1. Log in to your Administration Panel.
  2. Click the 'Quotes' tab.
  3. Click the 'Add New' sub-tab or the “Add New” button in the quote list page.
  4. Start filling in your quote fields. You must fill all required fields. All required fields have red star after their labels.
  5. As needed, set quote taxonomies and relationships. All required relationships or taxonomies must be set.
  6. When you are ready, click "Save Draft" button in the publish box.
  7. After the submission is completed, the quote status stays at "Draft".
Last Updated: 2016-11-07

Quote Author

Once the quote is published the user who created the quote is assigned as the quote author. Quote authors can view and edit the quote. One can change the quote author from the author box. The author box drop down is limited to the users who have quote "publish" right.

Last Updated: 2016-11-07

Setting Services

Service can be set by typing the desired option in the empty text field and clicking "Add" button in "Services" box and updating/saving the quote. Setting a value for Service is optional. Service is also not organized hierarchically meaning there's no relationship from one Service value to another.

Request a quote comes with a preset Services defined in detail in Glossary section of this document. Administrators can always add/remove/modify the list based on your organizational needs. Some widgets created upon installation are based on predefined Services.

Last Updated: 2016-11-07

Displaying Quotes

Displaying Quote archives can be done by creating a link in the Appearance Menus Screen in the admin area.

Alternatively, if you'd like to display a specific Quote, you can select the link from Quote metabox and add it to your menu. If you don't see Quote metabox, check the Screen Options to ensure it is set to display.

To create a custom link for Quote archives:

  1. Goto Appearance in the admin menu and click on Menus link
  2. On the right hand side, pick the menu you’d like to include from Select a menu to edit dropdown
  3. Under Links menu navigation item, type in /emd_quote to the URL field
  4. Type in Quotes or another label describing the custom link URL in the Link Text field
  5. Click “Add to menu” button to add the item to the menu
  6. Pick “primary location” under “Menu Settings” below the menu
  7. Save your menu
  8. Go to the frontend and click on the link you created to access Quotes. Quote archive page content is only displayed to the authorized users who have access permissions.
Last Updated: 2016-11-07

Locking Quotes

In Request a quote, Quotes are locked during editing, preventing other users from accessing and modifying the Quote.

If a user clicks to edit one of the Quote records that's currently locked they are presented with three options in a pop-up dialog:

  1. Go Back - Return to the Quotes listing.
  2. Preview - Preview the current state of the Quote that's being edited.
  3. Take Over - Lock out the current editor of the Quotes and begin editing. (The other user will receive a notification)

The user that has been locked out receives the following dialog, and is no longer able to edit the Quote. It can take up to 15 seconds for the current Quote editor to be notified that another user has taken over.

Standards

Standard views display a single type of content in a custom format and can be used in place of archive views. Administrators can display standard views using their shortcodes by choosing the name of the view you want to display from the WPAS component list after clicking on the WPAS toolbar button on any page.

The following sections list the Request a quote standard views available:

Last Updated: 2016-11-07

Contact List

"Contact List" is a standard view which displays 10 Quote records per page with a post status of publish in descending order by date. Page navigation is enabled. If you choose to install setup pages during plugin activation, a WordPress page is created with a title of "Contact List". You can visit this page to access the view. To display it in another page or post, use [contact_list] shortcode or select the view name from the WPAS component list after clicking on the WPAS toolbar button.

Forms

Forms allow users to enter data that is sent to Request a quote for processing. Forms can be used to enter or retrieve search results related to your content.

The following sections list the Request a quote forms:

Last Updated: 2017-01-29

Request a quote

"Request a quote" form is used for entering quote records from the frontend. You can use [request_a_quote] shortcode to display it in a page or post of your choise as well.

The following are the fields used in the form:

  • First Name (text)
  • Last Name (text)
  • Address (text)
  • City (text)
  • Zipcode (text)
  • State (select)
  • Email (text)
  • Phone (text)
  • Contact Preference (radios)
  • Callback Time (select)
  • Budget (text)
  • Additional details (textarea)
  • ID (hidden_func)
  • Form Name (hidden)
  • Form Submitted By (hidden_func)
  • Form Submitted IP (hidden_func)
  • Services (select-multiple selection allowed)

Notifications

Notifications are email alerts Request a quote sends when new modifications, additions or changes occur.

Notifications tab can be accessed from Settings > Request a quote Settings page in the admin area. Using Notifications tab you can:

  • Enable or disable notifications
  • Choose where the notification will be triggered from
  • Customize email content or subject using tags
  • Include CC, BCC, Reply to
  • Choose who will receive notification either by changing Send to address or selecting appropriate relationship checkbox.

For notifications to work, you must be able to send emails from the server Request a quote enabled. The following sections list the notifications available for Request a quote:

Last Updated: 2016-11-07

Quote Receipt

When any Quote record:

  • added from frontend

The following get notified:

  • Quote Email

Administration

Plugins are managed from the Plugins screen in the Administration Screens of your WordPress site. All Plugins listed on this screen are found in your wp-content/plugins directory. Each Plugin has a description in its header section of what it does, an author and website to refer to, and a version number. Find Request a quote from the list.

Last Updated: 2016-11-07

Installation

To install your Request a quote Plugin using the built-in plugin installer:

  1. Download Request a quote Plugin to your desktop.
  2. Go to Plugins "Add New".
  3. Under Upload, click "Browse".
  4. Find the request-a-quote-community-VERSION.zip file.
  5. Click Install Now to install the Request a quote Plugin.
  6. A popup window will ask you to confirm your wish to install the Plugin.
  7. Click Proceed to continue with the installation. The resulting installation screen will list the installation as successful or note any problems during the install.
  8. If successful, click Activate Plugin to activate it, or Return to Plugin Installer for further actions.

Replace VERSION in instructions with the version number of Request a quote you want to install. After the activation, the Request a quote plugin setup may display notification asking if you if you'd like to install setup pages or skip setup page installation, click the appropriate button.

Last Updated: 2016-11-07

Uninstallation

To uninstall your Request a quote Plugin using the built-in plugin installer:

  1. Go to Plugins screen.
  2. Find the Request a quote Plugin you wish to deactivate and uninstall.
  3. Click Deactivate.
Last Updated: 2016-11-07

Plugin Updates and Upgrades

WordPress auto-update system displays notification in the Admin Bar and also on the plugins page when new version of the Request a quote is available.

To install the new version, simply hit the "Update automatically" button. WordPress will automatically download the new package, extract it and replace the old files. No FTP, removing old files, and uploading is required.

Upgrading your plugin

We offer different plugin editions to better match your needs. If you purchased a different edition of Request a quote, follow the steps below to upgrade your plugin:

  1. Go WordPress plugins page and deactivate and optionally delete the current Request a quote Community edition.
  2. Install the new edition based on the instructions in WordPress Codex
  3. Activate the new edition
  4. Go to Plugin Settings page and save settings

Upgrading Request a quote Community edition does not have any impact on your existing data but it is always a good idea to back up your WordPress database as a rule of thumb before any changes.

Using Plugin Extensions

Request a quote Community edition is configured to work with many plugin extensions. Most plugin extensions work regardless of the edition unless specified specifically in the plugin page.

if you purchased a plugin extension, follow the instructions in WordPress Codex to install and activate your plugin extension like any other WordPress plugin.

If your extension comes with a license key, you must save and activate your license key to get software updates and support.

Last Updated: 2016-11-07

Modifying Form Fields

Administrators can show, hide, and resize form elements by clicking on the Settings page under Quotes menu. In addition, form captcha element can be set to "Visitors Only","Always Show", or "Never Show".

Required fields can not be disabled however you can change the column size. The optional fields can be enabled, disabled, or modified to occupy more or less space in the form layout.

Make sure to save your changes after any modification otherwise your changes will not take effect.

Last Updated: 2016-11-07

Changing Entity Base Slug

The default entity base slug can be changed within entity tab of settings page in Quotes menu. After you update, make sure to refresh your site's Permalinks under Settings. You can only change base slug if post name based permalink structure is selected.

Last Updated: 2017-01-29

Resolving theme related conflicts

For the most part, Request a quote templates will integrate nicely with most WordPress themes. However you may run into issues when the default Request a quote content wrappers do not match your chosen theme or your theme's CSS rules overwrite Request a quote CSS rules.

Theme related issues manifest themselves by;

  • Breaking your layout on Request a quote pages and shifting your sidebars into incorrect positions
  • Some random text getting displayed in header or footer of your site
  • Some sections in plugin pages not getting displayed as in the plugin's demo site.

Theme related issues can potentially affect all single, taxonomy, archive and shortcode pages because Request a quote uses templates of its own to display these pages and it’s impossible for eMDPlugins to know exactly what markup or CSS rules your theme uses.

The following is a Developer level documentation. If you’re unfamiliar with code/templates and resolving potential conflicts, we strongly suggest to hire us or a developer to complete the project for you. Please also note that our complimentary support team is unable to assist with customization per our Support Policy.

There are three methods to resolve theme related issues;

  • Copying and modifying your theme's header.php and footer.php
  • Copying and modifying your theme's page.php
  • Adding custom CSS rules

Modifying header.php and footer.php

  1. Go to your theme's folder -- wp-content/themes/YOURTHEME/
  2. Copy header.php of your theme as header-emdplugins.php
  3. Copy footer.php of your theme as footer-emplugins.php
  4. Remove the conflicting code from header-emdplugins.php and/or footer-emplugins.php.
  5. This will make Request a quote use these newly created header and footer instead of your theme's default header and footer. Save the files. You’re done.

Copying and modifying your theme's page.php

If the issue can not be resolved through simply modifying the header and footer templates, you need to modify your theme's page.php.

Please note that this approach eliminates Your ability:

  • To set page templates for single, archive and taxonomy pages
  • To remove page navigation from archive and taxonomy pages.

from Quotes, settings page.

To set up this template page:

  1. Duplicate your theme’s page.php file, and name it request-a-quote.php. This file should be found like this: wp-content/themes/YOURTHEME/request-a-quote.php.
  2. Open up your newly created request-a-quote.php in a text editor, or the editor of your choice.
  3. Next you need to find the loop (see The_Loop). The loop usually starts with a:

    <?php if ( have_posts() ) :

    and usually ends with:

    <?php endif; ?>

    This varies between themes. Once you have found it, delete it. In its place, put:

    <?php request_a_quote_content(); ?>
  4. This will make your theme use Request a quote’s loop instead. Save the file. You’re done.

Adding CSS rules

You add custom CSS rules in the Custom CSS field of Tools tab under Quotes menu, settings page to overwrite your theme's default CSS. The custom css rules added in the settings are not deleted when your plugin gets updated.

You can learn CSS language by completing the tutorials at w3schools.com

Last Updated: 2016-11-07

Help Screens

Request a quote includes contextual help to give more details on the functionality. If contextual help is available for a particular screen, it is shown as a hanging tab under the toolbar. Contextual help displays one or more Help items that are related to the Screen.

Click on the Help tab to expand the Help, then click the Help hanging tab to collapse the Help display.

Last Updated: 2016-11-07

Creating Shortcodes

Shortcodes are small blocks of reusable code that can be inserted in a page to generate dynamic and often complex functionality. There is no limit in number of shortcodes that can be created and used. Multiple shortcodes can be used in the same page.

Examples

The following shortcode creates a Contact List page with quotes of Services category.

[contact_list filter="tax::raq_services::is::YOUR TAXONOMY VALUE;"]

The following shortcode creates a Contact List page with quotes of Services category.

[contact_list filter="attr::emd_contact_first_name::is::YOUR ATTRIBUTE VALUE;"]

The following shortcode creates a Contact List page with quotes of Services category where First Name is emd_contact_first_name .

[contact_list filter="attr::emd_contact_first_name::is::YOUR ATTRIBUTE VALUE;tax::raq_services::is::YOUR TAXONOMY VALUE;"]

The following shortcode creates a Contact List page with the published quotes of Services category where First Name is emd_contact_first_name in descending order by comment count, displaying 15 quotes with no pagination.

[contact_list filter="attr::emd_contact_first_name::is::YOUR ATTRIBUTE VALUE;tax::raq_services::is::YOUR TAXONOMY VALUE;misc::post_status::is::publish;misc::order::is::DESC;misc::posts_per_page::is::15;misc::has_pages::is::false;misc::orderby::is::comment_count;"]

Note: Replace YOUR ATTRIBUTE VALUE with the value stored for that attribute and YOUR TAXONOMY VALUE with the slug of the corresponding taxonomy value.

Last Updated: 2016-11-07

Localization(l10n)

Request a quote can be translated into any language by editing request-a-quote-emd-plugins.pot and request-a-quote.pot files.

  • request-a-quote-emd-plugins.pot file is for the components used in Request a quote.
  • request-a-quote.pot file is for the Request a quote specific strings that need to be translated.

Follow the steps below to fully translate Request a quote into the desired language:

  1. Copy request-a-quote-emd-plugins.pot as language specific .po file such as request-a-quote-emd-plugins-tr_TR.po.
  2. Copy request-a-quote.pot as language specific .po file such as request-a-quote-tr_TR.po.
  3. Use your favorite PO file editor and complete translation strings in the .po files you created.
  4. When translations are completed, create .mo file of each .po file.
  5. Create wp-content/languages/request-a-quote directory
  6. Put translated .mo files and .po files in the directory above to protect them from getting deleted during plugin updates.
  7. Change the language to the translated language from Settings > General > Site Language.
  8. Repeat the process until you get all strings translated
  9. .
Last Updated: 2016-11-07

Screen Options

Screen Options is displayed as a hanging tab under the toolbar. Click on the Screen Options tab to expand the options available for a particular Screen, check (or uncheck) the desired options, then click the Screen Options hanging tab to collapse the Screen Options. Each screen may have a different set of Screen Options.

Edit page screen options allow the user to decide the edit boxes ,such as taxonomies, relationships or specific boxes such as authors, are presented in the edit area. You can turn on and off the ones that are not needed for a particular edit session.

List page screen options allow users to set the number of records displayed in the list table.

Last Updated: 2017-01-29

Customizations

Request a quote offers extensive customization options from plugin settings, settings page. The following customizations can be done without changing your theme's template files:

  • Enable or disable all fields, taxonomies and relationships from backend and/or frontend
  • Set any entity and/or archive base slug
  • Set the page template of any entity, taxonomy and/or archive page to sidebar on left, sidebar on right or no sidebar (full width)
  • Hide the previous and next post links on the frontend for single posts
  • Hide the page navigation links on the frontend for archive posts
  • Display or hide any custom field
  • Display any side bar widget on plugin pages using EMD Widget Area
  • Set custom CSS rules for all plugin pages including plugin shortcodes

If your customization requirements are more complex and can not be resolved through the list of options provided above, you need to implement advanced customization techniques.

Advanced Customizations

Note:The following is a Developer level documentation. If you’re unfamiliar with code/templates/localization and resolving potential conflicts, we strongly suggest to hire us or a developer to complete the project for you. Please also note that our complimentary support team is unable to assist with customization per our Support Policy.

Request a quote advanced customization can be done on 3 different areas;

  • Look & Feel - changing layout and overall presentation of content
  • Functionality - adding, deleting or modifying existing plugin functionality
  • Strings - changing the field names

Plugin customization can be implemented by using 4 different methods:

Customizing functionality

If you'd like to modify the functionality, you need to modify the plugin design (sold separately) using WP App Studio ProDev API access (sold separately and monthly development plans are available).

Customizing look & feel

If you like to customize how HTML elements are to be displayed on screen, you can add custom CSS rules with higher specificity to your theme's style.css file.

If you'd like to customize layouts of Request a quote, Please follow the steps below:

  1. Create "emd_templates" directory under your theme's directory.
  2. Copy the layout files that you want to customize into "emd_templates" directory which you created in step 1 from PLUGIN-ROOT/layouts directory
  3. Modify the file based on your needs

The layout files you added in the "emd_templates" has always precedence over the plugin's layout files. If the customized files get deleted, the layouts which came with your plugin are displayed. We recommend that you create a child theme if you'd like to minimize the risk of accidental deleting of the "emd_templates" directory because of theme updates.

The following layout file types can be customized:

  • Single view page
  • Archive view page
  • Taxonomy view page
  • Search form result page
  • Standard list page
  • Integration page
  • Org chart record and tooltip layout page

Customizing strings

Request a quote labels and messages can be customized to better match your needs through language files. The customization is very similar to localization but recommended for US English users only. If your language is different than US English, you should localize instead of customize. The customization can be done for the strings included in request-a-quote-emd-plugins.pot and request-a-quote.pot files.

The following steps cover the string customization of labels and messages.

  • request-a-quote-emd-plugins.pot file is for the translatable strings of components used in Request a quote.
  • request-a-quote.pot file is for the Request a quote specific strings that need to be translated.

Follow the steps below to fully customize Request a quote labels and messages:

  1. Copy request-a-quote-emd-plugins.pot as language specific .po file such as request-a-quote-emd-plugins-en_US.po.
  2. Copy request-a-quote.pot as language specific .po file such as request-a-quote-en_US.po.
  3. Use your favorite PO file editor or plugin and complete customization of strings in the .po files you created.
  4. When customization are completed, create .mo file of each .po file.
  5. Create wp-content/languages/request-a-quote directory.
  6. Put customized .mo files and .po files in the directory above to protect them from getting deleted during plugin updates.
  7. Repeat the process until you get all strings customized. If you do not need a string to be customizes, leave it as it is.

All customization can be done by yourself or emarketdesign.com. Open a support ticket, if you prefer us to do the customization for you.

Glossary

Below is the list of attribute and taxonomy definitions.

Last Updated: 2017-01-29

Quote

null

First Name
First Name is a required field. First Name is filterable in the admin area. First Name does not have a default value.
Last Name
Last Name is a required field. Last Name is filterable in the admin area. Last Name does not have a default value.
Address
Address does not have a default value.
City
City is filterable in the admin area. City does not have a default value.
Zipcode
Zipcode is filterable in the admin area. Zipcode does not have a default value.
State
State is filterable in the admin area. State does not have a default value. State is displayed as a dropdown and has predefined values of: ak, al, ar, az, ca, co, ct, dc, de, fl, ga, hi, ia, id, il, in, ks, ky, la, ma, md, me, mi, mn, mo, ms, mt, nc, nd, ne, nh, nj, nm, nv, ny, oh, ok, or, pa, ri, sc, sd, tn, tx, ut, va, vt, wa, wi, wv, wy.
Email
Email is a required field. Email is filterable in the admin area. Email does not have a default value.
Phone
Phone is filterable in the admin area. Phone does not have a default value.
Contact Preference
Contact Preference is a required field. Contact Preference is filterable in the admin area. Contact Preference has a default value of "'Email'".
Callback Time
Callback Time is filterable in the admin area. Callback Time does not have a default value. Callback Time is displayed as a dropdown and has predefined values of: em, lm, ea, la, ee, le.
Budget
Budget is filterable in the admin area. Budget does not have a default value.
Additional details
Additional details does not have a default value.
ID
Unique identifier for a quote request. Being a unique identifier, it uniquely distinguishes each instance of Quote entity. ID does not have a default value.
Form Name
Form Name is filterable in the admin area. Form Name has a default value of "admin".
Form Submitted By
Form Submitted By is filterable in the admin area. Form Submitted By does not have a default value.
Form Submitted IP
Form Submitted IP is filterable in the admin area. Form Submitted IP does not have a default value.