Skip to content

Woo Total Menu v1.0.3

Choose a tag to compare

@georgyfr georgyfr released this 24 Jun 21:03
· 23 commits to main since this release

🔌 API REST CRUD complète /wtm/v1/menus

✅ Nouveautés principales

8 endpoints REST sous /wp-json/wtm/v1/menus

Méthode Endpoint Description Statut
GET /wtm/v1/menus Liste paginée avec filtres 200
GET /wtm/v1/menus/{id} Détail d'un menu 200
POST /wtm/v1/menus Création avec validation JSON 201 + Location
PUT/PATCH /wtm/v1/menus/{id} Mise à jour partielle 200
DELETE /wtm/v1/menus/{id} Suppression 200
POST /wtm/v1/menus/{id}/duplicate Duplication 201 + Location
GET /wtm/v1/menus/schema Schéma JSON complet 200

Classe Schema_Validator

  • Validation JSON pour _wtm_config, _wtm_header_config, _wtm_footer_config
  • 6 types d'items autorisés : link, mega_container, column, widget, title, separator
  • Validation récursive des enfants
  • Codes d'erreur explicites (wtm_invalid_json, wtm_invalid_item_type, etc.)

Format de réponse propre (14 champs)

id, title, slug, status, menu_type, location, config (décodé), header_config (décodé), footer_config (décodé), version, date_created, date_modified, author, edit_url

Filtres disponibles sur la liste

  • search (recherche plein texte)
  • menu_type (horizontal/vertical/offcanvas/footer)
  • location (primary/footer/sidebar/mobile)
  • status (publish/draft/any)
  • orderby (date/modified/title/id) + order (asc/desc)
  • page + per_page (1-100)

🔒 Sécurité

  • Toutes les routes vérifient la capacité wtm_manage_menus
  • Sanitization dédiée pour chaque paramètre
  • Invalidation du cache du menu après chaque écriture
  • En-têtes X-WP-Total et X-WP-TotalPages sur la liste

📖 Exemples

Voir versions/v1.0.3.md pour des exemples curl complets

🔗 Liens