Thenia για developers
Τεχνικές πληροφορίες για την εγκατάσταση και τη λειτουργία του Thenia σε καταστήματα WooCommerce. Εδώ θα βρεις τις απαιτήσεις συστήματος, τη συμβατότητα, τα scripts που φορτώνονται, τη διαχείριση δεδομένων και τις διαδικασίες σύνδεσης και απεγκατάστασης.
Οι πληροφορίες αφορούν την έκδοση 1.2.9 του πρόσθετου Thenia για WordPress.
Απαιτήσεις συστήματος
| Στοιχείο | Ελάχιστη απαίτηση |
|---|---|
| WordPress | 6.2+ |
| PHP | 7.4+ |
| WooCommerce | 7.0+ |
| Πρωτόκολλο | HTTPS |
Το κατάστημα πρέπει να χρησιμοποιεί HTTPS. Διευθύνσεις που ξεκινούν με http:// δεν γίνονται δεκτές.
Αν το WooCommerce δεν είναι ενεργό, το πρόσθετο εμφανίζει σχετική ειδοποίηση στο περιβάλλον διαχείρισης του WordPress και δεν φορτώνει άλλες λειτουργίες.
Οι ενημερώσεις εγκαθίστανται μέσω του κανονικού μηχανισμού ενημερώσεων του WordPress. Ο έλεγχος διαθεσιμότητας νέας έκδοσης πραγματοποιείται το πολύ μία φορά κάθε 6 ώρες.
Συμβατότητα με WooCommerce
Αποθήκευση παραγγελιών
Το Thenia έχει δηλωμένη συμβατότητα με το HPOS (High-Performance Order Storage). Υποστηρίζει επίσης καταστήματα που αποθηκεύουν τις παραγγελίες ως WordPress posts.
Checkout
Υποστηρίζονται τόσο το κλασικό WooCommerce checkout όσο και το checkout με blocks. Η ενσωμάτωση με το block checkout χρησιμοποιεί τα hooks του Store API.
Cache και REST
Η εμφάνιση της φόρμας εγγραφής και η καταγραφή περιήγησης αποφασίζονται στον browser. Έτσι, οι συγκεκριμένες λειτουργίες υποστηρίζουν και σελίδες που εξυπηρετούνται από cache.
Η φόρμα εγγραφής δεν χρησιμοποιεί nonce, επειδή ένα nonce ενσωματωμένο σε cached σελίδα μπορεί να έχει λήξει. Αντί γι' αυτό, εφαρμόζονται honeypot και περιορισμός αιτημάτων ανά IP.
Όλες οι κλήσεις από τη βιτρίνα του καταστήματος χρησιμοποιούν REST endpoints κάτω από το /wp-json/thenia/v1/. Δεν χρησιμοποιείται admin-ajax.
Συνύπαρξη με άλλα εργαλεία email marketing
Το πρόσθετο αναγνωρίζει γνωστά εργαλεία εγκαταλελειμμένου καλαθιού και email marketing, όπως CartFlows, Cart Abandonment Recovery, Retainful, Klaviyo, Omnisend, Mailchimp for WooCommerce, MailPoet, AutomateWoo, FunnelKit, Brevo, ActiveCampaign και YITH.
Πριν ενεργοποιηθεί ο αυτοματισμός εγκαταλελειμμένου καλαθιού του Thenia, η εφαρμογή ζητά από τον ιδιοκτήτη να απενεργοποιήσει τα αντίστοιχα emails των άλλων εργαλείων, ώστε να αποφεύγονται διπλές αποστολές στον ίδιο πελάτη.
Τι φορτώνει το Thenia στο site
Το πρόσθετο δεν φορτώνει κανένα αρχείο CSS. Χρησιμοποιεί τρία μικρά JavaScript αρχεία, χωρίς εξαρτήσεις από άλλα scripts.
Κάθε script φορτώνεται μόνο όταν είναι ενεργός ο αντίστοιχος αυτοματισμός και πληρούνται οι συνθήκες εμφάνισης του.
| Αρχείο | Μέγεθος | Πού και πότε φορτώνεται |
|---|---|---|
thenia-checkout.js | 1,7 KB | Μόνο στο checkout, για καταγραφή email στο πλαίσιο του εγκαταλελειμμένου καλαθιού. |
thenia-browse.js | 1,4 KB | Με defer, μόνο σε σελίδες προϊόντων και μόνο για γνωστούς επισκέπτες: συνδεδεμένους ή επισκέπτες που προήλθαν από email του Thenia. Δεν εκτελείται για ανώνυμους επισκέπτες. |
thenia-signup.js | 8,1 KB | Με defer, για τη φόρμα εγγραφής. Φορτώνεται για μη συνδεδεμένους επισκέπτες, σε όλες τις σελίδες εκτός από καλάθι, checkout και λογαριασμό. |
Ουρά δεδομένων και εργασίες παρασκηνίου
Τα δεδομένα δεν αποστέλλονται στην εφαρμογή κατά τη φόρτωση της σελίδας.
Αρχικά αποθηκεύονται στον πίνακα {prefix}thenia_queue και αποστέλλονται στο τέλος του request, μετά το fastcgi_finish_request όπου αυτό είναι διαθέσιμο.
- Έως 50 εγγραφές ανά αποστολή.
- Όριο αναμονής 4 δευτερολέπτων.
- Επανάληψη αποτυχημένων αποστολών με προοδευτικά αυξανόμενη αναμονή.
- Μία προγραμματισμένη εργασία,
thenia_heartbeat, που εκτελείται μία φορά την ώρα.
Το πρόσθετο δεν χρησιμοποιεί Action Scheduler.
Cookies και συναίνεση
Το Thenia υποστηρίζει το WP Consent API, το οποίο χρησιμοποιούν εργαλεία διαχείρισης συναίνεσης όπως Complianz, CookieYes και Cookiebot.
Χωρίς συναίνεση στην αντίστοιχη κατηγορία, δεν τοποθετούνται τα σχετικά cookies και δεν καταγράφονται προβολές προϊόντων.
Όλα τα cookies χρησιμοποιούν SameSite=Lax και Secure σε HTTPS.
| Cookie | Διάρκεια | Κατηγορία | Σκοπός |
|---|---|---|---|
thenia_click | 30 ημέρες | marketing | Καταγράφει από ποιο email προήλθε η επίσκεψη, για την απόδοση παραγγελιών. Χρησιμοποιεί HttpOnly. |
thenia_known | 30 ημέρες | marketing | Αναγνωρίζει επισκέπτη που προήλθε από email του Thenia, αποκρύπτει τη φόρμα και επιτρέπει την καταγραφή περιήγησης. |
thenia_customer | 2 χρόνια | preferences | Αναγνωρίζει πελάτη ή εγγεγραμμένο επισκέπτη, ώστε να μην εμφανίζεται ξανά η φόρμα εγγραφής. |
thenia_signup_at | 1 χρόνος | preferences | Καταγράφει πότε εμφανίστηκε τελευταία φορά η φόρμα. Η ίδια πληροφορία αποθηκεύεται και στο localStorage. |
Σύνδεση καταστήματος και ασφάλεια
Διαδικασία σύνδεσης
- Ο διαχειριστής επιλέγει «Σύνδεση με Thenia» μέσα από το πρόσθετο.
- Επιβεβαιώνει τη σύνδεση στο
app.thenia.io. - Επιστρέφει στο κατάστημα με κωδικό μίας χρήσης, ο οποίος ισχύει για 10 λεπτά και συνδέεται αποκλειστικά με το συγκεκριμένο site.
- Το πρόσθετο ανταλλάσσει τον κωδικό με την εφαρμογή μέσω επικοινωνίας server-to-server.
Για νέο κατάστημα, το πρόσθετο δημιουργεί WooCommerce REST key με περιγραφή Thenia και δικαιώματα read_write, για τον διαχειριστή που πραγματοποιεί τη σύνδεση.
Δεν χρησιμοποιούνται application passwords.
Υπογραφή αιτημάτων
Η επικοινωνία ανάμεσα στο πρόσθετο και την εφαρμογή υπογράφεται και στις δύο κατευθύνσεις με HMAC-SHA256.
Οι κεφαλίδες υπογραφής είναι:
X-Thenia-StoreX-Thenia-TimestampX-Thenia-Signature
Αιτήματα με χρονική απόκλιση μεγαλύτερη από 5 λεπτά απορρίπτονται.
Αποθήκευση μυστικών
Στο WordPress, το μυστικό σύνδεσης αποθηκεύεται κρυπτογραφημένο με sodium ή AES-256-GCM μέσω openssl. Το κλειδί κρυπτογράφησης προκύπτει από το wp_salt του site.
Το μυστικό δεν αποθηκεύεται σε απλό κείμενο. Η εγγραφή βρίσκεται στο wp_options, χωρίς autoload.
Στην εφαρμογή Thenia, τα κλειδιά και τα μυστικά αποθηκεύονται κρυπτογραφημένα με AES-256-GCM.
REST endpoints
Το πρόσθετο χρησιμοποιεί το namespace thenia/v1.
| Endpoint | Χρήση και προστασία |
|---|---|
/cart-email | Καταγραφή email καλαθιού, με nonce. |
/view | Καταγραφή προβολών προϊόντων. |
/signup | Εγγραφή μέσω φόρμας, με honeypot και περιορισμό ανά IP. |
/signup-shown | Καταγραφή εμφάνισης της φόρμας εγγραφής. |
/wc | Δέχεται μόνο υπογεγραμμένα αιτήματα από την εφαρμογή. |
/sale-check | Δέχεται μόνο υπογεγραμμένα αιτήματα από την εφαρμογή. |
Τα /wc και /sale-check περιορίζονται σε λειτουργίες που αφορούν κουπόνια και μεθόδους αποστολής.
Το πρόσθετο δεν δημιουργεί, δεν τροποποιεί και δεν διαγράφει ζώνες αποστολής.
Ποια δεδομένα ανταλλάσσονται με το Thenia
Δεδομένα λειτουργίας καταστήματος
Το πρόσθετο αποστέλλει στην εφαρμογή:
- Παραγγελίες, νέες καταχωρίσεις, μεταβολές και επιστροφές χρημάτων.
- Προϊόντα και πληροφορίες αποθέματος.
- Καλάθια για τα οποία είναι γνωστή η διεύθυνση email.
- Εγγραφές από τη φόρμα, με email, όνομα και το ακριβές κείμενο συναίνεσης.
- Προβολές προϊόντων από γνωστούς επισκέπτες, σύμφωνα με τις απαιτήσεις συναίνεσης.
Τα στοιχεία πληρωμής των παραγγελιών δεν στέλνονται στο Thenia. Στέλνεται μόνο το είδος της πληρωμής: αντικαταβολή, τραπεζική κατάθεση, επιταγή ή online.
Ωριαία ενημέρωση
Μία φορά την ώρα αποστέλλονται:
- Εκδόσεις του πρόσθετου Thenia, του WooCommerce, του WordPress και της PHP.
- Ζώνη ώρας και νόμισμα καταστήματος.
- Όνομα και λογότυπο καταστήματος.
- Email και τηλέφωνο καταστήματος.
Χρήση δεδομένων και AI
Τα δεδομένα πελατών χρησιμοποιούνται αποκλειστικά για τη λειτουργία του Thenia για το συνδεδεμένο κατάστημα. Δεν πωλούνται ούτε διατίθενται για διαφημιστική χρήση.
Στο AI διαβιβάζονται μόνο στοιχεία προϊόντων, όχι προσωπικά δεδομένα πελατών.
Φιλοξενία και επεξεργασία
Η εφαρμογή και η βάση δεδομένων φιλοξενούνται στις ΗΠΑ. Η αποστολή emails πραγματοποιείται από την Ιρλανδία.
Περισσότερες πληροφορίες περιλαμβάνονται στην Πολιτική Απορρήτου και στη Συμφωνία Επεξεργασίας Δεδομένων (DPA).
Δημιουργία και διαχείριση κουπονιών
Τα κουπόνια δημιουργούνται απευθείας στο WooCommerce λίγο πριν από την αποστολή του αντίστοιχου email.
Κάθε κουπόνι διαθέτει:
- Μορφή
PREFIX-XXXXXX, με έξι χαρακτήρες στον μοναδικό κωδικό. - Αποκλεισμό των χαρακτήρων
0,O,1,IκαιL, ώστε να αποφεύγονται συγχύσεις. - Δυνατότητα μίας χρήσης.
- Περιορισμό χρήσης στο email του συγκεκριμένου πελάτη.
- Ρύθμιση
individual_use. - Ημερομηνία λήξης.
Τα κουπόνια του Thenia που δεν χρησιμοποιήθηκαν διαγράφονται αυτόματα από το WooCommerce 7 ημέρες μετά τη λήξη τους.
Κουπόνια που έχουν χρησιμοποιηθεί ή δεν δημιουργήθηκαν από το Thenia δεν διαγράφονται από αυτή τη διαδικασία.
Αποστολή emails και παραδοσιμότητα
Τα emails αποστέλλονται από domain του Thenia, με υποστήριξη SPF, DKIM και DMARC.
Δεν απαιτούνται αλλαγές στις εγγραφές DNS του καταστήματος.
- Όνομα αποστολέα: Εμφανίζεται το όνομα του καταστήματος, όχι το Thenia.
- Απαντήσεις: Κατευθύνονται στο email του καταστήματος.
- Απεγγραφή: Κάθε email περιλαμβάνει δυνατότητα απεγγραφής με ένα κλικ, μέσω
List-Unsubscribeκαιone-click.
Απενεργοποίηση, αποσύνδεση και απεγκατάσταση
Οι τρεις ενέργειες έχουν διαφορετικό αποτέλεσμα.
Απενεργοποίηση πρόσθετου
Η απενεργοποίηση σταματά την ωριαία εργασία thenia_heartbeat.
Δεν διαγράφει δεδομένα και δεν αποσυνδέει το κατάστημα από το Thenia.
Για να διακοπεί η σύνδεση, πρέπει να χρησιμοποιηθεί η επιλογή «Αποσύνδεση» ή να γίνει απεγκατάσταση.
Αποσύνδεση από το πρόσθετο
Η επιλογή «Αποσύνδεση»:
- Διαγράφει το WooCommerce REST key που δημιούργησε το ίδιο το πρόσθετο.
- Αδειάζει την ουρά δεδομένων.
- Διαγράφει το αποθηκευμένο μυστικό σύνδεσης.
Πλήρης απεγκατάσταση
Κατά την απεγκατάσταση, το uninstall.php ειδοποιεί την εφαρμογή Thenia και εκτελεί τον καθαρισμό των τοπικών δεδομένων.
Διαγράφονται:
- Το WooCommerce REST key που δημιούργησε το πρόσθετο.
- Ο πίνακας
{prefix}thenia_queue. - Ο πίνακας
{prefix}thenia_carts. - Το option
thenia_settings. - Το option
thenia_table_version. - Το option
thenia_sale_check_off. - Το transient
thenia_update_info. - Η προγραμματισμένη εργασία
thenia_heartbeat.
Τι παραμένει μετά την απεγκατάσταση
Δεν διαγράφονται:
- Κουπόνια που δημιουργήθηκαν από το Thenia.
- Τα order meta
_thenia_clickκαι_thenia_cart_token. - Transients που λήγουν αυτόματα.
API και ενσωματώσεις τρίτων
Το Thenia δεν διαθέτει προς το παρόν δημόσιο API ή webhooks για εξωτερικές ενσωματώσεις.
Η σύνδεση καταστήματος WooCommerce με την εφαρμογή πραγματοποιείται αποκλειστικά μέσω του πρόσθετου Thenia.
Τα εσωτερικά REST endpoints του πρόσθετου δεν αποτελούν δημόσιο API για τρίτους.
Υποστήριξη developers
Για τεχνικές ερωτήσεις σχετικά με την εγκατάσταση, τη συμβατότητα ή τη λειτουργία του πρόσθετου, επικοινώνησε στο:
Συχνές ερωτήσεις για developers
Υποστηρίζει το Thenia HPOS και WooCommerce Checkout Blocks;
Ναι. Το πρόσθετο έχει δηλωμένη συμβατότητα με HPOS και υποστηρίζει τόσο το κλασικό checkout όσο και το block checkout μέσω των hooks του Store API. Υποστηρίζονται επίσης οι παραγγελίες που αποθηκεύονται ως WordPress posts.
Λειτουργεί το Thenia με cache;
Ναι. Η φόρμα εγγραφής και η καταγραφή περιήγησης χρησιμοποιούν αποφάσεις στον browser, ώστε να λειτουργούν και σε cached σελίδες. Οι κλήσεις από τη βιτρίνα πραγματοποιούνται μέσω REST και όχι μέσω admin-ajax.
Προσθέτει scripts σε όλες τις σελίδες;
Όχι. Το Thenia δεν φορτώνει CSS και ενεργοποιεί τα τρία JavaScript αρχεία του μόνο όπου χρειάζονται, ανάλογα με τον ενεργό αυτοματισμό, τη σελίδα και τον επισκέπτη.
Χρειάζονται αλλαγές στο DNS για την αποστολή emails;
Όχι. Τα emails αποστέλλονται από domain του Thenia με SPF, DKIM και DMARC. Το όνομα αποστολέα παραμένει το όνομα του καταστήματος και οι απαντήσεις κατευθύνονται στο email του.
Τι συμβαίνει αν απενεργοποιήσω ή απεγκαταστήσω το πρόσθετο;
Η απενεργοποίηση σταματά μόνο την ωριαία εργασία και διατηρεί τη σύνδεση και τα δεδομένα. Η αποσύνδεση διαγράφει το κλειδί REST του πρόσθετου, αδειάζει την ουρά και αφαιρεί το μυστικό σύνδεσης. Η απεγκατάσταση καθαρίζει επιπλέον τους συγκεκριμένους πίνακες, options, transient και προγραμματισμένη εργασία, αλλά διατηρεί τα κουπόνια και τα αναφερόμενα order meta.
Μπορώ να συνδέσω το Thenia μέσω δικού μου API;
Όχι. Δεν παρέχεται σήμερα δημόσιο API ή webhooks για τρίτους. Η σύνδεση WooCommerce πραγματοποιείται μόνο μέσω του επίσημου πρόσθετου Thenia.
