🔹 DATABASE & INITIALIZATION
- Creates & updates the database tables for routes & race timing
- 📌
luup_create_race_tables()
- Flushes WordPress rewrite rules on activation
- 📌
luup_flush_rewrite_rules()
🔹 ROUTE MANAGEMENT (WordPress Admin Page)
- Admin page to manage race routes (list by name linked to web page, edit, delete) with ability to upload new routes via KML
- 📌
luup_manage_routes_page()
- Uploads KML files to add a new route
- 📌
luup_process_route_upload()
- Extracts route data (name, length, start/finish points) from KML file
- 📌
extract_kml_data($kml_content)
🔹 SHORTCODES & DISPLAY
- Shortcode to display route information on any page
- 📌
luup_display_route($atts)
🔹 ROUTE URL HANDLING & DYNAMIC PAGES
- Creates custom URL structure for route pages (
/route/slug)
- 📌
luup_add_rewrite_rules()
- Registers custom query variable for route slugs
- 📌
luup_add_query_vars($vars)
- Redirects dynamic route URLs to the route template
- 📌
luup_template_redirect()
🔹 ROUTE DATA HANDLING
- Calculates total route distance from KML file
- 📌
calculate_total_distance($coordinates)
- Processes route deletions when admin removes a route
- 📌
luup_delete_route($route_id)
🚨 Important: Ensure all these functions are included & working in every new version.