Tovább a tartalomhoz

Osztályok: RCP_Payments, RCP_Levels és RCP_Emails

A fizetési tábla, az elavult tagsági szint osztály és az e-mail küldő osztály metódusai, argumentumai és szűrői.

Az osztály a fizetéstáblával dolgozik.

Az insert( $payment_data ) metódus argumentumai:

Argumentum Típus Jelentése
subscription szöveg A hozzá tartozó tagsági szint neve.
object_id egész A megvásárolt elem azonosítója (például a szint azonosítója).
object_type szöveg Az object_id típusa, alapból subscription.
date szöveg A fizetés ideje MySQL-formátumban. Kihagyva a pillanatnyi idő.
amount szám A fizetett összeg.
user_id egész A fizető felhasználó azonosítója.
payment_type szöveg A fizetés típusának leírása, például „Credit Card One Time”.
subscription_key szöveg A hozzá tartozó előfizetési kulcs.
transaction_id szöveg Az átjáró tranzakcióazonosítója.
status szöveg complete, pending, failed vagy refunded.
gateway szöveg A használt átjáró azonosítója.
subtotal szám Az alapár a jóváírások, díjak és kedvezmények előtt.
credits szám A beszámított jóváírás.
fees szám A beszámított beiratkozási díjak.
discount_amount szám A levont kedvezmény.
discount_code szöveg Az alkalmazott kedvezménykód.
$payments = new RCP_Payments();
$payments->insert( array(
'subscription' => 'Silver',
'object_id' => 3,
'object_type' => 'subscription',
'amount' => 15.50,
'user_id' => 3,
'payment_type' => 'Credit Card One Time',
'transaction_id' => '123456789',
'status' => 'complete',
'gateway' => 'stripe',
'subtotal' => 20.00,
'credits' => 4.50
) );
Metódus Mit csinál
update( $id, $adatok ) Módosít egy fizetést, az argumentumai az insert() argumentumai.
get_payment( $id ) Egy fizetést ad adatbázissorként.
get_payment_by( $mezo, $ertek ) Tetszőleges oszlop szerint keres, például tranzakcióazonosító alapján.
get_payments( $args ) Fizetések tömbjét adja az argumentumok szerint.
delete( $id ) Törli a fizetést.
get_earnings( $args ) Kiszámítja a fizetések összbevételét. Szűrhető subscription, user_id és date szerint.
get_meta( $id, $kulcs, $egy ) Fizetésmeta értéket ad.
add_meta( $id, $kulcs, $ertek, $egyedi ) Metaadatot ad a fizetéshez.
update_meta( $id, $kulcs, $ertek, $elozo ) Frissíti a metaadatot, ha nincs, létrehozza.
delete_meta( $id, $kulcs, $ertek ) Törli a megfelelő metaadatot.

A get_payments() argumentumai:

Argumentum Jelentése
number Legfeljebb ennyi találat (alapból 20).
offset Ennyi találat kihagyása (alapból 0).
subscription A tagsági szint neve.
user_id A felhasználó azonosítója.
date Nap, hónap és év értékek tömbje.
fields A visszaadott oszlop(ok), kihagyva mind.
status Szűrés állapotra.
s Keresés az e-mail-címben, az előfizetési kulcsban, a szint nevében vagy a tranzakcióazonosítóban.
order DESC vagy ASC.
orderby A rendezés oszlopa.
$payments = new RCP_Payments();
$payment_results = $payments->get_payments( array( 'number' => 5, 'user_id' => get_current_user_id() ) );
$july_earnings = $payments->get_earnings( array( 'date' => array( 'day' => 01, 'month' => 07, 'year' => 2016 ) ) );

Az osztály a tagsági szintek táblájával dolgozik, elavult. Használható a $rcp_levels_db globális változóval vagy új példánnyal.

Metódus Mit csinál
get_level( $id ) Egy szintet ad az azonosítója alapján.
get_level_by( $mezo, $ertek ) Mező szerint keres, például névre.
get_levels( $args ) Szintek tömbjét adja, vagy hamisat, ha nincs.
get_level_field( $id, $mezo ) Egy mező értékét adja.
has_trial( $id ) Van-e a szinten próbaidőszak.
trial_duration( $id ) A próbaidőszak hossza.
trial_duration_unit( $id ) A próbaidőszak egysége.

A szint objektuma ilyen mezőket tartalmaz: id, name, description, duration, duration_unit, price, fee, list_order, level (hozzáférési szint), status, role, trial_duration, trial_duration_unit.

