Programozás2021. április 3.2 perc olvasás

Hogyan lehet dinamikusan elkérni a WooCommerce oldal URL-eket?

A egy webshop fejlesztése során számítani kell kell arra, hogy a WooCommerce oldal URL-ek megváltozhatnak. Ezeket pedig le kell tuni kezelni.

Hogyan lehet dinamikusan elkérni a WooCommerce oldal URL-eket?

A egy webshop fejlesztése során számítani kell kell arra, hogy a WooCommerce oldal URL-ek megváltozhatnak. Ezeket pedig le kell kezelni, lehetőleg automatikusan, ilyenkor jön jól, ha el tudjuk kérni a rendszertől például a Kosár, vagy Fizetési oldal címe.

Tegyük fel, hogy fejlesztük egy webshopot, és (teljesen érthető módon) a saját számítógépünkön a lokális fejlesztői környezetben nem törődünk a rendszer tűpontos beállításával. Ez esetben hagyjuk automatikusan az alapértelmezett oldal neveket, de amikor feltöltjük a kész websablont az ügyfél tárhelyére, akkor egyszerűen nem működik néhány link.

A hiba leggyakoribb oka, hogy „beégettük” az URL-eket a weboldal bizonyos részeibe és nem dinamikusan kértük el a rendszertől, hogy mi a Shop oldal URL-je.

01 / Hogyan kérd el a Kosár (Cart) oldal URL-ét?Hogyan kérd el a Kosár (Cart) oldal URL-ét?

Használd az wc_get_cart_url() PHP függvénnyel könnyedén megkaphatod. Használata nagyon egyszerű:

<a href="<?php echo wc_get_cart_url() ?>">Kosár oldal</a>

A function-nek nincs szüksége semilyen paraméterre és egyenlő azzal, mintha leírtad volna, hogy wc_get_page_permalink('cart'), azzal a különbséggel, hogy az lekérdezésbe beégetted a cart oldal slug-ját.

Függvények a további WooCommerce oldal URL-ek elkéréséhez

A fentiek alapján még lehetőség van a többi alap WooCommerce végponti URL elkérésére is:

A Fizetés oldal (Checkout)

wc_get_checkout_url();

Ennél a résznél mindenképp meg kell említeni, hogy vannak virtuális végpontok is. Olyan oldalalak, amik nem léteznek önmagukban, nem is lehet őket szerkeszteni, de amikor szükség van rájuk meghívódnak.

Fizetési ( Checkout) WooCommerce oldal URL végpontok

Ezeknek az oldalaknak is lehet szerkeszteni az elérését, a WooCommerce > Beállítások > Haladó részen, ezért el lehet kérni ezeket a WooCommerce URL-eket is dinamikusan.

Ilyenkor az alap nevét kell megadni az oldalnak (tehát azt ami nem volt módosítva), a többit a WooCommerce intézi helyettünk. Itt egy példa, ahol a sikeres fizetés utáni összegzőoldal url-ét kaphatjuk meg.

wc_get_endpoint_url( 'order-recived', '', wc_get_checkout_url() );

A Fiókom (My Account) oldal

A regisztrált felhasználók saját profiljának oldala, ahol módosíthatja az adatait. Ehhez sajnos nincs dedikált függvény, de van egy nem bonyolult megoldás, főleg, ha az előző végpontos példát értetted. A wc_get_page_permalink(); függvényt fogjuk használni.

wc_get_page_permalink( 'myaccount' );

A fiókom résznél is vannak virtuális végpontok, amiket el lehet kérni.

Felhasználó fiók WooCommerce oldal URL végpontok

Ezeket a végpontokat is a WooCommerce > Beállítások > Haladó oldalon találjuk, csak kicsit lejjebb. A kód az lkérésükhöz pedig:

wc_get_account_endpoint_url( 'orders' );

Az Üzlet (Shop) oldal

Az egyik, és talán a legfontosabb lekérdezés az alapvető terméklistázó oldal, azaz a Shop page. Ezt is az előző fiókom oldalas példához hasonlóan nincs saját dedikált függvénye, hanem a központi függvénnyel kell használni.

wc_get_page_permalink( 'shop' );

02 / ÖsszegezveÖsszegezve

Nem érdemes hardcode-oldni a azaz beégetni az oldalak neveit, mert ezzel az esetek többségében magunknak fogunk pluszmunkát csinálni a végén. Érdemes már a fejlesztés során a felhasználó fejével gondolkodni és kivédeni a lehetséges hibákat, főleg ha azt ilyen egyszerűen meg lehet tenni.

Szeretnéd, hogy mi csináljuk meg helyetted?

Weboldal, webshop, SEO — kkv-knak, magyarul, egy munkanapon belül kapsz árajánlatot.

Kérek árajánlatot
Egyed Balázs
Egyed Balázs

Egy szabadúszó WordPress programozó, fejlesztéseit több mint 50 országan és többszáz weboldalon használják. Az elmúlt 8 évben vállalkozásokkal, kiadókkal, webshopokkal dolgozott együtt, egyedi weboldalakat épített az igényeiknek és céljaiknak megfelelően.