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/wildan-m/wp-pet-directory/archive/refs/heads/main.zipNo built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.
Pet Services Directory - WordPress Plugin
A WordPress directory plugin for pet service providers, demonstrating patterns commonly used in directory/listing sites: custom post types, frontend submission, AJAX search, paid featured listings, and rotating banner ads.
Features
- Custom Post Type with meta fields for contact details, address, and featured status
- Hierarchical Taxonomies for service types (category/subcategory) and service areas
- Frontend Listing Submission via
[psd_submit_listing]shortcode with cascading category/subcategory dropdowns - AJAX-Powered Search via
[psd_search]shortcode — search by keyword, location, and service type - Featured/Premium Listings with expiration dates, highlighted in search results
- Rotating Banner Ads via
[psd_banners]shortcode with weighted rotation, date scheduling, and position targeting - WooCommerce Integration for paid featured listing upgrades and banner ad purchases
- Admin Settings Page with general, payment, and email notification configuration
Shortcodes
| Shortcode | Description |
|---|---|
[psd_submit_listing] |
Frontend submission form (logged-in users only) |
[psd_search] |
AJAX search form with results |
[psd_listings per_page="12" featured="yes"] |
Listings grid |
[psd_banners position="header" count="1" interval="5000"] |
Rotating banner ads |
Plugin Structure
pet-services-directory.php Main plugin file
includes/
class-post-types.php CPT registration and meta boxes
class-taxonomies.php Service type and area taxonomies
class-frontend-submission.php Frontend form handling
class-search.php AJAX search logic
class-banner.php Banner ad rotation system
class-woocommerce.php WooCommerce integration hooks
class-admin-settings.php Settings page
templates/
submission-form.php Frontend submission form template
search-form.php Search form template
listing-card.php Individual listing card
listings-grid.php Listings grid wrapper
assets/
css/frontend.css Frontend styles
css/admin.css Admin styles
js/frontend.js AJAX handlers and UI logic
Requirements
- WordPress 5.8+
- PHP 7.4+
- WooCommerce 5.0+ (optional, for payment features)