Tovább a tartalomhoz

Függvények: elavult tag-lekérdezések

Az rcp_get_expiration_date(), rcp_get_member_cancel_url(), rcp_get_member_count(), rcp_get_members() és rcp_get_members_of_subscription() függvények és új megfelelőik.

Egyedi kódhoz tartozó függvények, ezért a bevezetésükhöz érdemes fejlesztő segítségét kérni. A 3.0-s verzió óta a legtöbbjük elavult, mert a bővítmény ügyfelekben és tagságokban gondolkodik, nem felhasználókban.

A felhasználó lejárati (vagy megújítási) dátumát adja vissza formázott szövegként, a WordPress Beállítások → Általános oldalán megadott dátumformátummal. A 3.0-s verziótól elavult, új kódban a tagság RCP_Membership::get_expiration_date() metódusát használd.

  • $user_id (egész, elhagyható): a felhasználó azonosítója. Ha kimarad vagy 0, a bejelentkezett felhasználót használja.

Visszatérési érték (szöveg): none, ha a tagság sosem jár le, különben a formázott dátum.

A felhasználó elsődleges tagságához (az ügyfél egyetlen tagságához) ad lemondási URL-t, ugyanazokkal a lekérdezési argumentumokkal, mint az rcp_get_membership_cancel_url(). A 3.0-tól elavult: ha több tagság engedélyezett, használd az rcp_get_membership_cancel_url( $membership_id ) függvényt.

  • $user_id (egész): a felhasználó azonosítója. Alapérték: 0 (a bejelentkezett felhasználó).

Visszatérési érték (szöveg): a lemondási URL, vagy üres szöveg, ha nincs ismétlődő tagság.

$url = rcp_get_member_cancel_url();
if ( $url ) {
echo '<a href="' . esc_url( $url ) . '">' . esc_html__( 'Előfizetés lemondása', 'rcp' ) . '</a>';
}

Az új megoldás:

$customer = rcp_get_customer_by_user_id( $user_id );
$membership = $customer ? rcp_get_customer_single_membership( $customer->get_id() ) : false;
$url = $membership ? rcp_get_membership_cancel_url( $membership->get_id() ) : '';

Az egész oldalra érvényes összeget adja egy tagsági állapothoz: összeadja az rcp_get_subscription_member_count() értékét az összes tagsági szintre (legfeljebb 999 szintig). Szűrt számokhoz (egy szint, keresés, ismétlődő tagság) az rcp_count_members() vagy az rcp_count_memberships() való.

  • $status (szöveg): az állapot, amelyet minden szintnél megszámol. Alapérték: active.

Visszatérési érték (egész): az összes szint összege, 0, ha nincs szint.

$active_members = rcp_get_member_count( 'active' );
$expired_members = rcp_get_member_count( 'expired' );
$free_members = rcp_get_member_count( 'free' );

Azokat a WordPress-felhasználókat kérdezi le, akiknek a szűrőkre illeszkedő RCP tagságuk van, és WP_User objektumokat ad vissza. A 3.0-tól elavult, tag- és ügyféladatokhoz az rcp_get_memberships() vagy az rcp_get_customers() a javasolt.

Csak az engedélyezett tagságokat (disabled = 0) veszi figyelembe. Az active állapot nem tartalmazza az ingyenes tagságokat (fizetős összeg kell hozzá), a free állapot azokat az aktív tagságokat jelenti, amelyeknél a kezdeti és az ismétlődő összeg is nulla.

Paraméter Jelentés
$status A tagság állapota. Alapérték: active. Üres szöveggel nincs állapotszűrés.
$subscription A tagsági szint azonosítója (object_id). Alapérték: null (minden szint).
$offset Lapozás eltolása. Alapérték: 0.
$number Legfeljebb ennyi felhasználó. Alapérték: 999999.
$order ASC vagy DESC a felhasználóazonosító szerint. Alapérték: DESC.
$recurring Ha megadod: 1 a nem ismétlődő (auto_renew = 0), bármely más igaz érték az ismétlődő (auto_renew = 1) tagságokat adja.
$search Keresőszó: sima szöveg (belépési név, e-mail), vagy a first_name:, last_name:, payment_profile: előtaggal.

Visszatérési érték: WP_User objektumok tömbje, vagy false, ha nincs találat.

$users = rcp_get_members( 'active', 2, 0, 50 );
if ( is_array( $users ) ) {
foreach ( $users as $user ) {
// Fizetős, aktív tag a 2-es szinten.
}
}

Az új megoldás:

$memberships = rcp_get_memberships(
array(
'object_id' => 2,
'status' => 'active',
'number' => 50,
)
);

Egy tagsági szint felhasználóit adja vissza: az rcp_get_members() függvényt hívja üres állapottal (nincs állapotszűrés) és a szint azonosítójával. A 3.0-tól elavult, helyette az rcp_get_memberships() való az object_id argumentummal.

  • $id (egész): a tagsági szint azonosítója. Alapérték: 1.
  • $fields (szöveg vagy tömb): nem használt, csak a régi szignatúra miatt van meg. Alapérték: 'ID'.

Visszatérési érték: ugyanaz, mint az rcp_get_members( '', $id ) függvényé.

$users = rcp_get_members_of_subscription( 3 );
$memberships = rcp_get_memberships( array( 'object_id' => 3 ) );

A 3.0-tól elavult. A felhasználó tagsági állapotát adja vissza szövegként a régi RCP_Member objektumon át. Ha a felhasználó tagsága lejárt, az állapotát expired-re is állíthatja. Új kódban egy konkrét RCP_Membership rekord get_status() metódusát használd.

  • $user_id (egész): a felhasználó azonosítója. Alapérték: 0 (a bejelentkezett felhasználó).

Visszatérési érték (szöveg): az állapot, például active, expired, cancelled vagy pending.

$status = rcp_get_status( get_current_user_id() );

Az új megoldás:

$membership = rcp_get_membership( 123 );
if ( $membership ) {
$status = $membership->get_status();
}

A 3.0-tól elavult. A felhasználó elsődleges tagságához tartozó tagsági szint nevét adja vissza (nem a tagság azonosítóját). Helyette az rcp_get_customer_membership_level_names() ajánlott. Szűrő: rcp_member_get_subscription_name.

  • $user_id (egész): a felhasználó azonosítója. Alapérték: 0 (a bejelentkezett felhasználó).

Visszatérési érték (szöveg): a szint neve, üres szöveg, ha nincs szint.

$name = rcp_get_subscription( get_current_user_id() );
if ( $name ) {
echo esc_html( $name );
}

Kapcsolódó rövidkód: subscription_name.

A 3.4-től elavult. A neve megtévesztő: nem felhasználói előfizetést, hanem egy tagsági szintet tölt be az azonosítója alapján. Elavulási figyelmeztetést vált ki, és az rcp_get_membership_level( $id ) függvényt hívja.

  • $id (egész): a tagsági szint azonosítója.

Visszatérési érték: a tagsági szint objektuma, vagy false hiba esetén (ugyanúgy, mint az rcp_get_membership_level()).

$level = rcp_get_membership_level( 2 );
if ( $level ) {
$price = $level->get_price();
}
// Régi hívás, hibakereső módban elavulási figyelmeztetést ad:
$level = rcp_get_subscription_details( 2 );

Ne keverd össze az rcp_get_subscription() függvénnyel (a felhasználó szintjének neve) és az rcp_get_membership() függvénnyel (a felhasználó egy tagságrekordja).

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