A get_levels() argumentumai: status (active, inactive vagy all, alapból all), limit (alapból nincs korlát), orderby (alapból list_order).

$levels_db = new RCP_Levels();
$levels = $levels_db->get_levels( array( 'status' => 'active' ) );
if ( ! empty( $levels ) ) {
foreach ( $levels as $level ) {
echo $level->name;
}
}

Szint mentése, módosítása, törlése

Szekció neve “Szint mentése, módosítása, törlése”

Az insert( $args ) új szintet ment, az update( $id, $args ) ugyanazokkal az argumentumokkal módosít, a remove( $id ) töröl.

Argumentum Típus Jelentése
name szöveg A szint neve.
description szöveg Leírás.
duration egész vagy unlimited Az időtartam.
duration_unit szöveg day, month vagy year.
trial_duration egész A próba hossza, 0 = nincs.
trial_duration_unit szöveg day, month vagy year.
price szám A szint ára.
fee szám Beiratkozási díj, 0 = nincs.
list_order egész A listában elfoglalt hely (kisebb = előrébb).
level egész A megadott hozzáférési szint.
status szöveg active vagy inactive.
role szöveg A megadott felhasználói szerepkör.

A szinteknek is van metatáblájuk, mint a bejegyzéseknek:

Metódus Mit csinál
get_meta( $id, $kulcs, $egy ) Meta értéket ad.
add_meta( $id, $kulcs, $ertek, $egyedi ) Metaadatot ad a szinthez.
update_meta( $id, $kulcs, $ertek, $elozo ) Frissít, vagy létrehoz.
delete_meta( $id, $kulcs, $ertek ) Törli a megfelelő metaadatot.
remove_all_meta_for_level_id( $id ) A szint összes metaadatát törli.

Az osztály a tagoknak és az adminisztrátoroknak szóló levelek összeállítását és küldését végzi. A bővítmények is használhatják, hogy az RCP e-mailsablonjával küldjenek levelet.

  1. Hozz létre egy RCP_Emails példányt.
  2. Állítsd be a member_id értékét. Ez akkor fontos, ha tagsági adatokat mutató sablon címkéket használsz.
  3. Ha kell, állítsd be a payment_id értékét.
  4. Hívd a send() metódust.
$emails = new RCP_Emails();
$emails->member_id = 3;
$emails->payment_id = 5;
$subject = 'Üdv';
$message = 'Az üzeneted.';
$emails->send( $to, $subject, $message );

Mellékletet a negyedik paraméterben adhatsz át, fájlútvonalként (szöveg vagy tömb): $emails->send( $to, $subject, $message, $attachments );

Metódus Mit csinál
__set( $kulcs, $ertek ) Beállít egy tulajdonságot.
get_from_name() A feladó nevét adja.
get_from_address() A feladó címét adja.
get_content_type() A tartalomtípust adja: text/html vagy text/plain.
get_headers() A levélfejléceket adja.
get_templates() Az elérhető e-mailsablonok tömbjét adja.
get_template() A kiválasztott sablon azonosítóját adja.
get_heading() A levél fejlécszövegét adja (az e-mail beállításokban megadott).
build_email( $uzenet ) HTML-lé alakítja az üzenetet, és beleteszi a sablonba.
send( $to, $subject, $message, $attachments ) Elküldi a levelet.
send_before() A küldés előtt hozzáadja a szűrőket és akciókat.
send_after() A küldés után eltávolítja őket.
text_to_html( $uzenet ) Formázott HTML-lé alakítja a szöveget, a sortöréseket <br> és <p> elemekké.
get_tags() A regisztrált e-mail címkék tömbje (név, leírás, függvény).
email_tag_exists( $cimke ) Igaz, ha a címke regisztrált.
Szűrő Mit módosíthatsz vele
rcp_emails_from_name A feladó nevét.
rcp_emails_from_address A feladó címét.
rcp_email_default_content_type Az alapértelmezett tartalomtípust (text/html).
rcp_email_content_type A levélhez kiválasztott tartalomtípust.
rcp_email_headers A levélfejléceket.
rcp_email_templates Új sablonválasztékot adhatsz a tömbhöz.
rcp_email_template A kiválasztott sablont.
rcp_email_heading A levél fejlécszövegét.
rcp_email_message A levél üzenetét.
rcp_email_attachments A mellékleteket küldés előtt.
rcp_email_template_tags Új sablon címkét adhatsz hozzá.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások