How I Built a Coffee Shop Directory Plugin (That Works in Any City)

Finding the perfect coffee shop should be easy—but most directories are clunky, outdated, or overkill. That’s why I built a custom WordPress plugin designed specifically for local business discovery, starting with coffee shops.

It’s fully block-based, lightweight, and flexible enough to work in any city—and with a few tweaks, it’s not just for coffee. Here’s how it came together.

You can view the full plugin code on GitHub: github.com/JonImmsWordpressDev/coffee-shop-directory

🔧 Why I Built It

  • Easy to manage in the Block Editor
  • Fast and responsive for users
  • Fully filterable by location, hours, and features
  • Built with clean code—no ACF, no bloat
  • Adaptable for other types of local directories

This wasn’t just about building something for one city. I wanted a reusable tool that anyone could take and rebrand for their own needs.

🧱 Key Features

  • Custom post type (for coffee shops or anything else)
  • Block-based layout using native WordPress blocks
  • Opening hours logic with “Open Now” and “Closed Today”
  • Google Maps integration with synced markers
  • AJAX filtering (no reloads!)
  • zipcode proximity sorting
  • Responsive cards with icons for WiFi, drive-thru, etc.
  • Extensible for reviews, favorites, and more

✨ Built for the Block Editor

This plugin is 100% Gutenberg-native. All the content—including maps, filters, and listings—can be added, styled, and rearranged directly in the Block Editor.

No need for PHP templates. Just drop the custom block onto a page and start customizing.

⏰ Smart Opening Times

Each listing has opening hours for every day of the week. The plugin figures out whether it’s:

  • Open Now
  • Closes Soon
  • Closed Today

And it highlights that status right on the card—with helpful details like “Closes at 3:00 PM.”

📍 Location-Based Filtering

Visitors can filter by:

  • Neighborhood or region
  • Open now status
  • Features (e.g., WiFi, drive-thru)
  • Distance from a ZIP code

Everything updates dynamically, including the map markers.

🌎 Works in Any City

This plugin was designed to be flexible and city-agnostic. You can easily:

  • Add your own neighborhoods or areas
  • Enter shops manually or import them in bulk
  • Customize the language and labels
  • Use it for any type of local directory

This isn’t just a coffee shop plugin—it’s a local business finder engine.

🔄 Not Just for Coffee

With a few label changes, you can use this plugin to build directories for:

  • 🍻 Breweries
  • 🧘 Fitness studios
  • 🐾 Pet services
  • 📚 Bookstores
  • 🍔 Food trucks
  • 🧑‍💻 Coworking spaces

If it has a location, hours, and a reason to visit—it works.

🚀 What’s Next

  • 📥 Bulk import tools
  • ⭐️ Saved favorites
  • 💬 Reviews & comments
  • 📆 Event integration
  • 💸 Premium listing support

🎯 Final Thoughts

I’ve been building WordPress plugins for years, but this one hits close to home (and not just because I love coffee). It shows what’s possible with modern WordPress development—block-based layouts, AJAX filtering, real-time logic—all without relying on heavy third-party tools.

If you’re interested in building something similar, need a custom version for your own city, or want to collaborate—get in touch.

Again, here’s the repo: github.com/JonImmsWordpressDev/coffee-shop-directory