=== Brilliant Web-to-Lead for Salesforce === Contributors: brilliantplugins, nickciske, stuporglue, jrfoell Tags: crm, contact form, contactform, web to lead, case to lead, salesforce.com, salesforce, salesforce crm, contact form plugin, contact form builder Requires at least: 4.0 Tested up to: 5.1 Stable tag: 2.7.3.4 License: GPLv2 Donate link: https://donate.charitywater.org/donate Brilliant Web-to-Lead for Salesforce creates a solid integration between your WordPress install(s) and your Salesforce.com account! == Description == Brilliant Web-to-Lead for Salesforce creates a solid integration between your WordPress install(s) and your [Salesforce CRM](http://www.salesforce.com) account! People can enter a contact form on your site, and the lead (or case) goes straight into Salesforce CRM: no more copy pasting lead info, no more missing leads: each and every one of them is in Salesforce.com for you to follow up. ### Check out the screencast [youtube http://www.youtube.com/watch?v=hnMzkxPUIyc] You can fully configure all the different settings for the form, and then use a shortcode to insert the form into your posts or pages, or you can use the widget that comes with the plugin and insert the form into your sidebar! Please see this [Demo video](http://www.youtube.com/watch?v=hnMzkxPUIyc) to get a full grasp of some of the power this plugin holds (though it's a bit outdated!). #### Previous contributors: * [Joost de Valk](http://profiles.wordpress.org/joostdevalk/) * [ModernTribe](http://profiles.wordpress.org/moderntribe/) * [Daddy Donkey Labs](http://daddyanalytics.com/) == Screenshots == 1. An example form generated with Brilliant Web-to-Lead for Salesforce (with optional CAPTCHA) -- both post and widget forms are shown in the TwentyEleven theme 2. The backend administration for Brilliant Web-to-Lead for Salesforce 3. The new form editor (multiple forms, hidden fields, add new fields, thanks URL, lead source per form) == Installation == 1. Upload the `plugin` folder to the `/wp-content/plugins/` directory or install via the Add New Plugin menu 1. Activate the plugin through the 'Plugins' menu in WordPress 1. Enter your Salesforce.com Organization ID on the plugin configuration page. == Frequently Asked Questions == = Does this plugin have any hooks or filters? Is there documentation? = Yes, quite a few. [Hooks & Filters Documentation](https://wordpress.org/plugins/salesforce-wordpress-to-lead/other_notes/) = I'm not seeing any errors, but the entry didn't get added to Salesforce! = To turn on in browser debugging, add a hidden field (enabled) named `debug` and set the value to `1`. To turn on debugging via email, add a hidden field (enabled) named `debugEmail` and set the value to `you@yourdomain.com` (your email address). Also check for debug logs at SalesForce to see if a validation rule is the culprit: `Administration Setup | Monitoring | Debug Logs`. = I'm not receiving new submission emails = 99% of the time the plugin is sendign these... and the issue is at the WordPress or server level. The Give team has an excellent article on [diagnosing and troubleshooting email issues](https://givewp.com/documentation/core/settings/emails/troubleshooting-common-email-problems/). = What are the built in field names? Not all the fields are working when I use the Field Label in the lead edit screen? = SalesForce is inconsistent in naming built in fields, and even misreports the names of some fields (like `MobilePhone`, which is actually `mobile`) in the customize fields screen. Generating a Web to Lead form gets you the real names, but the list below should help as well. Built in fields ` Human Name API Name - - - - - - - - - - - - - - - - - - - - - - - - First Name first_name Last Name last_name Title title Website URL Phone phone Mobile mobile Fax fax Email email Address street City city State/Prov. state Zip zip Country country Description description Industry industry Rating rating Annual Rev. revenue Employees employees ` Other Fields ` Lead Source lead_source Email Opt Out emailOptOut Fax Opt Out faxOptOut Do Not Call doNotCall Lead Record Type recordType Campaign Campaign_ID Campaign Member Status member_status ` Name may vary (these are lookup fields), generate a Web-to-Lead form with these fields included for the actual value ` SIC Code Product Interest Primary Current Generator(s) Number of Locations ` = How do I setup Web to Lead/Case for my SalesForce Account? = [Setting Up Web-to-Lead](http://login.salesforce.com/help/doc/en/setting_up_web-to-lead.htm) [Setting Up Web-to-Case](http://login.salesforce.com/help/doc/en/setting_up_web-to-case.htm) = How do I setup a Web to Case form? = Choose _Web to Case_ in the **Form Settings** (bottom of the form editor page). = Where do I find my Salesforce organization ID? = To find your Organization ID, do the following steps: 1. Log in to your SalesForce.com account 2. Go to Setup » Company Profile » Company Information 3. You'll find the Organization ID in the lower right hand corner of your screen = How do I use a SalesForce custom field? = 1. Go to Setup » Customize » Leads » Fields 1. If your custom field does not exist yet, create it now. 1. Find the API Name for your field (e.g. Custom_Field_Example__c). If it doesn't end in "__c" it's not the API name and will not work. 1. Add a new field to your form using the form editor on the plugin admin screen 1. Enter the API Name as the field name (left most box), then fill out the other fields normally (make sure to enable the field!). 1. Save your changes -- new submissions will now post that custom field to SalesForce. = How do I use the checkbox field? = Like any other field. Note that it is a single checkbox, not a checkbox list (yet). *Note:* You must provide a value for your checkbox. Generally `1` is what you want (unless you're expecting something other than true/false in SalesForce). If you don't provide a value, your checkbox will never get sent with the form data (and even if it did, it won’t "check" the box at SalesForce as "empty" = unchecked). _Checkbox lists and radio buttons will be in a future update._ = How do I pre-check a checkbox? = Before you do, consider if a pre-checked checkbox (opt-out) is [really what you want to do](http://sethgodin.typepad.com/seths_blog/2002/03/opt_in_matters_.html). If you insist on proceeding anyways: see the _Pre-check a checkbox_ example in [Other Notes](https://wordpress.org/plugins/salesforce-wordpress-to-lead/other_notes/). = How do I use the select (picklist) field? = **Hint: Use the form importer!** Use it like any other field -- however you'll need to specify the options (and optional values) for each field using the options box (far right). You'll also need to use the "internal name" from Salesforce as your field name (see next FAQ). The value box for a select list is the default value (the one selected on a fresh form). ` /* Preferred format: */ // Use same data for display and value passed to SF one two three // Use different data for display and value passed to SF, require user to select something (assuming field is required) Select One| name1|value1 name2|value2 // Use different data for display and value passed to SF name1|value1 name2|value2 /* Legacy Format (does not allow the use of colons in names or values): */ //Use same data for display and value passed to SF one|two|three //Use different data for display and value passed to SF, require user to select something (assuming field is required) Select One: | name1:value1 | name2:value2 //Use different data for display and value passed to SF name1:value1 | name2:value2 ` Some useful options lists -- you can remove any line(s) you don't want/need: _*Note:* If state and country aren't a valid combo, or the state doesn’t match the default country of your Salesforce install, your lead will likely be rejected -- so be careful with these!_ States / Provinces ` Select One| State| AL|Alabama AK|Alaska AZ|Arizona AR|Arkansas CA|California CO|Colorado CT|Connecticut DE|Delaware FL|Florida GA|Georgia HI|Hawaii ID|Idaho IL|Illinois IN|Indiana IA|Iowa KS|Kansas KY|Kentucky LA|Louisiana ME|Maine MD|Maryland MA|Massachusetts MI|Michigan MN|Minnesota MS|Mississippi MO|Missouri MT|Montana NE|Nebraska NV|Nevada NH|New Hampshire NJ|New Jersey NM|New Mexico NY|New York NC|North Carolina ND|North Dakota OH|Ohio OK|Oklahoma OR|Oregon PA|Pennsylvania RI|Rhode Island SC|South Carolina SD|South Dakota TN|Tennessee TX|Texas UT|Utah VT|Vermont VA|Virginia WA|Washington WV|West Virginia WI|Wisconsin WY|Wyoming DC|District of Columbia AS|American Samoa GU|Guam MP|Northern Mariana Islands PR|Puerto Rico UM|United States Minor Outlying Islands VI|Virgin Islands, U.S. Province| AB|Alberta BC|British Columbia MB|Manitoba NB|New Brunswick NL|Newfoundland and Labrador NS|Nova Scotia NT|Northwest Territories NU|Nunavut ON|Ontario PE|Prince Edward Island QC|Quebec SK|Saskatchewan YT|Yukon ` Countries ` AF|Afghanistan AX|Åland Islands AL|Albania DZ|Algeria AS|American Samoa AD|Andorra AO|Angola AI|Anguilla AQ|Antarctica AG|Antigua and Barbuda AR|Argentina AM|Armenia AW|Aruba AU|Australia AT|Austria AZ|Azerbaijan BS|Bahamas (the) BH|Bahrain BD|Bangladesh BB|Barbados BY|Belarus BE|Belgium BZ|Belize BJ|Benin BM|Bermuda BT|Bhutan BO|Bolivia (Plurinational State of) BQ|Bonaire, Sint Eustatius and Saba BA|Bosnia and Herzegovina BW|Botswana BV|Bouvet Island BR|Brazil IO|British Indian Ocean Territory (the) BN|Brunei Darussalam BG|Bulgaria BF|Burkina Faso BI|Burundi CV|Cabo Verde KH|Cambodia CM|Cameroon CA|Canada KY|Cayman Islands (the) CF|Central African Republic (the) TD|Chad CL|Chile CN|China CX|Christmas Island CC|Cocos (Keeling) Islands (the) CO|Colombia KM|Comoros (the) CD|Congo (the Democratic Republic of the) CG|Congo (the) CK|Cook Islands (the) CR|Costa Rica CI|Côte d'Ivoire HR|Croatia CU|Cuba CW|Curaçao CY|Cyprus CZ|Czech Republic (the) DK|Denmark DJ|Djibouti DM|Dominica DO|Dominican Republic (the) EC|Ecuador EG|Egypt SV|El Salvador GQ|Equatorial Guinea ER|Eritrea EE|Estonia ET|Ethiopia FK|Falkland Islands (the) [Malvinas] FO|Faroe Islands (the) FJ|Fiji FI|Finland FR|France GF|French Guiana PF|French Polynesia TF|French Southern Territories (the) GA|Gabon GM|Gambia (the) GE|Georgia DE|Germany GH|Ghana GI|Gibraltar GR|Greece GL|Greenland GD|Grenada GP|Guadeloupe GU|Guam GT|Guatemala GG|Guernsey GN|Guinea GW|Guinea-Bissau GY|Guyana HT|Haiti HM|Heard Island and McDonald Islands VA|Holy See (the) HN|Honduras HK|Hong Kong HU|Hungary IS|Iceland IN|India ID|Indonesia IR|Iran (Islamic Republic of) IQ|Iraq IE|Ireland IM|Isle of Man IL|Israel IT|Italy JM|Jamaica JP|Japan JE|Jersey JO|Jordan KZ|Kazakhstan KE|Kenya KI|Kiribati KP|Korea (the Democratic People's Republic of) KR|Korea (the Republic of) KW|Kuwait KG|Kyrgyzstan LA|Lao People's Democratic Republic (the) LV|Latvia LB|Lebanon LS|Lesotho LR|Liberia LY|Libya LI|Liechtenstein LT|Lithuania LU|Luxembourg MO|Macao MK|Macedonia (the former Yugoslav Republic of) MG|Madagascar MW|Malawi MY|Malaysia MV|Maldives ML|Mali MT|Malta MH|Marshall Islands (the) MQ|Martinique MR|Mauritania MU|Mauritius YT|Mayotte MX|Mexico FM|Micronesia (Federated States of) MD|Moldova (the Republic of) MC|Monaco MN|Mongolia ME|Montenegro MS|Montserrat MA|Morocco MZ|Mozambique MM|Myanmar NA|Namibia NR|Nauru NP|Nepal NL|Netherlands (the) NC|New Caledonia NZ|New Zealand NI|Nicaragua NE|Niger (the) NG|Nigeria NU|Niue NF|Norfolk Island MP|Northern Mariana Islands (the) NO|Norway OM|Oman PK|Pakistan PW|Palau PS|Palestine, State of PA|Panama PG|Papua New Guinea PY|Paraguay PE|Peru PH|Philippines (the) PN|Pitcairn PL|Poland PT|Portugal PR|Puerto Rico QA|Qatar RE|Réunion RO|Romania RU|Russian Federation (the) RW|Rwanda BL|Saint Barthélemy SH|Saint Helena, Ascension and Tristan da Cunha KN|Saint Kitts and Nevis LC|Saint Lucia MF|Saint Martin (French part) PM|Saint Pierre and Miquelon VC|Saint Vincent and the Grenadines WS|Samoa SM|San Marino ST|Sao Tome and Principe SA|Saudi Arabia SN|Senegal RS|Serbia SC|Seychelles SL|Sierra Leone SG|Singapore SX|Sint Maarten (Dutch part) SK|Slovakia SI|Slovenia SB|Solomon Islands SO|Somalia ZA|South Africa GS|South Georgia and the South Sandwich Islands SS|South Sudan ES|Spain LK|Sri Lanka SD|Sudan (the) SR|Suriname SJ|Svalbard and Jan Mayen SZ|Swaziland SE|Sweden CH|Switzerland SY|Syrian Arab Republic TW|Taiwan (Province of China) TJ|Tajikistan TZ|Tanzania, United Republic of TH|Thailand TL|Timor-Leste TG|Togo TK|Tokelau TO|Tonga TT|Trinidad and Tobago TN|Tunisia TR|Turkey TM|Turkmenistan TC|Turks and Caicos Islands (the) TV|Tuvalu UG|Uganda UA|Ukraine AE|United Arab Emirates (the) GB|United Kingdom of Great Britain and Northern Ireland (the) UM|United States Minor Outlying Islands (the) US|United States of America (the) UY|Uruguay UZ|Uzbekistan VU|Vanuatu VE|Venezuela (Bolivarian Republic of) VN|Viet Nam VG|Virgin Islands (British) VI|Virgin Islands (U.S.) WF|Wallis and Futuna EH|Western Sahara* YE|Yemen ZM|Zambia ZW|Zimbabwe ` _Note: Leading & trailing whitespace is trimmed when names and values are displayed, so feel free to use spaces to make things more readable._ = How do I use the Date field? = Choose it from the dropdown, that's all you *have* to do. If you want to customize the date format or display/functionality of the datepicker UI, you can set the options by entering a list of options in the Options box of the field editor, one per line. Note that you must end each option with a comma, or you'll end up with a javascript error instead of a datepicker. Note that any options you specify will *override* the default options. e.g. Default date format - Year, Month, Day `dateFormat : 'yy-mm-dd',` Month, Day, Year `dateFormat : 'mm-dd-yy',` Day, Month, Year `dateFormat : 'dd-mm-yy',` Day, Month, Year + Show the button panel ` dateFormat : 'dd-mm-yy', showButtonPanel: true, ` More information about the datepicker options can be found here: 1. Examples: http://jqueryui.com/datepicker/ 1. API Reference: http://api.jqueryui.com/datepicker/ = How do I find the "internal name" of my picklist field? = **Hint: Use the form importer!** Picklists in SalesForce (Web to Lead at least) are a strange beast -- you'd think you could pass the field name and SF would map it on their end... but they don't make it that easy. Instead you need to use the internal SF ID of the picklist... which looks more like: `00Nd0000007p1Ej` (this is just en example, this is not the id of your field). Where do you find this cryptic value? You can find it in two places (that I know of): 1. Edit the field and it'll be in the URL: e.g. `https://na14.salesforce.com/00Nd0000007p1Ej/...` 2. Generate a Web to Lead form with your field included and it'll be in the HTML e.g. `TestPicklist: ` for xhtml compatibility * Disable W3TC object caching when captcha is used (until a cache friendly captcha solution is added) * Add Content-Type header to form POST = 2.5.2 = * Tested up to 4.0 * Add plugin icon * Form id 1 can now be duplicated * Duplicate forms have (copy) appended to the form name to clearly mark them as the duplicated form = 2.5.1 = * Refactor `salesforce_cc_admin` to allow a customizable subject (translators: affects localization strings) * Email admin on submission errors as well as successes, append result data * Add `salesforce_w2l_post_data` filter (see 'Other Notes') * Add `salesforce_w2l_before_submit`, `salesforce_w2l_error_submit`, `salesforce_w2l_after_submit` actions (see 'Other Notes') = 2.5 = * FAQ: Clarify the mess that is picklist fields/names * Fix label with when using top aligned labels * Add clearfix to sf_field container * Fix PHP notice when deleting a form * Added importer option (finally) to make it easier to generate W2L forms at SF then auto import them = 2.4.4 = * Allow debug mode to be set (was getting set to 0 before submit) * Remove debugEmail from user email fields * Update debug info and add built in field name info on FAQ = 2.4.3 = * Fix PHP warnings due to switch to strlen for required field validation = 2.4.2 = * Fix bug where "0" (zero) was not considered a valid value for required fields = 2.4.1 = * Fix regression bug where checkboxes turn to text fields due to capitalization of option label = 2.4 = * Allow lead_source to be a form field (i.e. don't overwrite value if it already exists) = 2.3.9 = * Allow filtering of wp_remote_post arguments * Add picklist FAQ regarding field names * Add Multi-Select field (aka MultiPicklist) * Refactor code to properly handle strings and arrays as field values (to support multi-selects) * Add embed URL example code to FAQ = 2.3.8 = * Add lead source back into admin email * Add filter for lead source = 2.3.7 = * Fix issue where deleting form title made the edit link disappear * Fix settings url in alert to go to settings tab * Add filter to allow form action to be removed = 2.3.6 = * Fix issue with OID and other fields being appended to the user confirmation email * Add `salesforce_w2l_cc_user_suppress_fields` filter to allow supression of fields in the user confirmation email = 2.3.5 = * Readme improvements = 2.3.4 = * Fix bug in load_plugin_textdomain call * Readme improvements * Change value input size to match label field = 2.3.3 = * Fix confusing wrapping on form editor on very wide screens (reported by cindybou) * Change name of and add note to filters and hooks section = 2.3.2 = * Add filter for field values * Add salesforce_get_form and salesforce_get_field helper functions = 2.3.1 = * Version number bumps = 2.3 = * Allow some settings to be overridden per form (Success Message, Captcha, OrgId, etc) * Support for option to use placeholders instead of labels (per form) * Remove newlines in form HTML that were being converted to
upon output * Add Settings link to plugin list screen * Grey out non enabled fields in admin * Set a default checkbox width as some themes think input{ width: 100% } is a good idea... * All default CSS now uses relative sizes * Prevent multiple submission of form data (even if it's the same form id on the page multiple times) * Remember "send me a copy" between submits * Defined DONOTCACHEPAGE if captcha is enabled * Fix PHP notices when form is submitted * Update ads and landing page URLs * Add support links to plugin list page, restore WP.org plugin link * Load text domain on plugin init, add .pot file = 2.2.5 = * Fix PHP warnings and notices = 2.2.4 = * Add email and captcha error to settings page. = 2.2.3 = * Added filter to user and admin email content = 2.2.2 = * Fix deprecated (in PHP 5.3) ereg_replace functon in captcha lib = 2.2.1 = * Fix untranslatable string (invalid email) * Set input height to auto (18px causing issues with themes containing plentiful padding) * Change "Daddy Analytics Webform URL" to "Daddy Analytics Web to Lead URL ID" * Fixed slashes issues in field labels, select options and field labels in emails * Test using new deploy script: https://github.com/eyesofjeremy/Github-to-WordPress-Plugin-Directory-Deployment-Script = 2.2 = * Bug: Fixed checkboxes not retaining checked state after submit * Bug: Only output DA JS when token has been entered * Wrapped all output in a div tag to allow styling of success and error messages * Added #anchor to action to keep form on screen after submit when not the first item in a page (may not work in older versions of IE) * Add per field validation filter and error output (thanks to http://HomeStretchMktg.com for sponsoring this feature) * Added tabs to plugin settings page * Moved form list to its own tab (vs the bottom of the settings screen) * Added syntax highlighting to defaut CSS example on new Styling tab * Tested and working in WordPress 3.8 = 2.1.1 = * Fixes a bug that caused the organization id field to be hidden on new installs = 2.1 = * Add drop down field type (thanks jbuchbinder) * Improve form HTML (thanks jbuchbinder) * Add from and reply to options for emails (thanks jbuchbinder) * Add delete checkbox to form editor (thanks jbuchbinder) * Add HTML field type (thanks jbuchbinder) * Add simple checkbox field (thanks jbuchbinder) * Add ability to duplicate forms (thanks jbuchbinder) * Add WPCF7 CSS integration option (thanks jbuchbinder) * Add wrapper divs with class names to visible fields * Remove Powered by SF for all forms * Make required field indicator consistent with message * Comments to lead option (thanks simonwheatley) * Global DaddyAnalytics settings added to make integration easier * Added filters to aid in extending the plugin * Hide fields with no label in admin and user email * Required fields now trim whitespace from the value before validation (e.g. a space or tab is no longer a valid value) * Fixed checkbox/label alignment * Readme improvements * Added daily limit info to FAQ * Removed previous contributors no longer involved in plugin development, added credit to readme * Refactored and cleaned up codebase * Added filters to allow code based overrides of select features (see Other Notes for details) * Added Web to Case option (per form setting) * Fixed first field being added having a duplicate position to last field * Select fields can have a default value set = 2.0.3 = * Captcha image now works on subfolder installs (e.g. /wordpress/) * Removed captcha dependence on including wp-load.php = 2.0.2 = * Small formatting fixes (checkbox spacing and submit button CSS) = 2.0.1 = * Fixed issue with captcha URL being broken on some installs * Added several filters, including one to allow editing of the distribution list for new lead notifications and one to allow filtering of the form HTML before output * Fixed bug where captcha would wrap outside form on some themes * Fixed bug where forms other than id 1 did not show field labels in emails * Fixed bug causing unexpected output upon activation * Fixed bug that caused form to always be in 'sidebar' mode * Now supports more than 1 form per page * Forms now have a unique ID for use with CSS and jQuery: salesforce_w2l_lead_[ID] and salesforce_w2l_lead_[ID]_sidebar * Fixed a bunch of notices and warnings = 2.0 = * Improved internationalization * Multiple forms can be created and inserted via shortcode or widget * Spam protection (with optional captcha) * Fixed "Cannot use object of type WP_Error as array" bug * Fixed bug that showed successful submissions as "Failed to connect to SalesForce.com" * Hidden fields can now be used * Campaign_ID can now be set per form * Widget now hides description text upon submission * Admins can receive an email of submissions * Users can request a copy of their submission (if enabled) * Custom return/thanks URL can be defined per form * Country field added = 1.0.5 = * Fix in backend security, preventing XSS hack in the backend. = 1.0.4 = * CSS fix for when sidebar widget and contact form are on the same page. = 1.0.3 = * Fix in email verification. = 1.0.2 = * One more escape, plus a check to see whether the email address entered is valid. = 1.0.1 = * Added escaping around several fields to prevent XSS vulnerabilities. = 1.0 = * Initial release. == Upgrade Notice == = 2.7 = This version changes how option data is stored (it will auto migrate data to the new format leaving the old format available in case a rollback is needed). = 2.6.1 = The default CSS changed in the 2.6 release. If you've customized the form output, double check your form styling after upgrade. = 2.6 = The default CSS changed in this release. If you've customized the form output, double check your form styling after upgrade. = 2.5 = Now features an importer: Generate your Web-to-Lead form at Salesforce, provide the HTML code to the plugin, then automatically import it into WordPress to Lead in a *single click*! = 2.2 = Includes new CSS rules: make sure to update any custom CSS files with the new *.sf_field span.error_message* rule. Changes how error messages are output. Please review your *error message* on the settings screen to make sure it still makes sense in the new context. = 2.1 = This version includes most of the functionality in the "jbuchbinder" GitHub fork many users installed. Most users should not experience any issues upgrading. However, the "current date" field is not included in this release. = 2.0 = This version fixes a bug that caused the plugin to appear broken, despite sending leads to SalesForce.com.