Ski Engine
Manage ski resort areas, hotels (bilingual), difficulties, tags and pricing with weekday/date/range schedules and JPY/USD support. Frontend calculator shortcode included.
★ 0stars
0forks
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/dungnt8805/ski-price-calculator/archive/refs/heads/master.zipSki Engine Plugin
Ski Engine is a custom WordPress plugin for managing ski destinations, hotels, pricing, and inquiry workflows.
Plugin Info
- Name: Ski Engine
- Version: 2.0
- Text domain:
ski-price-calculator - Main file: plugins/ski-engine/ski-engine-ultimate.php
A WordPress.org-style readme already exists at plugins/ski-engine/readme.txt. This README.md is a practical developer guide for this repository.
Core Modules
- Data layer and table setup:
- Admin pages:
- Frontend and templates:
- Inquiry and email:
- Calculator and shortcodes:
- REST API:
Data Model Summary
Main tables (prefix omitted):
spcu_prefecturesspcu_areasspcu_hotelsspcu_pricesspcu_addon_pricesspcu_difficultiesspcu_gradesspcu_inquiries
Important Domain Split
Difficultyis for terrain profile (beginner/intermediate/advanced).Gradeis for product/package tier (standard/premium/exclusive).
Do not mix these concepts in UI or price mapping.
Key Features
- Prefecture/area/hotel management in admin
- Grade and difficulty management
- Schedule-based hotel pricing
- Add-on pricing (lift/gear/transport)
- Frontend simulation calculator
- Inquiry form with dedicated inquiry page and prefill support
- Email notifications and customer auto-responder
- REST endpoints for prices/hotels
Inquiry System Notes
- Dedicated inquiry page support (
/inquiryflow) - URL prefill parameters for area/hotel/check-in/check-out/guests/package
- Confirmation success state after submit
- WP Mail SMTP integration checks and notices
Menu and Theme Integration
Ski Engine data is consumed by Skiverse theme to build menu/content behavior:
- Prefecture and area records are synced by theme-side helpers for menu taxonomies.
- Area detail links use canonical route
/area/{slug}/.
Development Notes
- Use
php -lfor quick syntax checks while editing. - Keep compatibility with existing admin page slugs and options keys.
- Preserve old option keys and menu locations when refactoring to avoid migration breakage.
Local Validation
Typical checks after changes:
php -l plugins/ski-engine/ski-engine-ultimate.phpphp -lon edited module files- Verify admin pages load:
- Dashboard
- Resorts
- Accommodation
- Operations
- Settings tabs
- Verify frontend routes and calculator behavior
- Verify inquiry submit and email flow