{"id":2469,"date":"2015-06-17T06:10:07","date_gmt":"2015-06-17T06:10:07","guid":{"rendered":"http:\/\/musilda.cz\/?p=2469"},"modified":"2015-06-17T06:10:07","modified_gmt":"2015-06-17T06:10:07","slug":"podminovaci-tagy-ve-woocommerce","status":"publish","type":"post","link":"https:\/\/affinite.io\/cs\/podminovaci-tagy-ve-woocommerce\/","title":{"rendered":"Podmi\u0148ovac\u00ed tagy ve WooCommerce"},"content":{"rendered":"
Podmi\u0148ovac\u00ed tagy m\u016f\u017eete zn\u00e1t p\u0159\u00edmo z WordPressu, ale obsahuje je i WooCommerce. Jak je pou\u017e\u00edvat a co vlastn\u011b jsou podmi\u0148ovac\u00ed tagy zjist\u00edte v tomto\u00a0\u010dl\u00e1nku.<\/p>\n
Mezi t\u011bmi, kdo vytv\u00e1\u0159ej\u00ed webov\u00e9 str\u00e1nky, je v\u00fdraz „tag“ spojen sp\u00ed\u0161e s HTML. Ale ve WordPressu se pou\u017e\u00edv\u00e1 v\u00fdraz „podmi\u0148ovac\u00ed tag“ pro ozna\u010den\u00ed funkce zji\u0161\u0165uj\u00edc\u00ed o jakou aktu\u00e1ln\u00ed str\u00e1nku jde .<\/p>\n
Ur\u010dit\u011b jste se ji\u017e setkali se z\u00e1pisem if(is_single()){ … }.<\/p>\n
V podm\u00ednce je uzav\u0159ena funkce is_single(), jen\u017e zji\u0161\u0165uje, zda se nach\u00e1z\u00edte na\u00a0detailu \u010dl\u00e1nku. Tyto funkce v\u017edy vrac\u00ed true, nebo false, tak\u017ee d\u00edky nim m\u016f\u017eete d\u011blit soubory \u0161ablony na logick\u00e9 \u010d\u00e1sti, jen\u017e se budou zobrazovat jen v ur\u010dit\u00fdch p\u0159\u00edpadech. Nap\u0159\u00edklad chcete zobrazit banner pouze na detailu \u010dl\u00e1nku, tak pou\u017eijete pr\u00e1v\u011b is_single.<\/p>\n
Stejn\u011b jako WordPress, m\u00e1 i WooCommerce sv\u00e9 vlastn\u00ed podmi\u0148ovac\u00ed tagy, pomoc\u00ed nich\u017e m\u016f\u017eete zjistit, na jak\u00e9 str\u00e1nce se pr\u00e1v\u011b nach\u00e1z\u00edte. Co\u017e je nap\u0159\u00edklad pr\u00e1v\u011b i eshop opravdu \u010dasto pot\u0159eba.<\/p>\n
is_woocommerce()<\/strong><\/p>\n Ov\u011b\u0159uje, zda se nach\u00e1z\u00edte na str\u00e1nk\u00e1ch WooCommerce, tedy na jak\u00e9koliv str\u00e1nce, jen\u017e souvis\u00ed s eshopem. Nap\u0159\u00edklad na v\u00fdpisu \u010dl\u00e1nk\u016f vr\u00e1t\u00ed false, proto\u017ee \u010dl\u00e1nky s eshopem nesouvis\u00ed.<\/p>\n is_shop()<\/strong><\/p>\n Vr\u00e1t\u00ed true, pokud se nach\u00e1z\u00edte na str\u00e1nce eshopu. Str\u00e1nka eshopu nen\u00ed v\u00fdpis kategorie produktu, ale jde o str\u00e1nku, kter\u00e1 se vytvo\u0159\u00ed p\u0159i instalaci Woocommerce a \u010dasto se pou\u017e\u00edv\u00e1 jako hlavn\u00ed str\u00e1nka eshopu.<\/p>\n is_product_category()<\/strong><\/p>\n Zda je jasn\u00e9 o jakou str\u00e1nku se jedn\u00e1. Je to v\u00fdpis kategorie produktu.<\/p>\n is_product_category(‚slug-kategorie‘)<\/strong><\/p>\n P\u0159edchoz\u00ed pou\u017eit\u00ed vr\u00e1t\u00ed true na ka\u017ed\u00ed str\u00e1nce kategorie produktu. Pokud v\u0161ak ve funkci pou\u017eijete slug (n\u00e1zev kategorie v url), bude se podm\u00ednka vztahovat jen ke konkr\u00e9tn\u00ed kategorii.<\/p>\n is_product_category( array(‚slug-kategorie‘,’slug-kategorie‘))<\/strong><\/p>\n Pokud pot\u0159ebujete omezit \u010d\u00e1st k\u00f3du jen na konkr\u00e9tn\u00ed kategorie, m\u016f\u017eete jich zadat cel\u00e9 pole.<\/p>\n is_product_tag()<\/strong><\/p>\n V p\u0159\u00edpad\u011b v\u00fdpisu produkt\u016f dle tagu, je mo\u017en\u00e9 pou\u017e\u00edt tuto funkci. Dal\u0161\u00ed pou\u017eit\u00ed je stejn\u00e9 jako u kategorie, m\u016f\u017eete tak zadat jednu, nebo v\u00edce kategori\u00ed p\u0159\u00edmo do funkce.<\/p>\n is_product()<\/strong><\/p>\n V p\u0159\u00edpad\u011b, \u017ee se nach\u00e1z\u00edte na str\u00e1nce produktu – jeho detailu, funkce vr\u00e1t\u00ed true.<\/p>\n is_cart()<\/strong><\/p>\n Jak vypl\u00fdv\u00e1 z n\u00e1zvu funkce, zji\u0161\u0165uje se, zda jsme na str\u00e1nce ko\u0161\u00edku.<\/p>\n is_checkout()<\/strong><\/p>\n Obdobn\u011b si dok\u00e1\u017eeme vytvo\u0159it podm\u00ednku jen pro str\u00e1nku pokladny<\/p>\n is_account_page()<\/strong><\/p>\n Na str\u00e1nce z\u00e1kaznick\u00e9ho \u00fa\u010dtu vyu\u017eijeme tuto funkci.<\/p>\n P\u0159esto\u017ee se v\u00e1m m\u016f\u017ee zd\u00e1t, \u017ee z\u00e1kaznick\u00fd \u00fa\u010det m\u00e1 str\u00e1nek v\u00edce, ve skute\u010dnosti tomu tak nen\u00ed. R\u016fzn\u00e9 podstr\u00e1nky jsou generov\u00e1ny pomoc\u00ed takzvan\u00fdch endpoint\u016f. A ty dok\u00e1\u017eeme detekovat pomoc\u00ed n\u00e1sleduj\u00edc\u00edch funkc\u00ed:<\/p>\n is_wc_endpoint_url()<\/strong><\/p>\n Zji\u0161\u0165uje, zda se nach\u00e1z\u00edte na n\u011bkter\u00e9m z endpoint\u016f.<\/p>\n is_wc_endpoint_url( ‚order-pay‘ )<\/strong><\/p>\n Jeliko\u017e je v\u011bt\u0161inou nutn\u00e9 detekovat jednotliv\u00e9 endpointy, umo\u017e\u0148uje funkce pou\u017e\u00edt slug endpointu.<\/p>\n Zde je seznam v\u0161ech endpoint\u016f, je\u017e m\u016f\u017eete pou\u017e\u00edt.<\/p>\n is_ajax()<\/strong><\/p>\n Posledn\u00ed podmi\u0148ovac\u00ed tag se vyu\u017e\u00edv\u00e1 v p\u0159\u00edpad\u011b, kdy\u017e chcete zjistit, zda je str\u00e1nka vytvo\u0159en\u00e1 pomoc\u00ed ajaxu.<\/p>\n Aby jste si byli schopni p\u0159edstavit, co se vlastn\u011b skr\u00fdv\u00e1 za t\u011bmito funkcemi, zde je definice funkce is_checkout:<\/p>\n V podstat\u011b se jedn\u00e1 o vyu\u017eit\u00ed funkce is_page a jej\u00ed vol\u00e1n\u00ed s id str\u00e1nky pokladny.<\/p>\n <\/p>\n","protected":false},"excerpt":{"rendered":" Podmi\u0148ovac\u00ed tagy m\u016f\u017eete zn\u00e1t p\u0159\u00edmo z WordPressu, ale obsahuje je i WooCommerce. Jak je pou\u017e\u00edvat a co vlastn\u011b jsou podmi\u0148ovac\u00ed tagy zjist\u00edte v tomto\u00a0\u010dl\u00e1nku. Mezi t\u011bmi, kdo vytv\u00e1\u0159ej\u00ed webov\u00e9 str\u00e1nky, je v\u00fdraz „tag“ spojen sp\u00ed\u0161e s HTML. Ale ve WordPressu se pou\u017e\u00edv\u00e1 v\u00fdraz „podmi\u0148ovac\u00ed tag“ pro ozna\u010den\u00ed funkce zji\u0161\u0165uj\u00edc\u00ed o jakou aktu\u00e1ln\u00ed str\u00e1nku jde .<\/p>\n","protected":false},"author":1,"featured_media":2470,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25],"tags":[204,205,206,207,425],"class_list":["post-2469","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-woocommerce","tag-is_cart","tag-is_checkout","tag-is_product","tag-is_shop","tag-woocommerce"],"_links":{"self":[{"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/posts\/2469"}],"collection":[{"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/comments?post=2469"}],"version-history":[{"count":0,"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/posts\/2469\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/media\/2470"}],"wp:attachment":[{"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/media?parent=2469"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/categories?post=2469"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/affinite.io\/cs\/wp-json\/wp\/v2\/tags?post=2469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}\n
\nfunction is_checkout() {\n return is_page( wc_get_page_id( 'checkout' ) ) || apply_filters( 'woocommerce_is_checkout', false ) ? true : false;\n }\n<\/pre>\n