{"id":1297,"date":"2021-04-03T13:35:00","date_gmt":"2021-04-03T12:35:00","guid":{"rendered":"https:\/\/weart.hu\/?p=1297"},"modified":"2024-03-14T17:39:51","modified_gmt":"2024-03-14T16:39:51","slug":"hogyan-lehet-dinamikusan-elkerni-a-woocommerce-oldal-urlt","status":"publish","type":"post","link":"https:\/\/weart.hu\/posts\/hogyan-lehet-dinamikusan-elkerni-a-woocommerce-oldal-urlt\/","title":{"rendered":"Hogyan lehet dinamikusan elk\u00e9rni a WooCommerce oldal URL-eket?"},"content":{"rendered":"\n

A egy webshop fejleszt\u00e9se sor\u00e1n sz\u00e1m\u00edtani kell kell arra, hogy a WooCommerce oldal URL-ek megv\u00e1ltozhatnak. Ezeket pedig le kell kezelni, lehet\u0151leg automatikusan, ilyenkor j\u00f6n j\u00f3l, ha el tudjuk k\u00e9rni a rendszert\u0151l p\u00e9ld\u00e1ul a Kos\u00e1r, vagy Fizet\u00e9si oldal c\u00edme.<\/p>\n\n\n\n

Tegy\u00fck fel, hogy fejleszt\u00fck egy webshopot, \u00e9s (teljesen \u00e9rthet\u0151 m\u00f3don) a saj\u00e1t sz\u00e1m\u00edt\u00f3g\u00e9p\u00fcnk\u00f6n a lok\u00e1lis fejleszt\u0151i k\u00f6rnyezetben nem t\u00f6r\u0151d\u00fcnk a rendszer t\u0171pontos be\u00e1ll\u00edt\u00e1s\u00e1val. Ez esetben hagyjuk automatikusan az alap\u00e9rtelmezett oldal neveket, de amikor felt\u00f6ltj\u00fck a k\u00e9sz websablont az \u00fcgyf\u00e9l t\u00e1rhely\u00e9re, akkor egyszer\u0171en nem m\u0171k\u00f6dik n\u00e9h\u00e1ny link. <\/p>\n\n\n\n

A hiba leggyakoribb oka, hogy „be\u00e9gett\u00fck” az URL-eket <\/strong>a weboldal bizonyos r\u00e9szeibe \u00e9s nem dinamikusan k\u00e9rt\u00fck el a rendszert\u0151l, hogy mi a Shop oldal URL-je.<\/p>\n\n\n\n

Hogyan k\u00e9rd el a Kos\u00e1r (Cart) oldal URL-\u00e9t?<\/h2>\n\n\n\n

Haszn\u00e1ld az wc_get_cart_url()<\/code> PHP f\u00fcggv\u00e9nnyel k\u00f6nnyed\u00e9n megkaphatod. Haszn\u00e1lata nagyon egyszer\u0171:<\/p>\n\n\n\n

<a href=\"<?php echo wc_get_cart_url() ?>\">Kos\u00e1r oldal<\/a><\/code><\/pre>\n\n\n\n

A function-nek nincs sz\u00fcks\u00e9ge semilyen param\u00e9terre \u00e9s egyenl\u0151 azzal, mintha le\u00edrtad volna, hogy wc_get_page_permalink('cart')<\/code>, azzal a k\u00fcl\u00f6nbs\u00e9ggel, hogy az lek\u00e9rdez\u00e9sbe be\u00e9getted a cart oldal slug-j\u00e1t.<\/p>\n\n\n\n

F\u00fcggv\u00e9nyek a tov\u00e1bbi WooCommerce oldal URL-ek elk\u00e9r\u00e9s\u00e9hez<\/h3>\n\n\n\n

A fentiek alapj\u00e1n m\u00e9g lehet\u0151s\u00e9g van a t\u00f6bbi alap WooCommerce v\u00e9gponti URL elk\u00e9r\u00e9s\u00e9re is:<\/p>\n\n\n\n

A Fizet\u00e9s oldal (Checkout)<\/h4>\n\n\n\n
wc_get_checkout_url();<\/code><\/pre>\n\n\n\n

Enn\u00e9l a r\u00e9szn\u00e9l mindenk\u00e9pp meg kell eml\u00edteni, hogy vannak virtu\u00e1lis v\u00e9gpontok is. Olyan oldalalak, amik nem l\u00e9teznek \u00f6nmagukban, nem is lehet \u0151ket szerkeszteni, de amikor sz\u00fcks\u00e9g van r\u00e1juk megh\u00edv\u00f3dnak. <\/p>\n\n\n\n

\"Fizet\u00e9si<\/figure>\n\n\n\n

Ezeknek az oldalaknak is lehet szerkeszteni az el\u00e9r\u00e9s\u00e9t, a WooCommerce > Be\u00e1ll\u00edt\u00e1sok > Halad\u00f3 r\u00e9szen, ez\u00e9rt el lehet k\u00e9rni ezeket a WooCommerce URL-eket is dinamikusan. <\/p>\n\n\n\n

Ilyenkor az alap nev\u00e9t kell megadni az oldalnak (teh\u00e1t azt ami nem volt m\u00f3dos\u00edtva), a t\u00f6bbit a WooCommerce int\u00e9zi helyett\u00fcnk. Itt egy p\u00e9lda, ahol a sikeres fizet\u00e9s ut\u00e1ni \u00f6sszegz\u0151oldal url-\u00e9t kaphatjuk meg.<\/p>\n\n\n\n

wc_get_endpoint_url( 'order-recived', '', wc_get_checkout_url() );<\/code><\/pre>\n\n\n\n

A Fi\u00f3kom (My Account) oldal<\/h4>\n\n\n\n

A regisztr\u00e1lt felhaszn\u00e1l\u00f3k saj\u00e1t profilj\u00e1nak oldala, ahol m\u00f3dos\u00edthatja az adatait. Ehhez sajnos nincs dedik\u00e1lt f\u00fcggv\u00e9ny, de van egy nem bonyolult megold\u00e1s, f\u0151leg, ha az el\u0151z\u0151 v\u00e9gpontos p\u00e9ld\u00e1t \u00e9rtetted. A wc_get_page_permalink();<\/code> f\u00fcggv\u00e9nyt fogjuk haszn\u00e1lni. <\/p>\n\n\n\n

wc_get_page_permalink( 'myaccount' );<\/code><\/pre>\n\n\n\n

A fi\u00f3kom r\u00e9szn\u00e9l is vannak virtu\u00e1lis v\u00e9gpontok, amiket el lehet k\u00e9rni. <\/p>\n\n\n\n

\"Felhaszn\u00e1l\u00f3<\/figure>\n\n\n\n

Ezeket a v\u00e9gpontokat is a WooCommerce > Be\u00e1ll\u00edt\u00e1sok > Halad\u00f3 oldalon tal\u00e1ljuk, csak kicsit lejjebb. A k\u00f3d az lk\u00e9r\u00e9s\u00fckh\u00f6z pedig:<\/p>\n\n\n\n

wc_get_account_endpoint_url( 'orders' );<\/code><\/pre>\n\n\n\n

Az \u00dczlet (Shop) oldal<\/h4>\n\n\n\n

Az egyik, \u00e9s tal\u00e1n a legfontosabb lek\u00e9rdez\u00e9s az alapvet\u0151 term\u00e9klist\u00e1z\u00f3 oldal, azaz a Shop page. Ezt is az el\u0151z\u0151 fi\u00f3kom oldalas p\u00e9ld\u00e1hoz hasonl\u00f3an nincs saj\u00e1t dedik\u00e1lt f\u00fcggv\u00e9nye, hanem a k\u00f6zponti f\u00fcggv\u00e9nnyel kell haszn\u00e1lni.<\/p>\n\n\n\n

wc_get_page_permalink( 'shop' );<\/code><\/pre>\n\n\n\n

\u00d6sszegezve<\/h2>\n\n\n\n

Nem \u00e9rdemes hardcode-oldni a azaz be\u00e9getni az oldalak neveit, mert ezzel az esetek t\u00f6bbs\u00e9g\u00e9ben magunknak fogunk pluszmunk\u00e1t csin\u00e1lni a v\u00e9g\u00e9n. \u00c9rdemes m\u00e1r a fejleszt\u00e9s sor\u00e1n a felhaszn\u00e1l\u00f3 fej\u00e9vel gondolkodni \u00e9s kiv\u00e9deni a lehets\u00e9ges hib\u00e1kat, f\u0151leg ha azt ilyen egyszer\u0171en meg lehet tenni.<\/p>\n","protected":false},"excerpt":{"rendered":"

A egy webshop fejleszt\u00e9se sor\u00e1n sz\u00e1m\u00edtani kell kell arra, hogy a WooCommerce oldal URL-ek megv\u00e1ltozhatnak. Ezeket pedig le kell tuni kezelni.<\/p>\n","protected":false},"author":2,"featured_media":1416,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","inline_featured_image":false,"footnotes":""},"categories":[3,35],"tags":[41],"acf":[],"_links":{"self":[{"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/posts\/1297"}],"collection":[{"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/comments?post=1297"}],"version-history":[{"count":4,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/posts\/1297\/revisions"}],"predecessor-version":[{"id":1420,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/posts\/1297\/revisions\/1420"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/media\/1416"}],"wp:attachment":[{"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/media?parent=1297"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/categories?post=1297"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/weart.hu\/wp-json\/wp\/v2\/tags?post=1297"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}