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

írta

Egyed Balázs

kategóriák

Programozás, WooCommerce

beszélgetés

Szólj hozzá!

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.

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' );

Ö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.

Egyed Balázs

Szabadúszó WordPress programozó, fejlesztéseit több mint 50 országan és többszáz weboldalon használják. Az elmúlt 10 évben vállalkozásokkal, kiadókkal, webshopokkal dolgozott együtt, egyedi weboldalakat épített megadott igények és célok szerint.

Készen állsz a weboldald fejlesztésésre?

Egyedi WordPress weboldalakat építek, amik jól néznek ki és könnyen kezelhetőek.

Beszélgessünk

További cikkek ebben a sorozatban

Hogyan készíts Custom Post Type-ot WordPress alatt?

Alapó csak három Post Type-ot kapunk a WordPress-ben, de hála a Custom Post Type-nak hála nagyon egyszerűen hozhatunk létre egyedi tartalomtípusokat.

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.

Szólj hozzá!