Puntr

Àpèjúwe

Puntr is a comprehensive WordPress plugin designed for managing service providers with advanced scheduling capabilities. Perfect for agencies, clinics, or any business that needs to manage provider schedules and profiles.

Key Features

  • Provider Management – Create and manage detailed provider profiles with photos, physical details, rates, and services
  • Product-style Gallery – Professional image gallery with main photo and thumbnail navigation
  • Roster Scheduling – Visual calendar interface for managing provider schedules using DayPilot
  • Daily Roster Display – Customizable shortcode for displaying daily rosters on your website
  • Provider Archive – Enhanced archive pages showing provider attributes and quick info
  • Professional Admin Interface – Branded admin pages with consistent styling
  • Flexible Taxonomies – Organize providers by service categories and body types
  • REST API – Full API access to providers and roster data
  • Extensible – Comprehensive hooks and filters for developers
  • Security – Built with WordPress security best practices

Managing Providers

  1. Go to Puntr Providers to view all providers
  2. Click Add New Provider to create a new profile
  3. Fill in provider details including:
    • Basic information (name, age, gender, ethnicity)
    • Physical details (height, measurements, hair/eye color)
    • Pricing (30/45/60/90/120/180 minute rates)
    • Contact information
    • Featured image (main photo)
    • Gallery images (additional photos)

Managing Rosters

  1. Go to Puntr Roster to view the calendar
  2. Click and drag on the calendar to create a roster entry
  3. Select the provider and time slot
  4. Roster entries can be:
    • Moved by dragging
    • Resized by dragging edges
    • Deleted via right-click menu
  5. Use zoom controls (+/-) to adjust the calendar view
  6. Navigate weeks using arrow buttons or date picker

Displaying Rosters on Your Website

Basic Daily Roster:
[puntr_daily_roster]

Advanced Options:
[puntr_daily_roster date=”2025-07-20″ show_photo=”true” photo_size=”60″ columns=”photo,name,age,location,start,end”]

Full Calendar:
[puntr_roster_calendar height=”700″]

Available Shortcode Parameters

  • date – Specific date to display (YYYY-MM-DD format)
  • show_photo – Display provider photos (true/false)
  • photo_size – Size of photos in pixels (default: 50)
  • show_age – Include age column (true/false)
  • show_height – Include height column (true/false)
  • show_dress_size – Include dress size column (true/false)
  • show_bust – Include bust size column (true/false)
  • show_location – Include location column (true/false)
  • show_services – Include services column (true/false)
  • show_rates – Include rates column (true/false)
  • columns – Comma-separated list of columns to display

Available Columns

photo, ethnicity, name, age, height, dress_size, bust, location, services, rates, start, end

Template System

Override templates by copying them from plugins/puntr/templates/ to yourtheme/puntr/:

  • archive-provider.php – Provider archive/listing page
  • single-provider.php – Single provider page
  • content-provider.php – Provider item in lists

Developer Hooks

Provider Hooks:
* puntr_before_save_provider
* puntr_after_save_provider
* puntr_provider_meta_fields
* puntr_provider_meta_boxes
* puntr_provider_display_data
* puntr_provider_archive_info

Roster Hooks:
* puntr_before_create_roster_event
* puntr_after_create_roster_event
* puntr_roster_event_data
* puntr_roster_table_columns

Calendar Hooks:
* puntr_calendar_event_colors
* puntr_calendar_event_text
* puntr_calendar_default_view
* puntr_calendar_time_slots

Template Hooks:
* puntr_skip_archive_provider_details
* puntr_archive_provider_data
* puntr_gallery_images
* puntr_gallery_position
* And many more…

REST API

Puntr includes a comprehensive REST API. All endpoints are available under /wp-json/puntr/v1/

