Title: Web Directory plugin Free &#8211; AI powered
Author: Shamalli
Published: <strong>May 23, 2018</strong>
Last modified: October 6, 2026

---

Search plugins

![](https://ps.w.org/web-directory-free/assets/banner-772x250.png?rev=3630060)

![](https://ps.w.org/web-directory-free/assets/icon-256x256.gif?rev=3631968)

# Web Directory plugin Free – AI powered

 By [Shamalli](https://profiles.wordpress.org/mihail-chepovskiy/)

[Download](https://downloads.wordpress.org/plugin/web-directory-free.2.3.4.zip)

 * [Details](https://frp.wordpress.org/plugins/web-directory-free/#description)
 * [Reviews](https://frp.wordpress.org/plugins/web-directory-free/#reviews)
 *  [Installation](https://frp.wordpress.org/plugins/web-directory-free/#installation)
 * [Development](https://frp.wordpress.org/plugins/web-directory-free/#developers)

 [Support](https://wordpress.org/support/plugin/web-directory-free/)

## Description

Web Directory plugin Free is a WordPress directory plugin that turns your site into
a searchable business directory. Sort listings into categories and locations, build
your own listing form, drop the directory onto any page with a shortcode, and let
visitors search and browse – as a list, as cards, or on an interactive map.

In the free edition you add and edit listings from the WordPress admin, and visitors
browse, search and view them on the front end.

#### AI that writes the listing, and search by sentence

Add a key for a free AI service and a Write button appears beside the listing description:
it reads the entry name, its categories and its location, and drafts the text. Nothing
is sent anywhere until you enter that key, and the fields a person has to state 
as fact – prices, phone numbers, dates, opening hours – are never generated, because
a plausible invented price is worse than an empty one.

The free edition ships with Groq, which has a free tier that needs no payment card.
The separate **AI Assistant Add-on** widens it: OpenAI, DeepSeek, Mistral, OpenRouter
and Google Gemini as further services, a Write button on every text field on the
form instead of the description alone, and one control that fills every empty field
in a single request so the texts agree with each other.

The add-on also brings assisted search. A visitor writes what they are after as 
a sentence, “a cheap place open on Sunday that takes cards”, and it is read into
the search form’s own filters rather than into the keyword box: the category, the
location and the distance, the sliders and the dropdowns your form carries. Only
values the form actually offers are set, every one of them is shown above the results
as a chip the visitor can drop, and a filter they set or cleared themselves is left
exactly as they left it. A one-word search is answered the way it always was, without
asking the model at all. The add-on is a plugin of its own and is managed from the
same AI settings tab.

**Live demo:** [directory.salephpscripts.com](https://directory.salephpscripts.com/)

#### What you can build

A local business directory, a member or staff directory, a property or vehicle catalogue,
a venue or event guide, a service-provider index, a classifieds board. Anything 
that is a list of places or things with fields, categories and a map.

#### Organise your listings

 * **Categories and locations** are hierarchical, so Country, Region, City nests
   the way you expect, and each level gets its own page.
 * Each category can carry its own **marker icon and colour**, so the map reads 
   at a glance.
 * Every category and location page is a real URL with its own listings, search 
   and map.

#### Build the listing form yourself

The form builder is drag and drop: arrange fields in rows and columns, and add your
own on top of the built-in ones. Field types included:

 * Title, Content, Excerpt
 * Categories
 * Address and Map
 * Images & Videos – photos plus YouTube or Vimeo links, shown in one gallery with
   a lightbox
 * Contact info, Phone, Email, Website URL
 * Text/string, Number, Price
 * List – as a dropdown, radio buttons or checkboxes
 * Date-Time
 * Opening hours
 * File upload

Every field can be placed independently on the listing card, the listing page, the
search form and the map popup, so a field can be searchable without cluttering the
card.

#### Put the directory anywhere

Each directory has a page builder: choose which elements appear on the home, category,
location and listing pages, and in what order – search form, map, categories block,
listings grid, slider, breadcrumbs, page title, buttons.

If you would rather place things by hand, every element is also a shortcode: [webdirectory],[
webdirectory-search], [webdirectory-map], [webdirectory-listings], [webdirectory-
categories], [webdirectory-locations], [webdirectory-slider], [webdirectory-breadcrumbs],[
webdirectory-listing-page] and more. They work in the block editor, in Elementor
and in WPBakery.

#### Maps

 * Three engines: **Google Maps**, **Mapbox** and **MapLibre** with MapTiler tiles.
   Pick per site.
 * Marker **clustering**, so thousands of listings stay usable.
 * Per-category and per-listing **marker icons**.
 * Rich **popups** built from the fields you chose, with the listing photo.
 * A **map sidebar** that lists what is currently in view, and follows as the visitor
   pans.
 * **Radius search** from an address, in miles or kilometres.
 * Several layouts, including a full-width hero map and a sticky map beside the 
   listings.

#### Search that finds things

The search form is built the same way as the listing form: drag in the elements 
you want.

 * Keyword, categories, locations, address plus radius, rating.
 * Any custom field you added becomes a filter – a price range, a number range, 
   a date, a dropdown.
 * A “More filters” separator to keep the visible form short.
 * Sorting by newest, oldest, title, rating, random, or any numeric or date field
   you defined.
 * Grid and list views, with the visitor’s choice remembered.
 * With the AI Assistant Add-on, a whole sentence instead of a form: the filters
   above set themselves from it, and the visitor can drop any of them.

#### Ratings

Built in, no add-on: visitors rate a listing, the average shows on the card, the
listing page and the map popup, and rating becomes a search filter and a sort option.
Ratings can be switched off entirely.

#### Bulk work

 * **CSV import and export** for listings, including categories, locations, custom
   fields, images and video links. Import creates or updates; export round-trips.
 * **Demo content**: 5 ready-made directories with their maps and pages, and a listing
   form template, imported in one click.
 * A **thumbnail regeneration** tool for when you change image sizes.

#### Housekeeping

 * **Colour palette** controls so the directory matches your theme, with several
   presets.
 * **Email notifications** with editable subjects, each one switchable.
 * **Google reCAPTCHA** (v2 or v3) on the listing contact form.
 * A **diagnostics page** that checks the directory is wired up correctly and tells
   you what to fix if it is not.
 * An **install wizard** that creates the pages and the first directory for you.
 * **Translation ready**: ships a POT file for any standard gettext or PO editor.
 * Built for **large directories**: a dedicated search index and sort index keep
   tens of thousands of listings responsive, and both rebuild in the background.

This plugin uses external services (map providers and, if you enable it, Google 
reCAPTCHA). See the **External Services** section below.

#### What is not in the free edition

Front-end submission. In the free edition listings are created and edited in the
WordPress admin; visitors browse and search. The paid version adds front-end submission
with membership plans, listing expiry and renewals, and WooCommerce checkout for
paid, featured and upgraded listings.

**Get the full version:** [Web 2.0 Directory on CodeCanyon](https://codecanyon.net/item/web-20-directory-plugin-for-wordpress/6463373)

### External Services

Web Directory plugin Free uses the following third-party services. Nothing is sent
until you use the matching feature:

 * Map providers (Google Maps, Mapbox, MapTiler / MapLibre) – when a map loads or
   an address is geocoded, the request (coordinates, the address being searched,
   and your API key/token) is sent to the provider you chose. See that provider’s
   terms and privacy policy.
 * Google reCAPTCHA – when you turn it on for the contact form, the visitor’s interaction
   is checked with Google. See Google’s terms and privacy policy.
 * Groq (AI writing) – only when you have entered a Groq API key and pressed a Write
   button. What is sent is the text the draft is built from: the entry name, its
   categories, its location and the fields already filled in. Nothing is sent without
   a key, and no key ships with the plugin. See Groq’s terms (https://groq.com/terms-
   of-use/) and privacy policy (https://groq.com/privacy-policy/).
 * salephpscripts.com (the plugin author) – when you open the AI tab of the settings,
   the plugin asks salephpscripts.com for the latest version of the AI Assistant
   Add-on, at most once an hour; only the add-on’s name is sent. When you press 
   the button that installs the add-on or the one that downloads the demo data, 
   the file comes from salephpscripts.com, and your site’s domain and the plugin
   version are sent with that request.

Updates come through WordPress.org. The free edition does no license or “phone-home”
checks.

## Screenshots

[⌊With the AI Assistant Add-on, a visitor types one sentence and the search form
fills itself: location, radius, category, price range and filters.⌉⌊With the AI 
Assistant Add-on, a visitor types one sentence and the search form fills itself:
location, radius, category, price range and filters.⌉[

With the AI Assistant Add-on, a visitor types one sentence and the search form fills
itself: location, radius, category, price range and filters.

[⌊Several directories on one site, such as restaurants, hotels and classifieds, 
each with its own address, labels, categories, layout and plans; a listing can appear
in one, several or all of them.⌉⌊Several directories on one site, such as restaurants,
hotels and classifieds, each with its own address, labels, categories, layout and
plans; a listing can appear in one, several or all of them.⌉[

Several directories on one site, such as restaurants, hotels and classifieds, each
with its own address, labels, categories, layout and plans; a listing can appear
in one, several or all of them.

[⌊The directory page builder: drag search, map, listings, categories, slider and
other blocks into rows, with a separate layout for each page and for tablet and 
mobile.⌉⌊The directory page builder: drag search, map, listings, categories, slider
and other blocks into rows, with a separate layout for each page and for tablet 
and mobile.⌉[

The directory page builder: drag search, map, listings, categories, slider and other
blocks into rows, with a separate layout for each page and for tablet and mobile.

[⌊Listing plans in wp-admin: how long a listing stays live, how many categories,
images and videos it gets, a sticky badge, and whether it has a map, claims and 
ratings.⌉⌊Listing plans in wp-admin: how long a listing stays live, how many categories,
images and videos it gets, a sticky badge, and whether it has a map, claims and 
ratings.⌉[

Listing plans in wp-admin: how long a listing stays live, how many categories, images
and videos it gets, a sticky badge, and whether it has a map, claims and ratings.

[⌊Google Maps, Mapbox or MapLibre, switchable at any time: icon, rating, price, 
photo or dot markers, and popups that show the fields you tick.⌉⌊Google Maps, Mapbox
or MapLibre, switchable at any time: icon, rating, price, photo or dot markers, 
and popups that show the fields you tick.⌉[

Google Maps, Mapbox or MapLibre, switchable at any time: icon, rating, price, photo
or dot markers, and popups that show the fields you tick.

[⌊The search form builder: drag in keyword, address, radius, categories and any 
custom field; every active filter shows above the results as a chip.⌉⌊The search
form builder: drag in keyword, address, radius, categories and any custom field;
every active filter shows above the results as a chip.⌉[

The search form builder: drag in keyword, address, radius, categories and any custom
field; every active filter shows above the results as a chip.

[⌊Listings as a grid or a list, sorted the way the visitor picks; the settings set
the columns per device, the card image and the fields each card shows.⌉⌊Listings
as a grid or a list, sorted the way the visitor picks; the settings set the columns
per device, the card image and the fields each card shows.⌉[

Listings as a grid or a list, sorted the way the visitor picks; the settings set
the columns per device, the card image and the fields each card shows.

[⌊A listing page with its custom fields: phone, WhatsApp and Telegram links, opening
hours, price, lists and files, and a group only logged-in users can see.⌉⌊A listing
page with its custom fields: phone, WhatsApp and Telegram links, opening hours, 
price, lists and files, and a group only logged-in users can see.⌉[

A listing page with its custom fields: phone, WhatsApp and Telegram links, opening
hours, price, lists and files, and a group only logged-in users can see.

[⌊The drag-and-drop listing form builder: add fields by type, arrange them in groups,
and show a group only for the categories you pick.⌉⌊The drag-and-drop listing form
builder: add fields by type, arrange them in groups, and show a group only for the
categories you pick.⌉[

The drag-and-drop listing form builder: add fields by type, arrange them in groups,
and show a group only for the categories you pick.

[⌊Adding a listing in wp-admin with the listing form you built; with the AI Assistant
Add-on, one click fills every empty field.⌉⌊Adding a listing in wp-admin with the
listing form you built; with the AI Assistant Add-on, one click fills every empty
field.⌉[

Adding a listing in wp-admin with the listing form you built; with the AI Assistant
Add-on, one click fills every empty field.

[⌊Star ratings in one click, shown on cards, popups and map markers, and listing
claims: approve one and the listing passes to its owner.⌉⌊Star ratings in one click,
shown on cards, popups and map markers, and listing claims: approve one and the 
listing passes to its owner.⌉[

Star ratings in one click, shown on cards, popups and map markers, and listing claims:
approve one and the listing passes to its owner.

[⌊Categories with their own icons and marker colours, and locations as a Country,
State, City tree; the primary location builds the listing URL.⌉⌊Categories with 
their own icons and marker colours, and locations as a Country, State, City tree;
the primary location builds the listing URL.⌉[

Categories with their own icons and marker colours, and locations as a Country, 
State, City tree; the primary location builds the listing URL.

[⌊Address input with autocomplete, a Get my location button and a map pin you can
drag, plus an address format you arrange yourself.⌉⌊Address input with autocomplete,
a Get my location button and a map pin you can drag, plus an address format you 
arrange yourself.⌉[

Address input with autocomplete, a Get my location button and a map pin you can 
drag, plus an address format you arrange yourself.

[⌊CSV import with column mapping and a resumable progress bar, full export, and 
demo content: 5 directories with their maps and pages, and demo listings for the
countries you pick.⌉⌊CSV import with column mapping and a resumable progress bar,
full export, and demo content: 5 directories with their maps and pages, and demo
listings for the countries you pick.⌉[

CSV import with column mapping and a resumable progress bar, full export, and demo
content: 5 directories with their maps and pages, and demo listings for the countries
you pick.

[⌊Email notifications you can switch off or reword, a test-email button, and a contact
form on every listing, protected by reCAPTCHA.⌉⌊Email notifications you can switch
off or reword, a test-email button, and a contact form on every listing, protected
by reCAPTCHA.⌉[

Email notifications you can switch off or reword, a test-email button, and a contact
form on every listing, protected by reCAPTCHA.

[⌊WPML and Polylang, with settings per language, and right-to-left languages: the
same listing card in English, French and Arabic.⌉⌊WPML and Polylang, with settings
per language, and right-to-left languages: the same listing card in English, French
and Arabic.⌉[

WPML and Polylang, with settings per language, and right-to-left languages: the 
same listing card in English, French and Arabic.

[⌊Every listing and category page gets its own title, description, share image and
structured data, alongside Yoast, Rank Math, All in One SEO, SEOPress or The SEO
Framework.⌉⌊Every listing and category page gets its own title, description, share
image and structured data, alongside Yoast, Rank Math, All in One SEO, SEOPress 
or The SEO Framework.⌉[

Every listing and category page gets its own title, description, share image and
structured data, alongside Yoast, Rank Math, All in One SEO, SEOPress or The SEO
Framework.

[⌊Seven colour palettes or your own colours, applied to every button, link and badge,
and an image lightbox.⌉⌊Seven colour palettes or your own colours, applied to every
button, link and badge, and an image lightbox.⌉[

Seven colour palettes or your own colours, applied to every button, link and badge,
and an image lightbox.

[⌊The setup wizard, migration from the previous version in resumable batches, and
one-click diagnostics.⌉⌊The setup wizard, migration from the previous version in
resumable batches, and one-click diagnostics.⌉[

The setup wizard, migration from the previous version in resumable batches, and 
one-click diagnostics.

## Installation

 1. Upload the plugin folder to /wp-content/plugins/, or install the ZIP via Plugins-
    > Add New -> Upload Plugin.
 2. Activate **Web Directory plugin Free** from the Plugins menu.
 3. Open the settings page, pick your map engine and enter its API key/token (Google
    Maps API key, Mapbox token, or MapTiler key).
 4. Create your categories and locations, build the listing form, add listings, and
    place the directory on any page with the shortcode.

## FAQ

### Who can add listings in the free edition?

Listings are created and edited from the WordPress admin. Front-end submission (
with optional moderation, expiration and renewal) is part of the full version.

### Do I need API keys?

For maps, yes – each map provider needs its own key/token, entered on the settings
page. Keys are stored on your site and are never sent to us.

### Which map providers are supported?

Google Maps, Mapbox, and MapLibre with MapTiler tiles. You pick one on the settings
page.

### Is it translation ready?

Yes. A languages/w2dc.pot template is included; translate it with any standard gettext/
PO editor.

### How do paid listings and membership plans work?

Paid submission, membership plans and WooCommerce checkout come with the full version
of Web 2.0 Directory, not the free edition.

## Reviews

![](https://secure.gravatar.com/avatar/9f5e40f5d24b22391f05e84bc04bea51c978712d69b183438524fa9c6b603271?
s=60&d=retro&r=g)

### 󠀁[My Expectations](https://wordpress.org/support/topic/my-expectations/)󠁿

 [charlesluck59](https://profiles.wordpress.org/charlesluck59/) December 6, 2024

Whenever I’m faced with a paid version of a free plugin, my expectations usually
circle the drain. And when I’m dealing with free plugins, knowing that this is an
ecosystem of people that includes needy users who don’t really know what they’re
doing, it can spawn very frustrated and “rude” support, especially when corners 
were cut on the documentation.

![](https://secure.gravatar.com/avatar/bb37c58f69356bab5ee38ec4f2fdef4c369ad84b1e90e6c5fbf12c7b3cdde6d9?
s=60&d=retro&r=g)

### 󠀁[Very good support](https://wordpress.org/support/topic/very-good-support-349/)󠁿

 [Daniel](https://profiles.wordpress.org/danielschwarz/) May 16, 2024

The plugin works well and does what it's supposed to. The support from the author
is very good, with a quick response.

![](https://secure.gravatar.com/avatar/fd6fb73c82efc1ef2d97ede96977596fa0e1ca468a77e4e419f42e376e37bdc9?
s=60&d=retro&r=g)

### 󠀁[Good plugin, Rude support](https://wordpress.org/support/topic/good-plugin-rude-support/)󠁿

 [shemakeswebsites](https://profiles.wordpress.org/shemakeswebsites/) February 19,
2024

The plugin itself isn't bad. Dated compared to the competition but robust. Rated
low for the developers conduct. He is very rude, arrogant, unprofessional and impatient.
This is the first time I've encountered a developer who gets "annoyed" when you 
reach out for support. What a shame – thanks a lot Mihail! EDIT: Because this author
did not like my review they contacted my client publicly on Facebook with half-truths
and also left me a bad review on my Google business profile. This has been a truly
disappointing experience – do not deal with unethical people, it's not worth your
time!

![](https://secure.gravatar.com/avatar/dc42a6814c5410c020a86a1d6b7739e9043663bf81f56eaa26afa8c62537c34e?
s=60&d=retro&r=g)

### 󠀁[Can not mobile responsive Custom Home1](https://wordpress.org/support/topic/can-not-mobile-responsive-custom-home1/)󠁿

 [anybooking](https://profiles.wordpress.org/anybooking/) September 28, 2023 1 reply

Plugins is very good for directories, but there is responsive issue, please solve
the issue asap.When I see in mobile or in Tablet view the Map placed below the search
form which I can not reverse.

![](https://secure.gravatar.com/avatar/a6c22d678a3017f663aba4f37b481bfb722a030f1fbc5f32dfa20cc74cd64d36?
s=60&d=retro&r=g)

### 󠀁[Used as a Database](https://wordpress.org/support/topic/used-as-a-database/)󠁿

 [jayrtfm](https://profiles.wordpress.org/jayrtfm/) September 18, 2023

I am using the free version to make a database of social VR platforms (metaverse).
I am also using it as a database for places in the metaverse, and for various software.
There's over a hundred aspects that need to be searchable. The categories are allowing
me to easily separate out the types of databases, and the search forms are allowing
me to make clear searches. With a few tiny tweaks this could easily be marketed 
as a general database plugin. So far I have not run into any show-stopping bugs 
or lack of features.

![](https://secure.gravatar.com/avatar/8e5abc1cc164d132cdff1e4d65cc6ac15a56c7ca0d0dbb052f2e2bbfa3dd8fb6?
s=60&d=retro&r=g)

### 󠀁[The plugin is good and not difficult to set up.](https://wordpress.org/support/topic/the-plugin-is-good-and-not-difficult-to-set-up/)󠁿

 [vitos313](https://profiles.wordpress.org/vitos313/) December 23, 2022 2 replies

The plugin is good and not difficult to set up. But I can't figure out how to make
the photo upload field required. Can someone help me?

 [ Read all 20 reviews ](https://wordpress.org/support/plugin/web-directory-free/reviews/)

## Contributors & Developers

“Web Directory plugin Free – AI powered” is open source software. The following 
people have contributed to this plugin.

Contributors

 *   [ Shamalli ](https://profiles.wordpress.org/mihail-chepovskiy/)

[Translate “Web Directory plugin Free – AI powered” into your language.](https://translate.wordpress.org/projects/wp-plugins/web-directory-free)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/web-directory-free/),
check out the [SVN repository](https://plugins.svn.wordpress.org/web-directory-free/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/web-directory-free/)
by [RSS](https://plugins.trac.wordpress.org/log/web-directory-free/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 2.3.4 – 2026-10-07

 * New: Print and Save as PDF buttons for the listing page (switch them on in the
   Buttons element of Edit Directory) open a clean printable copy of the listing.
 * Improvement: the grid / list switch sits right after the number of listings found.
 * Fix: a listing waiting for approval is no longer published when its plan period
   ends or when it is renewed.
 * Fix: no “your listing has expired” email when the listing moves straight to another
   plan and stays on the site.
 * Fix: a map placed beside taller fields on the listing form no longer grows past
   its Height.
 * Fix: listings saved through the listing form are found when searching by their
   location. Existing listings are repaired automatically.
 * Fix: saving a directory after an update from an older version no longer removes
   its plans.
 * Fix: a listing keeps its plan when its directories don’t offer that plan.

#### 2.3.3 – 2026-10-01

 * New: a Sort options table for the Listings element: choose which orders the visitor’s
   Sort control offers, in what order and direction, under what name, whether sticky
   listings go first, and which one the grid opens with.
 * New: switching a directory’s Listing template rebuilds the settings that list
   its fields (card fields, sort options, Listing body, default filter, search form).
   Switching back brings the old template’s settings back.
 * New: a Default image for listings that have none, shown on their card, in the
   map popup and in the map sidebar. A neutral built-in image by default; choose
   your own or switch it off. Sites moved over from the old Web 2.0 Directory keep
   their default logo.
 * Improvement: sorting by title no longer puts sticky listings first by default.
   Turn it on for Title in Sort options if you want it.
 * Improvement: more space between the fields of the listing form.
 * Improvement: the demo maps import with “Save and follow map center” off, so moving
   one no longer rewrites the page address.
 * Improvement: a field added to the listing form after the Listing body’s field
   list was saved now shows on the listing page too.
 * Improvement: the Rating row of the Listing body starts switched off, so the listing
   page no longer shows the rating twice.
 * Improvement: the map’s cookie-consent notice can be translated, names the consent
   plugin holding the map back (Borlabs Cookie, Complianz, Cookiebot or Avada Privacy)
   and, with Borlabs Cookie or Cookiebot, has an Open cookie settings button.
 * Improvement: buttons and links in the Edit Directory boxes use the primary colour
   set in Customization instead of the WordPress admin blue.
 * Improvement: a word limit for every text field on the listing cards: 10 words
   for the title and 20 for the others by default (0 shows the whole text).
 * Improvement: categories, tags and list fields on the cards show 5 items by default(
   0 shows all) and end with …; hover it to see how many more there are.
 * Improvement: in the field lists of Edit Directory and Edit Map the options line
   up in one column, and the Popups list’s “fill” switch matches the on/off one.
 * Improvement: category markers, listing markers and image markers each have their
   own size in Edit Map (30-70 px, 40 by default). Existing maps keep their old 
   size.
 * Improvement: map popups and the map sidebar cut long content like the cards do:
   20 words for text fields (10 for the title) and 5 items for categories, tags 
   and lists, set per row in Edit Map (0 shows everything).
 * Improvement: the translation template (.pot) now lists every string of the plugin,
   the new screens included, so the whole interface can be translated.
 * Fix: a directory on any form template but the first showed the first template’s
   fields in the builder, on its cards and Sort control, and on its listing pages.
 * Fix: a Mapbox or MapLibre map held back by a cookie-consent plugin says it is
   waiting for consent instead of “API key is not configured”, and appears as soon
   as the visitor accepts.
 * Fix: on a site that finished migrating, the migration screen no longer offers
   the Plans step again (running it overwrote the plans set up since).
 * Fix: a new listing form starts with the standard fields (title, description, 
   excerpt, categories, tags, address, map, images). On sites moved over from the
   old Web 2.0 Directory it started with every old field.
 * Fix: on Google Maps, markers and clusters no longer disappear while the map pans.
 * Fix: the open/close tab of the map sidebar keeps its shape on themes that round
   every button.
 * Fix: the number fields in the Edit Map and Edit Directory field lists show two-
   digit values in full.
 * Fix: directory pages with an element stretched over several rows, like the demo
   listing pages, stack into one column on tablets and phones.
 * Fix: the Price field on the listing page lines up with the other fields on phones
   and on wide screens.
 * Fix: on phones the map’s “Number of locations” counter no longer hides under 
   the sidebar tab or the attribution button.
 * Fix: on phones the “AI-assisted search” label of a search form on the map is 
   no longer cut off.

#### 2.3.2 – 2026-09-28

 * New: three ways to choose categories on the listing form, set per form: a checkbox
   list, dropdowns level by level, or type-to-search where you can also add a category
   that does not exist yet, the way tags work. Existing forms keep what they had.
 * New: the form builder places fields on the same grid as the directory builder.
   Every field and group carries its own width buttons – full, 2/3, 1/2, 1/3 – so
   a field can be made wide where it sits instead of only as the first slot of a
   two-thirds row, and arrow buttons stretch a field down over the empty space below
   it, which keeps the column beside it from sliding under. Templates saved before
   this open and save unchanged.
 * New: the plan option “Enable map” is a real switch. Off, a listing of that plan
   gets no map on its page and no map field on the listing form; the address still
   places it. Existing plans keep their map: the option is stamped on as it was.
 * Improvement: with no Map field on the listing form, no map is drawn anywhere –
   there is nothing behind it. A listing with no plan follows the form.
 * Improvement: the price on a listing page can be styled the way it already could
   on cards – its own size, a badge, a rule above and below, an accent bar, a smaller
   currency sign. Set per element, in the Listing body element’s field list.
 * Improvement: a field stretched down in the builder fills that space on the form
   too – a tall category list, map or text box instead of a gap under a short field.
 * Improvement: the AI buttons all look alike and say why they are not ready yet:
   the “fill in the title and choose a category” note is now in one place, on the
   Write-all bar, instead of under every field.
 * Improvement: field groups on the listing form open and close smoothly instead
   of blinking out.
 * Improvement: the listing form is easier to read: field names are bold, fields
   side by side start at the same height, and the video link box is as tall as every
   other input.
 * Improvement: renewing a listing adds the plan’s period to the time it still has,
   instead of starting from the day of renewal. Renewing early no longer costs the
   remaining days; a listing renewed after it expired still gets a full period from
   that day.
 * Improvement: the price caption on a plan card follows the plan’s own active period
   when it is left empty, so a card cannot promise “per year” on a plan whose listings
   live a month. Your own wording still wins if you set it.
 * Improvement: every number on a plan is a limit now, and the limit a listing gets.
   0 means none – no images, no videos, no address, no categories, no tags – as 
   it did in the earlier version and as the plan card already said, instead of quietly
   handing the listing form’s own limit back; a listing shows at most as many images
   and videos as its plan allows, the form’s own limits apply only to a listing 
   with no plan, and plans that never carried a number keep exactly what they had.
 * Improvement: the listing form in wp-admin is wider, up to 1100px instead of 768px,
   so the fields use the box rather than a narrow column down the middle of it. 
   Most noticeable on a screen set to one column, where the box is the full width
   of the page.
 * Improvement: ticking Closed or 24h in Opening hours no longer loses the day’s
   times while the form is open. Unticking puts them back, so a day switched on 
   and off again does not have to be entered twice.
 * Improvement: reloading a listing form, or saving one in wp-admin, no longer throws
   the page back to the top. The form remembers how tall it was and how far down
   the page stood, and puts both back as the fields arrive, instead of leaving the
   view to be restored against a page that is still empty.
 * Fix: “N listings included” is shown only on plans that can actually grant the
   package, which needs the full version’s payments. In the free version the line
   is no longer printed; the setting itself is kept.
 * Fix: a listing shows only the fields its plan includes – on its page, in map 
   popups, the sidebar, cards and marker labels. A listing moved to a smaller plan,
   by hand or when a paid period ran out, went on showing the fields it no longer
   paid for; they come back if it returns to the plan.
 * Fix: a listing can no longer be saved with a field its plan does not include.
   The form already hid such fields, but the server accepted them.
 * Fix: the plan’s Logo enabled switch, now next to Images number, works. Turned
   off, that plan’s listings show no logo on cards, in map popups, the map sidebar
   or on image markers, and the listing form stops offering a logo choice; plans
   migrated from the earlier version get back the setting their level had.
 * Fix: on Settings, Plans the “show as feature” checkboxes sit on the field’s label
   line again instead of on top of the input below.
 * Fix: the plan option “Who can view listings” works. A visitor the plan shuts 
   out opens the listing page and sees its title with a note instead of the content;
   the listing itself stays in the directory, the search and the map. Before, the
   setting was saved but never applied.
 * Fix: a plan’s “Certain locations” is enforced when a listing is saved, not only
   in the form. A location outside the plan’s list is dropped from the address instead
   of being stored; the address itself is kept.
 * Fix: the plan groups in the plans constructor are shaded again, so each group
   reads as a block.
 * Fix: a plan’s limits on categories and tags now hold on every save, not only 
   in the listing form: quick edit, bulk edit, a CSV import and a programmatic save
   are clamped too, and the “Certain categories” subset with them.
 * Fix: a plan with “Logo enabled” off no longer shows the logo in the map’s info
   window or as the page’s share image; every other surface already honoured it.
 * Fix: on WPML and Polylang sites a translated listing follows its plan’s limits.
   The plan is stored on the main version, so a translation read as having no plan
   at all.
 * Fix: a plan with “Listings have own pages” off really leaves its listings without
   one: the listing URL answers 404 instead of opening the page, and the slider 
   stops linking to it. Before, only the title on a card was unlinked while the 
   page stayed open to anyone with the link.
 * Fix: the plans box on Edit Directory fits a narrow column. Each plan keeps its
   whole name on the first line, next to Expand, and its summary moves to a line
   of its own, instead of the name shrinking to three letters and the summary standing
   in a column. On Settings, Plans the plan changes table scrolls inside the page
   instead of pushing the plans past its right edge.
 * Fix: the “Use gradient on buttons” option works again: the main buttons fade 
   from the button primary color to the button secondary color, reversed on hover,
   and keep their icons.
 * Fix: importing the demo listing form no longer empties your listing form, which
   left listing cards showing only the image and imported listings without their
   custom fields. A form already emptied this way gets the default fields back.
 * Fix: demo directories keep their card fields and other element settings after
   import.
 * Fix: “Geocode addresses” in the CSV import now puts listings on the map from 
   their address, with Google, Mapbox or MapTiler. Addresses it cannot place are
   listed in the import results.

#### 2.3.1 – 2026-09-22

 * New: the price can stand out in map popups, the sidebar and cards: badge, divider,
   accent colour, smaller currency sign and font size. On cards, a price placed 
   last sits on the bottom edge, so prices line up.
 * New: “Hide from anonymous users” for field groups. Logged-out visitors see the
   group title and a login prompt instead. Migrated groups keep this setting.
 * New: WPML and Polylang support. Maps, listings, search and counts show the page’s
   language. Each listing keeps one set of markers and one search-index entry for
   all its languages. Listing fields are copied to translations.
 * New: settings per language on WPML and Polylang sites. Emails, AI prompts, the
   address format, the map language and a few more can differ per language. Emails
   go out in the listing’s language.
 * New: form templates per language on WPML and Polylang sites. Field names, help
   texts and option labels can be translated.
 * New: plans per language on WPML and Polylang sites. Plan names, descriptions,
   badges and feature lines can be translated.
 * New: directories per language on WPML and Polylang sites. The directory name,
   URL segments and form labels can be translated. Each language gets its own URLs.
 * New: map search forms per language on WPML and Polylang sites.
 * New: CSV import and export on WPML and Polylang sites. Translations go in the
   same row, in columns like title:fr or categories_list:fr.
 * New: image and video captions per language on WPML and Polylang sites.
 * New: the Submit button reads “Submit new …” with the directory’s singular label,
   as in earlier versions.
 * New: right-to-left languages (Arabic, Hebrew, Persian). Directory pages, cards,
   popups, the sidebar, forms and the lightbox read from the right.
 * New: “No maps” map engine, first in the list and the default on new installs.
   The directory then shows nothing about maps. Saved maps are kept for later. Legacy
   sites without maps migrate to it.
 * Improvement: the migration keeps how listing images looked: logo fit, ratio, 
   list width and gallery crop.
 * Improvement: the demo export works on WPML and Polylang sites.
 * Improvement: CSV category, location and tag columns also accept term IDs.
 * Improvement: on WPML and Polylang sites, a new listing is saved in the language
   of its form.
 * Improvement: on a listing page built from elements, category and directory links
   open without a full reload.
 * Improvement: form builder: a group’s categories are picked like a field’s, with“
   Show for all categories”.
 * Improvement: the setup wizard now ends by creating the directory page (“My First
   Directory” with [webdirectory]), or opens it if it exists. No map step.
 * Improvement: the plugin’s admin menu items stay together.
 * Improvement: a new Buttons element has all buttons on.
 * Improvement: the Reset page also deletes directories, plans, claims and terms,
   and trashes the directory pages. “Everything” also removes hidden and per-user
   data. Settings of the old version are kept until it is migrated.
 * Improvement: sticky listings now come first in every sort except Random, Distance
   and Relevance.
 * Performance: a directory page without a map runs one search instead of two.
 * Fix: sorting by date is correct on sites not in UTC.
 * Fix: the CSV import reads the image captions column.
 * Fix: map popups no longer indent fields without an icon.
 * Fix: a field with its icon turned off no longer leaves a gap.
 * Fix: the “Get directions” button looks right again.
 * Fix: fields line up with icons in the map sidebar and on cards.
 * Fix: other plugins’ links on a listing page keep their own colours.
 * Fix: Card image fit also works in list view.
 * Fix: a site migrated from Web 2.0 Directory keeps its maps. Sites already migrated
   get them back once.
 * Fix: a bold or italic directory shortcode no longer breaks the listing page.
 * Fix: a field group shows only when one of its fields does. The listing page hides
   fields meant for other categories.
 * Fix: the two handles of a price or number slider can no longer meet.
 * Fix: the REST SQL profile (?w2dc_sql_debug=1) works after redirects and can be
   turned on from an admin page.
 * Fix: sorting by title is fast on large directories.
 * Fix: an untouched price or number slider no longer filters out listings without
   a price.
 * Fix: no broken Purchase code row in the free edition’s settings.
 * Fix: the free edition no longer offers front-end submission. Its settings are
   dimmed and marked as full-version features.
 * Fix: the form template editor no longer shows a duplicate “Edit Template” heading.
 * Fix: no grey gap under the wizard bar on the Form Builder step.
 * Fix: the wizard bar stays visible above the block editor.
 * Fix: the Submit button is hidden when the directory’s “Allow submission” is off.
 * Developer: the sidebar and cards now use `w2dc-listing-content__*` classes instead
   of `w2dc-popup__*`. Update custom CSS that targets them.
 * Developer: the `popup` field formatters are renamed to `listing_content`. The
   old names still work.

#### 2.3.0 – 2026-09-16

 * New: the plugin is now Web Directory Free – AI powered. AI writes your listing
   text. Add a key for an AI service – Groq ships with the plugin and its free tier
   needs no payment card – and a Write button appears beside the description: it
   reads the entry name, its categories and its location, and drafts the text. Nothing
   leaves the site until a key is entered, and the fields a person has to state 
   as fact – prices, phone numbers, dates, opening hours, web addresses – are never
   generated, because a plausible invented price is worse than an empty one. Settings,
   AI is where the keys, the per-field switches and the per-visitor limits live.
 * New: the AI tab says whether the AI Assistant Add-on is installed, installs and
   activates it for you when it is not, and tells you when a newer one has been 
   published. One button on that tab, with no trip to the Plugins screen; the zip
   is still there to download if your server will not let WordPress write to its
   own plugins folder. The add-on brings OpenAI, DeepSeek, Mistral, OpenRouter and
   Google Gemini, a Write button on every text field on the form rather than the
   description alone, one control that fills every empty field in a single request
   so the drafts agree with each other.
 * New: assisted search. With the AI Assistant Add-on installed, a visitor can write
   what they are after as a sentence – “a cheap place open on Sunday that takes 
   cards” – and it is read into the search form’s own filters: the category, the
   location and the distance, the sliders and the choice fields your form carries.
   Nothing is invented; only values the form actually offers are set, and every 
   one of them appears above the results as a chip the visitor can drop. A filter
   they set or cleared themselves is left exactly as they left it, so the sentence
   fills in the rest rather than overruling them. A one-word search is answered 
   the way it always was, without asking the model at all, and the form can mark
   the fields the AI filled in if you want it to.
 * Improvement: a price is shown in bold and in the primary colour, so the number
   a visitor is looking for stands out from the rest of the card.
 * Improvement: a position found with “Find my location” is kept to about a metre
   rather than to eleven centimetres, everywhere it is kept – in the browser, and
   in what the search sends on. The link you can share still blurs it to roughly
   a hundred metres.
 * Fix: a field carries an icon only when you chose one for it. Several field types
   drew a built-in icon of their own on the listing card and in the map popups, 
   so switching the icon off in the form builder changed nothing, and fields you
   had never given an icon to had one anyway.
 * Fix: the icon you picked for a map marker is drawn again. A marker saved by name
   rather than by its full class came out as an empty pin, on the map and in the
   small preview beside it.
 * Fix: fields line up down one edge whenever any field in the block has an icon,
   so a field without one no longer sits half a character to the left of its neighbours.
   Categories, tags and rating are laid out on their own and keep their full width.
 * Fix: an icon is stored by its name rather than under the plugin’s own prefix,
   so a form template exported from one site carries its icons into another. Templates
   already saved are converted once, on an admin page load.
 * Fix: the start position you pick for a map in the form builder is stored to about
   a metre, rather than with the fifteen digits the map engine hands over. An existing
   position is shown at that precision the moment the form builder opens.
 * Fix: a new map starts at the zoom the form builder’s start position was framed
   at. The fraction was being dropped rather than rounded, so a preview framed at
   7.66 handed the new map a 7, half a level wider than what you set up.

#### Earlier versions

 * The full version history is in changelog.txt, included with the plugin.

## Meta

 *  Version **2.3.4**
 *  Last updated **3 days ago**
 *  Active installations **300+**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/web-directory-free/)
 * Tags
 * [AI](https://frp.wordpress.org/plugins/tags/ai/)[directory](https://frp.wordpress.org/plugins/tags/directory/)
   [listings](https://frp.wordpress.org/plugins/tags/listings/)[maps](https://frp.wordpress.org/plugins/tags/maps/)
 *  [Advanced View](https://frp.wordpress.org/plugins/web-directory-free/advanced/)

## Ratings

 4.1 out of 5 stars.

 *  [  13 5-star reviews     ](https://wordpress.org/support/plugin/web-directory-free/reviews/?filter=5)
 *  [  2 4-star reviews     ](https://wordpress.org/support/plugin/web-directory-free/reviews/?filter=4)
 *  [  1 3-star review     ](https://wordpress.org/support/plugin/web-directory-free/reviews/?filter=3)
 *  [  1 2-star review     ](https://wordpress.org/support/plugin/web-directory-free/reviews/?filter=2)
 *  [  3 1-star reviews     ](https://wordpress.org/support/plugin/web-directory-free/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/web-directory-free/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/web-directory-free/reviews/)

## Contributors

 *   [ Shamalli ](https://profiles.wordpress.org/mihail-chepovskiy/)

## Support

Issues resolved in last two months:

     8 out of 8

 [View support forum](https://wordpress.org/support/plugin/web-directory-free/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://www.salephpscripts.com/)