GeoDirectory registers its own dynamic tags in Elementor, so you can drop any listing field (price, phone, email, a custom text field, an image) into a normal Elementor widget and style it however you like. You do not need ACF, Pods or Toolset for this, and you should keep your fields as GeoDirectory custom fields so the add listing form keeps working.
Before you start
- Create your fields at Places > Settings > Custom Fields (or the same screen for another post type). These are the fields users fill in on the add listing form and the fields the dynamic tags can read.
- You need Elementor Pro to build the single listing template in the Theme Builder. GeoDirectory adds a GD Single template type there.
Show a field in a widget
- In Elementor Pro, go to Templates > Theme Builder and create a GD Single template (or open the one you already have).
- Add a widget that accepts dynamic content, for example Heading or Text Editor.
- Click the dynamic tags icon on the text field and open the GeoDirectory group.
- Pick GD Field for text values. For other field types use GD URL Field, GD Image Field, GD Gallery Field, GD Number Field or GD Color Field.
- Click the tag to open its settings and choose the field in Key, for example your price field.
- Set Show. The default is the value saved in the database. Choose value for the formatted value or label + value if you want the field label too.
- Style the widget with Elementor’s normal controls, then publish the template and set its display conditions.
So for a price field that holds 10000, a Heading widget with GD Field, Key set to the price field and Show set to value prints the formatted price in your own font and colour.
Hide a widget when a field is empty
The GD CSS Hide Condition tag adds a class that hides a section or widget when a field has no value. See Elementor Pro CSS Hide Conditions.
If you prefer shortcodes, the GD > Post Meta widget outputs any single field too. For the full Elementor setup, start with Elementor Pro – Getting Started.