Available Endpoints:

  • GET /wp-json/puntr/v1/providers – Get list of providers

    • Parameters: per_page, page, service, active_only
  • GET /wp-json/puntr/v1/providers/{id} – Get single provider details

    • Returns full provider information including all meta fields
  • GET /wp-json/puntr/v1/roster – Get roster events by date range

    • Required: start_date, end_date (YYYY-MM-DD format)
    • Optional: provider_id
  • GET /wp-json/puntr/v1/daily-roster – Get daily roster

    • Optional: date (YYYY-MM-DD format, defaults to today)
    • Returns roster entries including overnight shifts

Example Usage:
`
// Get today’s roster
GET /wp-json/puntr/v1/daily-roster

// Get specific date roster
GET /wp-json/puntr/v1/daily-roster?date=2025-01-15

// Get providers with pagination
GET /wp-json/puntr/v1/providers?per_page=20&page=2

// Get roster for a week
GET /wp-json/puntr/v1/roster?start_date=2025-01-01&end_date=2025-01-07
`

Additional Information

For support and feature requests, email wordpress@puntr.me

For detailed documentation including all hooks, filters, and code examples, please refer to the plugin’s README.md file or visit https://puntr.me/wordpress

Àwọn àwòrán ìbòjú

  • Roster admin interface with provider scheduling
  • Settings page with quick reference for shortcodes
  • Provider list page where you can manage your providers
  • Roster embed displayed on any page through use of a shortcode
  • Alternative roster embed displayed on any page through the use of a shortcode
  • Provider edit page show many of the attributes you can modify

Ìgbéwọlẹ̀

  1. Upload the puntr folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Navigate to the Puntr menu in your WordPress admin
  4. Configure settings under Puntr Settings

FAQ

How do I customize the provider display?

Create a folder named puntr in your theme directory and copy any template from plugins/puntr/templates/ to customize.

Can I use this with my existing theme?

Yes! Puntr inherits your theme’s styles and provides minimal styling to ensure compatibility.

Is the calendar mobile-friendly?

Yes, the DayPilot calendar adapts to different screen sizes for optimal viewing on all devices.

How do I display only specific columns in the roster?

Use the columns parameter in the shortcode:
[puntr_daily_roster columns=”photo,name,start,end”]

Can I filter providers by service?

Yes, providers can be organized using service taxonomies and filtered accordingly.

Is there an API for external integrations?

Yes, Puntr includes a full REST API with endpoints for providers and roster data.

How do I add custom fields to providers?

Use the puntr_provider_meta_fields filter to add custom fields.

Àwọn àgbéyẹ̀wò

Kò sí àwọn àgbéyẹ̀wò fún plugin yìí.

Àwọn Olùkópa & Olùgbéejáde

“Puntr” jẹ́ ètò ìṣàmúlò orísun ṣíṣí sílẹ̀. Àwọn ènìyàn wọ̀nyí ti ṣe ìkópa sí plugin yìí.

Àwọn Olùkópa

Túmọ̀ “Puntr” sí èdè rẹ.

Ṣe o nífẹ̀ẹ́ sí ìdàgbàsókè?

Ṣàwárí koodu, ṣàyẹ̀wò ibi ìpamọ́ SVN, tàbí ṣe àgbékalẹ̀ sí àkọsílẹ̀ ìdàgbàsókè nípasẹ̀ RSS.

Àkọsílẹ̀ àwọn àyípadà

1.2.0

  • Removed venue functionality to simplify the plugin
  • Fixed WordPress coding standards warnings
  • Improved admin notices positioning
  • Added Services taxonomy to admin menu
  • Updated REST API documentation
  • Fixed API endpoint issues with missing providers
  • Enhanced admin UI with proper header positioning
  • Removed unused API settings
  • Improved error handling throughout

1.1.0

  • Added template system with override capability
  • Added hooks and filters for extensibility
  • Added product-style image gallery for providers
  • Improved roster display – removed status column for cleaner presentation
  • Fixed duplicate roster display issue on provider pages
  • Added template actions for gallery and roster placement
  • Enhanced provider archive with flexible content positioning

1.0.0

  • Initial release
  • Provider management system
  • Roster scheduling with DayPilot
  • Daily roster shortcode
  • Admin interface