KA Schindler - Listing Bulk Importer
Bulk-import ListingPro business listings — either from a CSV file, or auto-discovered by place + category from Google Maps, Claude, Gemini or ChatGPT. Each provider's own live model list loads automatically once its key is saved, with a per-model cost estimate. Preview every row before anything is written, see which rows already exist, and undo a whole import in one click. Built for Klima- und Anlagentechnik Schindler GmbH.
Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/irandec/ka-listing-bulk-importer/archive/refs/heads/main.zipA WordPress plugin for ListingPro that bulk-imports business listings — either from a CSV file, or auto-discovered by place + category using Google Maps, Claude, Gemini or ChatGPT.
Built by Mohammad Babaei for Klima- und Anlagentechnik Schindler GmbH.
Features
- CSV bulk import — map columns to core fields (title, description, category, location, tags), contact/meta fields (address, phone, WhatsApp, email, website, social links), and photos (featured + gallery), with a preview step before anything is written.
- Discover tool — search for businesses by city + category using:
- Google Maps (Places API) — live, current results.
- Claude (Anthropic), Gemini (Google AI), ChatGPT (OpenAI) — AI-suggested results, clearly labeled as such since they answer from model knowledge rather than a live search.
- Live model lists — once an AI provider's key is saved and verified, its current list of available models is fetched from the provider's own API, with a per-model cost estimate you control.
- Cost tracking — set an estimated cost per result for each provider/model; the plugin keeps a running estimated spend counter per provider.
- Scheduled Discover searches — save a recurring city + category + source combo (daily or weekly) via WP-Cron. New results are imported as "Pending" for review; duplicates and uncertain matches are always left for manual review.
- Preview & existing-row detection — see exactly what will be created or skipped before committing, and export the preview batch as CSV.
- One-click undo — every import is logged so it can be reverted as a whole.
- Per-user isolation — uploads and previews are scoped per admin user so two people don't collide.
Requirements
- WordPress 5.8+
- PHP 7.4+
- The ListingPro theme (or any theme registering the
listing,listing-category,location, andlist-tagstaxonomies/post type used by this plugin).
Installation
- Upload the
ka-listing-bulk-importerfolder to/wp-content/plugins/, or install the plugin ZIP via Plugins → Add New → Upload Plugin. - Activate the plugin through the Plugins menu in WordPress.
- Go to Listings → Bulk Import Settings to add API keys for the data sources you want to use (Google Maps and/or Claude/Gemini/ChatGPT).
- Use Listings → Bulk Import to import from a CSV, or Listings → Discover to search for businesses to import.
Usage
CSV import
- Download the CSV template from the Bulk Import screen.
- Fill in your rows (title is the only required field).
- Upload the file, map its columns to plugin fields, preview the results, then import.
Discover
- Pick a data source, enter a city and category (or "all categories").
- Review results in the preview — AI-sourced rows are flagged so addresses/phone numbers can be double-checked before publishing.
- Import the rows you want, or set up a schedule so the same search runs automatically.
Settings
Each data source has its own API key, live status check, and (for AI providers) a live model list and per-model cost estimate. See the in-app "How to get a key" instructions on the Settings screen for each provider.
Support
For issues or feature requests, contact the author: adschi.com.
License
Proprietary — licensed for use by Klima- und Anlagentechnik Schindler GmbH and its authorized distribution channel(s). Not for redistribution without permission from the author.
See CHANGELOG.md for version history.