Skip to content

Releases: GronskiDeveloper/woocommerce-custom-product-data

v1.0.0 — pierwsza publiczna wersja

Choose a tag to compare

@GronskiDeveloper GronskiDeveloper released this 12 Aug 05:32

v1.0.0 — pierwsza publiczna wersja

Plugin WordPress łączący personalizację produktu (np. z konfiguratora 3D) z pełnym pipeline'em zamówień WooCommerce — od koszyka, przez checkout, do admin order page.

Co jest w środku

Trójstopniowy łańcuch hooków WooCommerce:

  1. woocommerce_add_cart_item_data — przyjmuje payload konfiguracji z front-endu, ustawia deterministyczny unique_key (md5(json_encode)) → dwie różne konfiguracje = dwie linie koszyka.
  2. woocommerce_get_item_data — wyświetla konfigurację w koszyku i checkout.
  3. woocommerce_checkout_create_order_line_item — zapisuje konfigurację na zamówieniu w post_meta pod namespaced kluczem gd_config (zero kolizji z innymi pluginami).
  • Sanityzacja: sanitize_text_field/wp_kses_post przy zapisie; esc_html/esc_attr przy display — XSS-safe.
  • Brak natywnych sesji PHP (używam WC()->session) — kompatybilny z pluginami cache'ującymi (WP Rocket, W3 Total Cache, LiteSpeed).
  • Kompatybilność: WooCommerce 6.0+, WordPress 5.8+, PHP 7.4+.

Do czego używać

Most między jakimkolwiek konfiguratorem produktu (3D w Three.js, formularz z opcjami, kreator personalizacji) a WooCommerce order pipeline. Klient personalizuje produkt → dane trafiają na zamówienie widoczne w admin panelu → obsługa realizacji zamówienia.

Wsparcie dla pracy z AI

  • CLAUDE.md — podział pracy człowiek/AI (strategia hooków i pary sanityzacji po mojej stronie — bug tutaj korumpuje realne zamówienia; implementacja handlerów po stronie AI), weryfikacja, znane pułapki.
  • .claude/commands/hook-audit.md — slash-command wymuszający audyt trójstopniowego łańcucha przed każdą zmianą (add_cart_item_data zwraca tablicę, nie pushuje; unique_key deterministyczny; sanityzacja parowana poprawnie; brak $_SESSION).

Autor: GroDev · MIT.