Hookok és filterek
Az LW bővítmények WordPress hookokat és filtereket biztosítanak harmadik féltől származó integrációkhoz és testreszabáshoz.
LW SEO
Filterek
lw_seo_markdown_output
A végső markdown kimenet szűrése bejegyzéshez, oldalhoz vagy kifejezéshez.
| Paraméter | Típus | Leírás |
|---|---|---|
$output | string | A generált markdown szöveg |
$object | WP_Post|WP_Term | A forrásobjektum |
add_filter( 'lw_seo_markdown_output', function ( string $output, $object ): string {
// Egyéni lábléc hozzáadása a markdown kimenethez
return $output . "\n\n---\nPowered by My Site";
}, 10, 2 );lw_seo_markdown_is_supported
Annak szűrése, hogy a markdown végpont támogatott-e az aktuális kéréshez.
| Paraméter | Típus | Leírás |
|---|---|---|
$supported | bool | Támogatott-e a markdown (alapértelmezett: true) |
$wp_query | WP_Query | Az aktuális lekérdezési objektum |
add_filter( 'lw_seo_markdown_is_supported', function ( bool $supported, WP_Query $query ): bool {
// Markdown letiltása egy adott bejegyzéstípushoz
if ( $query->is_singular( 'secret_post_type' ) ) {
return false;
}
return $supported;
}, 10, 2 );lw_seo_markdown_frontmatter
A frontmatter adattömb szűrése a markdown kimenetben való renderelés előtt.
| Paraméter | Típus | Leírás |
|---|---|---|
$data | array | Frontmatter kulcs-érték párok |
$object | WP_Post|WP_Term | A forrásobjektum |
add_filter( 'lw_seo_markdown_frontmatter', function ( array $data, WP_Post $post ): array {
$data['custom_field'] = get_post_meta( $post->ID, 'my_field', true );
return $data;
}, 10, 2 );lw_seo_markdown_body
A markdown törzstartalom szűrése (HTML-ből markdownná konvertálás után).
| Paraméter | Típus | Leírás |
|---|---|---|
$body | string | A markdown törzstartalom |
$object | WP_Post|WP_Term | A forrásobjektum |
add_filter( 'lw_seo_markdown_body', function ( string $body, WP_Post $post ): string {
// Jogi nyilatkozat hozzáadása minden markdown tartalomhoz
return $body . "\n\n> This content is copyrighted.";
}, 10, 2 );lw_seo_content_signals
A feloldott content signals (ai-train, ai-input, search) szűrése bejegyzéshez vagy globális kontextushoz.
| Paraméter | Típus | Leírás |
|---|---|---|
$signals | array | Content signal értékek |
$object | WP_Post|null | A bejegyzés objektum (null globális esetén) |
add_filter( 'lw_seo_content_signals', function ( array $signals, ?WP_Post $post ): array {
// AI training signal felülírása adott kategóriánál
if ( $post && has_category( 'private', $post ) ) {
$signals['ai-train'] = 'disallow';
}
return $signals;
}, 10, 2 );lw_seo_meta_box_post_types
Annak szűrése, mely bejegyzéstípusoknál jelenjen meg a SEO meta box.
| Paraméter | Típus | Leírás |
|---|---|---|
$post_types | array | Bejegyzéstípus slugok tömbje |
add_filter( 'lw_seo_meta_box_post_types', function ( array $types ): array {
// Meta box eltávolítása egyéni bejegyzéstípusból
return array_diff( $types, [ 'my_custom_type' ] );
} );LW Cookie
Filterek
lw_cookie_consent_categories
Az aktuális felhasználó hozzájárulási kategóriáinak és állapotuknak lekérése.
| Paraméter | Típus | Leírás |
|---|---|---|
$default | array | Alapértelmezett érték (adj át üres tömböt) |
Visszatérési érték: array<string, bool> - Kategórianevek leképezve a hozzájárulási állapotra.
$categories = apply_filters( 'lw_cookie_consent_categories', [] );
if ( ! empty( $categories['marketing'] ) ) {
// A felhasználó hozzájárult a marketinghez - nyomkövető scriptek betöltése
}lw_cookie_has_consent
Annak ellenőrzése, hogy a felhasználó adott-e bármilyen cookie hozzájárulást.
| Paraméter | Típus | Leírás |
|---|---|---|
$default | bool | Alapértelmezett érték (adj át false-t) |
$has_consent = apply_filters( 'lw_cookie_has_consent', false );
if ( $has_consent ) {
// A felhasználó interakcióba lépett a cookie bannerrel
}lw_cookie_is_category_allowed
Annak ellenőrzése, hogy egy adott cookie kategória engedélyezett-e.
| Paraméter | Típus | Leírás |
|---|---|---|
$default | bool | Alapértelmezett érték (adj át false-t) |
$category | string | Ellenőrizendő kategória: necessary, functional, analytics, marketing |
$analytics_allowed = apply_filters( 'lw_cookie_is_category_allowed', false, 'analytics' );
if ( $analytics_allowed ) {
// Analitika scriptek betöltése
}lw_cookie_consent_id
Az aktuális consent ID (a hozzájárulási rekord egyedi azonosítója) lekérése.
| Paraméter | Típus | Leírás |
|---|---|---|
$default | string|null | Alapértelmezett érték (adj át null-t) |
$consent_id = apply_filters( 'lw_cookie_consent_id', null );lw_cookie_should_block_script
Annak felülírása, hogy egy adott scriptet blokkolni kell-e hozzájárulás előtt.
| Paraméter | Típus | Leírás |
|---|---|---|
$should_block | bool | Blokkolni kell-e a scriptet |
$handle | string | Script handle |
$src | string | Script forrás URL |
$category | string | Észlelt kategória |
add_filter( 'lw_cookie_should_block_script', function ( $should_block, $handle, $src, $category ) {
// Ne blokkold a saját bővítményem pixelét - magam kezelem a hozzájárulást
if ( $handle === 'my-plugin-pixel' ) {
return false;
}
return $should_block;
}, 10, 4 );LW LMS
Filterek
lw_lms_has_course_access
Annak szűrése, hogy egy felhasználónak van-e hozzáférése egy kurzushoz.
| Paraméter | Típus | Leírás |
|---|---|---|
$has_access | bool | Van-e hozzáférése a felhasználónak |
$course_id | int | Kurzus ID |
$user_id | int | Felhasználó ID |
add_filter( 'lw_lms_has_course_access', function ( bool $has_access, int $course_id, int $user_id ): bool {
// Hozzáférés biztosítása minden kurzushoz adminoknak
if ( user_can( $user_id, 'manage_options' ) ) {
return true;
}
return $has_access;
}, 10, 3 );lw_lms_has_lesson_access
Annak szűrése, hogy egy felhasználónak van-e hozzáférése egy adott leckéhez.
| Paraméter | Típus | Leírás |
|---|---|---|
$has_access | bool | Van-e hozzáférése a felhasználónak |
$lesson_id | int | Lecke ID |
$user_id | int | Felhasználó ID |
add_filter( 'lw_lms_has_lesson_access', function ( bool $has_access, int $lesson_id, int $user_id ): bool {
// Egyéni hozzáférési logika
return $has_access;
}, 10, 3 );Akciók
lw_lms_lesson_completed
Akkor fut le, amikor egy felhasználó befejezettként jelöl egy leckét.
| Paraméter | Típus | Leírás |
|---|---|---|
$lesson_id | int | Lecke ID |
$user_id | int | Felhasználó ID |
add_action( 'lw_lms_lesson_completed', function ( int $lesson_id, int $user_id ): void {
// Értesítés küldése vagy pontok odaítélése
}, 10, 2 );lw_lms_course_completed
Akkor fut le, amikor egy felhasználó befejezi egy kurzus összes leckéjét.
| Paraméter | Típus | Leírás |
|---|---|---|
$course_id | int | Kurzus ID |
$user_id | int | Felhasználó ID |
add_action( 'lw_lms_course_completed', function ( int $course_id, int $user_id ): void {
// Tanúsítvány kiállítása vagy eredmény megadása
}, 10, 2 );lw_lms_attachment_downloaded
Akkor fut le, amikor egy felhasználó letölt egy védett kurzus/lecke csatolmányt.
| Paraméter | Típus | Leírás |
|---|---|---|
$attachment_id | int | Csatolmány ID |
$user_id | int | Felhasználó ID |
add_action( 'lw_lms_attachment_downloaded', function ( int $attachment_id, int $user_id ): void {
// Letöltési aktivitás naplózása
}, 10, 2 );LW Memberships
Filterek
lw_mship_supported_post_types
Annak szűrése, mely bejegyzéstípusok támogatják a tartalomkorlátozást.
| Paraméter | Típus | Leírás |
|---|---|---|
$types | array | Bejegyzéstípus slugok tömbje |
add_filter( 'lw_mship_supported_post_types', function ( array $types ): array {
$types[] = 'my_custom_type';
return $types;
} );lw_mship_my_account_template
A WooCommerce Fiókom tagságok fül sablonjának szűrése.
| Paraméter | Típus | Leírás |
|---|---|---|
$template | string | Sablon HTML tartalom |
lw_mship_member_discount
A kiszámított tagkedvezmény összegének szűrése.
| Paraméter | Típus | Leírás |
|---|---|---|
$discount | float | Kedvezmény összege |
$product | WC_Product | WooCommerce termék |
$user_id | int | Felhasználó ID |
Akciók
lw_mship_membership_granted
Akkor fut le, amikor tagságot adnak egy felhasználónak.
| Paraméter | Típus | Leírás |
|---|---|---|
$membership_id | int | Tagság rekord ID |
$user_id | int | Felhasználó ID |
$plan_id | int | Terv ID |
add_action( 'lw_mship_membership_granted', function ( int $membership_id, int $user_id, int $plan_id ): void {
// Üdvözlő email küldése vagy onboarding indítása
}, 10, 3 );lw_mship_membership_revoked
Akkor fut le, amikor egy tagság visszavonásra/törlésre kerül.
| Paraméter | Típus | Leírás |
|---|---|---|
$membership_id | int | Tagság rekord ID |
$user_id | int | Felhasználó ID |
$plan_id | int | Terv ID |
add_action( 'lw_mship_membership_revoked', function ( int $membership_id, int $user_id, int $plan_id ): void {
// Felhasználói hozzáférés megszüntetése vagy értesítés küldése
}, 10, 3 );lw_mship_membership_expired
Akkor fut le, amikor egy tagság lejár (cron ellenőrzéssel).
| Paraméter | Típus | Leírás |
|---|---|---|
$membership_id | int | Tagság rekord ID |
$user_id | int | Felhasználó ID |
$plan_id | int | Terv ID |
add_action( 'lw_mship_membership_expired', function ( int $membership_id, int $user_id, int $plan_id ): void {
// Megújítási emlékeztető küldése vagy hozzáférés csökkentése
}, 10, 3 );lw_mship_check_ending_soon
A cron során fut le a hamarosan lejáró tagságok ellenőrzéséhez (belsőleg email értesítésekhez használatos).
Közös hook
lw_plugins_overview_cards
Akció hook, amely az LW Plugins áttekintő admin oldalon fut le. Belsőleg minden bővítmény ezt használja a kártyájának rendereléséhez. Harmadik féltől származó bővítmények is használhatják egyéni kártyák hozzáadásához az LW Plugins vezérlőpulthoz.
add_action( 'lw_plugins_overview_cards', function (): void {
echo '<div class="lw-plugin-card">My Custom Card</div>';
} );