Home › Forums › MapPress Support › MapPress Pro + Formidable Pro not playing nice
Tagged: Blank map, Formidable Pro
- This topic has 4 replies, 2 voices, and was last updated 9 years, 4 months ago by
invisionstudios.
-
AuthorPosts
-
September 23, 2013 at 9:37 am #13420
I’m trying to produce maps from MapPress Pro using address fields from Formidable Pro. I’m using the code described on this page in my functions.php file:
http://formidablepro.com/how-to-create-maps-from-form-entries/<?php /* SHORTCODE FOR MapPress + Formidable Pro connection */ add_shortcode('form_to_mappress', 'form_to_mappress'); function form_to_mappress($atts) { extract(shortcode_atts(array( 'width' => '220', 'title' => '', 'body' => '', 'address1' => '', 'address2' => '', 'directions' => 'none' ), $atts)); $mymap = new Mappress_Map(array('width' => $width)); $mypoi_1 = new Mappress_Poi(array('title' => $title, 'body' => $body, 'address' => $address1)); $mypoi_1->geocode(); $mymap->pois = array($mypoi_1); if($address2 != ''){ $mypoi_2 = new Mappress_Poi(array('address' => $address2)); $mypoi_2->geocode(); $mymap->pois = $mypoi_2; } return $mymap->display(array('directions' => $directions)); } /* END SHORTCODE MapPress */ ?>
Using MPP plugin by creating maps manually works just fine. If I try the ‘form_to_mappress’ shortcode with a hand-coded address:
[form_to_mappress address1="1160 Gahanna Parkway, Columbus, Ohio 43230" width="400" title="Grote HQ" body="Grote Headquarters, Columbus OH USA"] )
I get the same result as connecting it to the FP form, a flattened 1px high box. If I manually code the CSS div with a height value I get an empty white box.
I’ve eliminated the possibility that it’s a plugin conflict. I tested it on a fresh install of WP with no other plugins.
I know it’s beyond the scope of this plugin + support, but I would appreciate any thoughts on how to troubleshoot.
September 23, 2013 at 11:22 am #13421Hi,
I don’t know if this is the problem, but I don’t see a height specified? Maybe changing this line would help:
`$mymap = new Mappress_Map(array(‘width’ => $width, ‘height’ => ‘400px’));
If you just need to create maps with 1 location, you can use the standard MapPress geocoding functionality instead of a custom shortcode.
Just configure your custom fields in the MapPress settings. I think if you just use a plain-text field for the address in Formidable, it will save it to the post as a custom field.
The only trick is triggering MapPress to automatically generate the map- there’s a section in the documentation about that.
September 23, 2013 at 1:03 pm #13422Chris,
Thanks for the quick reply.
I actually tried adding the height var and all it does is give the div container a height, but still no map generated.
The problem isn’t related to Formidable. It looks like the PHP isn’t passing the vars properly. Here’s an example from the CDATA of a map using the shortcode:
var mapdata = {"mapid":null,"width":"220","height":null,"zoom":null,"center":{"lat":0,"lng":0},
Note the mapid, height, and zoom values are all null, and the lat/lon are both 0.A map created with your plugin manually for the same address:
var mapdata = {"mapid":"1","width":"220","height":"220","zoom":13,"center":{"lat":39.990817,"lng":-82.841705},
Sounds like there is a misplaced quote mark or comma somewhere. I’m on a Mac, sometimes characters (like “) don’t get translated correctly.
September 23, 2013 at 11:42 pm #13425I found a resolution. Apparently when I copied code from the Formidable website into Dreamweaver on the Mac it converted some characters. I’m thinking it was a double quote (“) or a single quote (‘), cause all the other code looked good.
I copied the code from Formidable again, pasted it into BBEdit (coding text editor on the Mac that allows you to control the text encoding), re-keyed any double or single quotes, then copied & pasted into my functions.php in Dreamweaver.
It works! Take a look here:
http://sf12cd74.a2hosting.com/~grote/contact-us/geographical-contact-information/headquarters/The company contact info on the right side of the page is pulled from a Formidable Pro database, and the MapPress map uses the address in the forms data.
Thanks so much for your help. LOVE the plugin, Chris!
September 25, 2013 at 2:12 am #13432Okay, got the forms playing with the maps. Life is good.
Just as an aside, I added an additional Formidable plugin (found here: http://www.eish.it/formidable-geocoder/) to grab the lat/lon of each entry and store it in the database. It should help to speed things up and limit the number of hits on the Google geocode database.
-
AuthorPosts
- You must be logged in to reply to this topic.