WordPress-horgok az Ameliában
Hogyan bővítheted az Amelia működését szűrőkkel és műveletekkel, és hogyan jeleníthetsz meg egyéni hibaüzenetet foglalás befejezése előtt.
A WordPress-horgokkal (hookokkal) úgy módosíthatod az Amelia működését, hogy a bővítmény fájljaihoz nem nyúlsz. Hasznosak, ha át akarod írni egy logikát, egyedi üzenetet akarsz megjeleníteni, további folyamatokat akarsz elindítani, vagy az Ameliát külső rendszerhez kötöd. A horgokat saját PHP-függvényekkel adod hozzá. Mivel a bővítmény logikájára épülnek, a testreszabásaid a frissítések után is megmaradnak.
Fontos: a horgok használatához programozási ismeret kell, és a támogatás csak tanácsadásra terjed ki, kódot nem írnak és nem javítanak helyetted.
Szűrők és műveletek
Szekció neve “Szűrők és műveletek”| Típus | Mire való | Visszatérési érték |
|---|---|---|
Szűrő (add_filter) |
Egy értéket (szöveg, szám, tömb, objektum) módosítasz, mielőtt az Amelia felhasználná. | Kötelezően visszaadod a módosított értéket. |
Művelet (add_action) |
Saját kódot futtatsz az Amelia munkafolyamatának adott pontján: naplózás, további értesítés, külső rendszer hívása. | Nem ad vissza semmit. |
A szűrő a meglévő logika fölött fut le, ezért a frissítések nem törlik a módosításodat. A saját kódodat érdemes gyermektémában vagy külön bővítményben tartani, hogy az is megmaradjon a frissítések után.
Egyéni hibaüzenet a foglalás befejezése előtt
Szekció neve “Egyéni hibaüzenet a foglalás befejezése előtt”Az Amelia egyik szűrőjével üzenetet jeleníthetsz meg a vásárlónak, mielőtt befejezné a foglalást. Ez akkor jó, ha valamilyen feltételnek teljesülnie kell, például kötelező metaadatnak, jogosultsági feltételnek vagy érvényesítési szabálynak. Ha a szűrő megakasztja a foglalást, a visszaadott üzenet a végső megerősítő lépés helyén jelenik meg.
function example($appointment){ if (1) { // az 1 helyére írd a valódi feltételt throw new \AmeliaBooking\Domain\Common\Exceptions\CustomException('Egyéni üzenet'); } return $appointment;}
add_filter('amelia_before_booking_added_filter', 'example', 10, 1);Az ilyen egyéni érvényesítés ezekben a szűrőkben és műveletekben használható:
| Típus | Horog neve |
|---|---|
| Szűrő | amelia_before_booking_added_filter |
| Szűrő | amelia_before_appointment_booking_saved_filter |
| Szűrő | amelia_before_event_booking_saved_filter |
| Szűrő | amelia_modify_payment_amount |
| Szűrő | amelia_before_payment |
| Művelet | amelia_before_booking_added |
| Művelet | amelia_before_appointment_booking_saved |
| Művelet | amelia_before_event_booking_saved |
Az egyes entitások horgai
Szekció neve “Az egyes entitások horgai”Készült: