<!--THEMIFY CACHE--><!DOCTYPE html>
<html lang="pl-PL">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1"><style id="tb_inline_styles" data-no-optimize="1">.tb_animation_on{overflow-x:hidden}.themify_builder .wow{visibility:hidden;animation-fill-mode:both}[data-tf-animation]{will-change:transform,opacity,visibility}.themify_builder .tf_lax_done{transition-duration:.8s;transition-timing-function:cubic-bezier(.165,.84,.44,1)}[data-sticky-active].tb_sticky_scroll_active{z-index:1}[data-sticky-active].tb_sticky_scroll_active .hide-on-stick{display:none}@media(min-width:1281px){.hide-desktop{width:0!important;height:0!important;padding:0!important;visibility:hidden!important;margin:0!important;display:table-column!important;background:0!important;content-visibility:hidden;overflow:hidden!important}}@media(min-width:769px) and (max-width:1280px){.hide-tablet_landscape{width:0!important;height:0!important;padding:0!important;visibility:hidden!important;margin:0!important;display:table-column!important;background:0!important;content-visibility:hidden;overflow:hidden!important}}@media(min-width:681px) and (max-width:768px){.hide-tablet{width:0!important;height:0!important;padding:0!important;visibility:hidden!important;margin:0!important;display:table-column!important;background:0!important;content-visibility:hidden;overflow:hidden!important}}@media(max-width:680px){.hide-mobile{width:0!important;height:0!important;padding:0!important;visibility:hidden!important;margin:0!important;display:table-column!important;background:0!important;content-visibility:hidden;overflow:hidden!important}}div.row_inner,div.module_subrow{--gutter:3.2%;--narrow:1.6%;--none:0%;}@media(max-width:768px){div.module-gallery-grid{--galn:var(--galt)}}@media(max-width:680px){
 .themify_map.tf_map_loaded{width:100%!important}
 .ui.builder_button,.ui.nav li a{padding:.525em 1.15em}
 .fullheight>.row_inner:not(.tb_col_count_1){min-height:0}
 div.module-gallery-grid{--galn:var(--galm);gap:8px}
 }</style><noscript><style>.themify_builder .wow,.wow .tf_lazy{visibility:visible!important}</style></noscript> <style id="tf_lazy_style" data-no-optimize="1">
 .tf_svg_lazy{
 content-visibility:auto;
 background-size:100% 25%!important;
 background-repeat:no-repeat!important;
 background-position:0 0, 0 33.4%,0 66.6%,0 100%!important;
 transition:filter .3s linear!important;
 filter:blur(25px)!important; transform:translateZ(0)
 }
 .tf_svg_lazy_loaded{
 filter:blur(0)!important
 }
 [data-lazy]:is(.module,.module_row:not(.tb_first)),.module[data-lazy] .ui,.module_row[data-lazy]:not(.tb_first):is(>.row_inner,.module_column[data-lazy],.module_subrow[data-lazy]){
 background-image:none!important
 }
 </style><noscript><style>
 .tf_svg_lazy{
 display:none!important
 }
 </style></noscript><style id="tf_lazy_common" data-no-optimize="1">
 img{
 max-width:100%;
 height:auto
 }
 :where(.tf_in_flx,.tf_flx){display:inline-flex;flex-wrap:wrap;place-items:center}
 .tf_fa,:is(em,i) tf-lottie{display:inline-block;vertical-align:middle}:is(em,i) tf-lottie{width:1.5em;height:1.5em}.tf_fa{width:1em;height:1em;stroke-width:0;stroke:currentColor;overflow:visible;fill:currentColor;pointer-events:none;text-rendering:optimizeSpeed;buffered-rendering:static}#tf_svg symbol{overflow:visible}:where(.tf_lazy){position:relative;visibility:visible;display:block;opacity:.3}.wow .tf_lazy:not(.tf_swiper-slide){visibility:hidden;opacity:1}div.tf_audio_lazy audio{visibility:hidden;height:0;display:inline}.mejs-container{visibility:visible}.tf_iframe_lazy{transition:opacity .3s ease-in-out;min-height:10px}:where(.tf_flx),.tf_swiper-wrapper{display:flex}.tf_swiper-slide{flex-shrink:0;opacity:0;width:100%;height:100%}.tf_swiper-wrapper>br,.tf_lazy.tf_swiper-wrapper .tf_lazy:after,.tf_lazy.tf_swiper-wrapper .tf_lazy:before{display:none}.tf_lazy:after,.tf_lazy:before{content:'';display:inline-block;position:absolute;width:10px!important;height:10px!important;margin:0 3px;top:50%!important;inset-inline:auto 50%!important;border-radius:100%;background-color:currentColor;visibility:visible;animation:tf-hrz-loader infinite .75s cubic-bezier(.2,.68,.18,1.08)}.tf_lazy:after{width:6px!important;height:6px!important;inset-inline:50% auto!important;margin-top:3px;animation-delay:-.4s}@keyframes tf-hrz-loader{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.1);opacity:.6}}.tf_lazy_lightbox{position:fixed;background:rgba(11,11,11,.8);color:#ccc;top:0;left:0;display:flex;align-items:center;justify-content:center;z-index:999}.tf_lazy_lightbox .tf_lazy:after,.tf_lazy_lightbox .tf_lazy:before{background:#fff}.tf_vd_lazy,tf-lottie{display:flex;flex-wrap:wrap}tf-lottie{aspect-ratio:1.777}.tf_w.tf_vd_lazy video{width:100%;height:auto;position:static;object-fit:cover}
 </style><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /><title>wPHP - wordpress, woocommerce - kodowanie bez wtyczek - WordPress - zakoduj to sam w PHP</title><link rel="canonical" href="https://wphp.pl/przykladowa-strona/" /><link rel="next" href="https://wphp.pl/przykladowa-strona/page/2/" /><meta property="og:locale" content="pl_PL" /><meta property="og:type" content="website" /><meta property="og:title" content="wPHP - wordpress, woocommerce - kodowanie bez wtyczek - WordPress - zakoduj to sam w PHP" /><meta property="og:url" content="https://wphp.pl/przykladowa-strona/" /><meta property="og:site_name" content="wPHP - wordpress, woocommerce - kodowanie bez wtyczek" /><meta name="twitter:card" content="summary_large_image" /><script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":["WebPage","CollectionPage"],"@id":"https://wphp.pl/przykladowa-strona/","url":"https://wphp.pl/przykladowa-strona/","name":"wPHP - wordpress, woocommerce - kodowanie bez wtyczek - WordPress - zakoduj to sam w PHP","isPartOf":{"@id":"https://wphp.pl/#website"},"datePublished":"2018-01-09T13:32:00+00:00","dateModified":"2021-12-30T20:25:22+00:00","breadcrumb":{"@id":"https://wphp.pl/przykladowa-strona/#breadcrumb"},"inLanguage":"pl-PL"},{"@type":"BreadcrumbList","@id":"https://wphp.pl/przykladowa-strona/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona główna"}]},{"@type":"WebSite","@id":"https://wphp.pl/#website","url":"https://wphp.pl/","name":"wPHP - wordpress, woocommerce - kodowanie bez wtyczek","description":"WordPress - zakoduj to sam w PHP","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://wphp.pl/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"}]}</script><link rel="alternate" type="application/rss+xml" title="wPHP - wordpress, woocommerce - kodowanie bez wtyczek &raquo; Kanał z wpisami" href="https://wphp.pl/feed/" />
<link rel="alternate" type="application/rss+xml" title="wPHP - wordpress, woocommerce - kodowanie bez wtyczek &raquo; Kanał z komentarzami" href="https://wphp.pl/comments/feed/" />
<style id='global-styles-inline-css'>
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 24px; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 24px; }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-flex){gap: 24px;}:root :where(.is-layout-grid){gap: 24px;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){margin-left: auto !important;margin-right: auto !important;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}a:where(:not(.wp-element-button)){text-decoration: underline;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;line-height: inherit;padding: calc(0.667em + 2px) calc(1.333em + 2px);text-decoration: none;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}
</style>
<link rel="preload" href="https://wphp.pl/wp-content/plugins/complianz-gdpr/assets/css/cookieblocker.min.css?ver=1719984918" as="style"><link rel='stylesheet' id='cmplz-general-css' href='https://wphp.pl/wp-content/plugins/complianz-gdpr/assets/css/cookieblocker.min.css?ver=1719984918' media='all' />
<script src="https://wphp.pl/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script><script src="https://www.googletagmanager.com/gtag/js?id=GT-PZVZ7JF" id="google_gtagjs-js" async></script>
<script id="google_gtagjs-js-after">
window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}
gtag("set","linker",{"domains":["wphp.pl"]});
gtag("js", new Date());
gtag("set", "developer_id.dZTNiMT", true);
gtag("config", "GT-PZVZ7JF");
</script><link rel="https://api.w.org/" href="https://wphp.pl/wp-json/" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://wphp.pl/xmlrpc.php?rsd" />
<meta name="generator" content="Site Kit by Google 1.137.0" /><meta name="google-adsense-platform-account" content="ca-host-pub-2644536267352236">
<meta name="google-adsense-platform-domain" content="sitekit.withgoogle.com"><style>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style><script async src="https://www.googletagmanager.com/gtag/js?id=UA-999607-46"></script><script> window.dataLayer = window.dataLayer || [];
 function gtag(){dataLayer.push(arguments);}
 gtag('js', new Date());

 gtag('config', 'UA-999607-46');</script><link rel="prefetch" href="https://wphp.pl/wp-content/themes/themify-landing/js/themify-script.js?ver=7.5.9" as="script" fetchpriority="low"><link rel="preload" href="https://wphp.pl/wp-content/uploads/2022/09/api-nbp-1160x665.jpg" as="image" fetchpriority="high"><style id="tf_gf_fonts_style">@font-face{font-family:'Crimson Text';font-style:italic;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfajheK_Zt3Q.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Crimson Text';font-style:italic;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfajhfK_Zt3Q.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Crimson Text';font-style:italic;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfajhRK_Y.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Crimson Text';font-style:italic;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDuNd_LV_fg.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Crimson Text';font-style:italic;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDuNc_LV_fg.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Crimson Text';font-style:italic;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDuNS_LU.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Crimson Text';font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfYAhTM_I.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Crimson Text';font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfYQhTM_I.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Crimson Text';font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfbwhT.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Crimson Text';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C1GA9NQ5LE.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Crimson Text';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C1GAtNQ5LE.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Crimson Text';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C1GDNNQ.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Oswald';font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlbHYjedg.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;}@font-face{font-family:'Oswald';font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlSHYjedg.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Oswald';font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlZHYjedg.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Oswald';font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlYHYjedg.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Oswald';font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlWHYg.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Oswald';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlbHYjedg.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;}@font-face{font-family:'Oswald';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlSHYjedg.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Oswald';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlZHYjedg.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Oswald';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlYHYjedg.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Oswald';font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/oswald/v53/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlWHYg.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}</style><link rel="preload" fetchpriority="high" href="https://wphp.pl/wp-content/uploads/themify-concate/860772650/themify-2504486275.css" as="style"><link fetchpriority="high" id="themify_concate-css" rel="stylesheet" href="https://wphp.pl/wp-content/uploads/themify-concate/860772650/themify-2504486275.css"><link rel="preconnect" href="https://www.google-analytics.com"></head><body data-rsssl=1 class="blog skin-default sidebar1 default_width tb_animation_on header-horizontal fixed-header-enabled"><svg id="tf_svg" style="display:none"><defs></defs></svg><script> </script>
<div id="pagewrap" class="hfeed site"><div id="headerwrap"><header id="header" class="pagewidth tf_clearfix" itemscope="itemscope" itemtype="https://schema.org/WPHeader"><div id="site-logo"><a href="https://wphp.pl" title="wPHP - wordpress, woocommerce - kodowanie bez wtyczek"><span>wPHP - wordpress, woocommerce - kodowanie bez wtyczek</span></a></div><div id="site-description" class="site-description"><span>WordPress - zakoduj to sam w PHP</span></div></header> </div><div id="body" class="tf_clearfix"><div id="layout" class="pagewidth tf_clearfix"><main id="content" class="tf_clearfix"> <div id="loops-wrapper" class="loops-wrapper list-post tf_clear tf_clearfix" data-lazy="1"><article id="post-745" class="post tf_clearfix post-745 type-post status-publish format-standard hentry category-layout has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/automatyczne-aktualizacje-wordpressa/">Automatyczne aktualizacje wordpressa</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2023-04-26">26 kwietnia 2023</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a></span></p> <div class="entry-content"> <p>Aby wyłączyć możliwość automatycznych aktualizacji WordPressa, musisz dodać poniższy kod w pliku wp-config.php. Najlepiej umieścić go przed komentarzem &#8222;To niesamowite, to już wszystko!&#8221;, który oznacza koniec pliku.</p><pre class="wp-block-code"><code>define('AUTOMATIC_UPDATER_DISABLED', true);</code></pre><p>Wprowadzenie tej zmiany spowoduje wyłączenie automatycznych aktualizacji WordPressa, wtyczek i motywów. Jeśli chcesz wyłączyć tylko aktualizacje rdzenia WordPressa, ale pozwolić na automatyczne aktualizacje wtyczek i motywów, użyj poniższego kodu zamiast tego:</p><pre class="wp-block-code"><code>define('WP_AUTO_UPDATE_CORE', false);</code></pre><p>Pamiętaj, że wyłączanie automatycznych aktualizacji może zwiększyć ryzyko wystąpienia problemów związanych z bezpieczeństwem i kompatybilnością na Twojej stronie. Upewnij się, że regularnie sprawdzasz dostępne aktualizacje i instalujesz je ręcznie, aby utrzymać swoją witrynę w jak najlepszym stanie.</p><p>Oczywiście odwrotne działania spowodują włączenie aktualizacji:</p><pre class="wp-block-code"><code>define('AUTOMATIC_UPDATER_DISABLED', false);</code></pre><p>Do włączenia automatycznych aktualizacji możemy też użyć filtrów w functions.php. Aby włączyć automatyczne aktualizacje wtyczek za pomocą pliku functions.php, możesz dodać poniższy kod do tego pliku:</p><pre class="wp-block-code"><code>add_filter( 'auto_update_plugin', '__return_true' );</code></pre><p>Po dodaniu tego kodu do pliku functions.php, automatyczne aktualizacje wtyczek zostaną włączone. Upewnij się jednak, że WordPress ma odpowiednie uprawnienia do zapisu w swoich katalogach, aby automatyczne aktualizacje mogły działać poprawnie.</p><p>Jeśli chciałbyś włączyć automatyczne aktualizacje motywów, dodaj również poniższy kod do pliku functions.php:</p><pre class="wp-block-code"><code>add_filter( 'auto_update_theme', '__return_true' );</code></pre><p>Pamiętaj, że włączanie automatycznych aktualizacji wtyczek i motywów może czasami prowadzić do problemów z kompatybilnością lub błędami, szczególnie jeśli używasz niestandardowych lub zmodyfikowanych motywów i wtyczek. Regularnie monitoruj swoją stronę, aby upewnić się, że wszystko działa poprawnie po aktualizacji.</p></div></div></article><article id="post-735" class="post tf_clearfix post-735 type-post status-publish format-standard hentry category-woocommerce has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/jak-wylaczyc-wymagane-pola-na-stronie-zamowienia-woocommerce/">Jak wyłączyć wymagane pola na stronie zamówienia woocommerce</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2023-04-25">25 kwietnia 2023</time><span class="post-category"><a href="https://wphp.pl/category/woocommerce/" rel="tag" class="term-woocommerce">woocommerce</a></span></p> <div class="entry-content"> <p>Czasami zachodzi potrzeba wyłączenia, niektórych wymaganych pól na stronie zamówienia. Np. mamy tego typu wysyłkę, że klient nie chce podawać imienia i nazwiska. Albo chce dyskretnie na numer paczkomatu, bez podawania adresu domowego.</p><p>Oczywiście możemy zrobić to za pomocą wtyczki Checkout Field Editor, ale jest ona komercyjna i bez corocznych aktualizacji potrafi popsuć zaplecze. Dlatego możemy skorzystać z prostego kodu:</p><pre class="wp-block-code"><code>// Zmienia pola imienia i nazwiska na opcjonalne
function wc_make_name_fields_optional( $fields ) {
 // Ustawienie pola imienia jako opcjonalne
 $fields&#91;'billing']&#91;'billing_first_name']&#91;'required'] = false;
 $fields&#91;'shipping']&#91;'shipping_first_name']&#91;'required'] = false;

 // Ustawienie pola nazwiska jako opcjonalne
 $fields&#91;'billing']&#91;'billing_last_name']&#91;'required'] = false;
 $fields&#91;'shipping']&#91;'shipping_last_name']&#91;'required'] = false;

 return $fields;
}
add_filter( 'woocommerce_checkout_fields', 'wc_make_name_fields_optional' );</code></pre><p>Po zastosowaniu tych zmian, pola &#8222;imię&#8221; i &#8222;nazwisko&#8221; nie będą już wymagane w formularzu zamówienia na stronie WooCommerce. Oczywiście manipulując polami na stronie zamówienia pamiętajmy, że zmiany mogą naruszać przepisy o ochronie danych osobowych.</p><p>W WooCommerce na stronie zamówienia znajduje się wiele innych pól formularza oprócz <code>imienia i nazwiska</code>. Poniżej podaję listę podstawowych pól dla sekcji płatności (billing) i dostawy (shipping). Oczywiście, pola te mogą ulec zmianie w zależności od dodatków lub modyfikacji wprowadzonych na Twojej stronie.</p><h2 class="wp-block-heading">Sekcja płatności (billing) woocommerce</h2><ol class="wp-block-list">
<li>Imię: <code>$fields['billing']['billing_first_name']</code></li><li>Nazwisko: <code>$fields['billing']['billing_last_name']</code></li><li>Firma: <code>$fields['billing']['billing_company']</code></li><li>Kraj/Region: <code>$fields['billing']['billing_country']</code></li><li>Adres linia 1: <code>$fields['billing']['billing_address_1']</code></li><li>Adres linia 2: <code>$fields['billing']['billing_address_2']</code></li><li>Miasto: <code>$fields['billing']['billing_city']</code></li><li>Kod pocztowy: <code>$fields['billing']['billing_postcode']</code></li><li>Stan/województwo: <code>$fields['billing']['billing_state']</code></li><li>Numer telefonu: <code>$fields['billing']['billing_phone']</code></li><li>Adres e-mail: <code>$fields['billing']['billing_email']</code></li>
</ol><h2 class="wp-block-heading">Sekcja dostawy (shipping) woocommerce</h2><ol class="wp-block-list">
<li>Imię: <code>$fields['shipping']['shipping_first_name']</code></li><li>Nazwisko: <code>$fields['shipping']['shipping_last_name']</code></li><li>Firma: <code>$fields['shipping']['shipping_company']</code></li><li>Kraj/Region: <code>$fields['shipping']['shipping_country']</code></li><li>Adres linia 1: <code>$fields['shipping']['shipping_address_1']</code></li><li>Adres linia 2: <code>$fields['shipping']['shipping_address_2']</code></li><li>Miasto: <code>$fields['shipping']['shipping_city']</code></li><li>Kod pocztowy: <code>$fields['shipping']['shipping_postcode']</code></li><li>Stan/województwo: <code>$fields['shipping']['shipping_state']</code></li>
</ol><p>Dodatkowo, na stronie zamówienia znajdują się również pola związane z kontem klienta oraz różne pola dotyczące zamówienia (np. pola dotyczące płatności). Te pola są przechowywane w innych tablicach, takich jak <code>$fields['account']</code> czy <code>$fields['order']</code>.</p><p>W zależności od potrzeb, możesz modyfikować te pola, korzystając z filtrów takich jak <code>woocommerce_checkout_fields</code> i dostosować je do swoich wymagań.</p></div></div></article><article id="post-726" class="post tf_clearfix post-726 type-post status-publish format-standard hentry category-layout tag-shortcode tag-term_description has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/uzywanie-kodu-html-lub-shortcode-w-opisach-kategorii-produktow/">Jak wstawić kod HTML lub shortcode w opisach kategorii produktów</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2023-04-24">24 kwietnia 2023</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a></span> <span class="post-tag"><a href="https://wphp.pl/tag/shortcode/" rel="tag">shortcode</a>, <a href="https://wphp.pl/tag/term_description/" rel="tag">term_description</a></span></p> <div class="entry-content"> <p>Czasami zachodzi potrzeba użycia bardziej rozbudowanego kodu w opisie kategorii produktów lub użycia shortcode. Niestety domyślne ustawienia nie pozwalają na to. Musimy wtedy użyć drobnej modyfikacji.</p><p>Oto sposób na dodanie obsługi shortcode&#8217;ów i HTML do opisów kategorii produktów w WooCommerce:</p><ol class="wp-block-list">
<li>Otwórz plik functions.php w aktywnym motywie: W panelu administracyjnym WordPress przejdź do &#8222;Wygląd&#8221; &gt; &#8222;Edytor motywów&#8221;. Z lewej strony znajdź i otwórz plik functions.php. Upewnij się, że robisz kopię zapasową swojej strony przed wprowadzaniem zmian w plikach motywu.</li><li>Dodaj poniższy kod do pliku <code>functions.php</code>:</li>
</ol><pre class="wp-block-code"><code>// Filtr, który pozwala na obsługę HTML w opisach kategorii produktów
function wc_allow_html_in_category_description( $taxonomy ) {
 if ( 'product_cat' === $taxonomy ) {
 remove_filter( 'pre_term_description', 'wp_filter_kses' );
 remove_filter( 'term_description', 'wp_kses_data' );
 }
}
add_action( 'init', 'wc_allow_html_in_category_description' );

// Filtr, który pozwala na obsługę shortcode'ów w opisach kategorii produktów
function wc_do_shortcode_in_category_description( $description, $term_id ) {
 if ( in_array( 'product_cat', get_term_by( 'id', $term_id, ARRAY_A, 'taxonomy' ) ) ) {
 return do_shortcode( $description );
 }
 return $description;
}
add_filter( 'term_description', 'wc_do_shortcode_in_category_description', 10, 2 );</code></pre><p>Dzisiaj wyjątkowo instrukcja dla instalatorów wtyczek. Powyższe funkcjonalności włączy dla Was wtyczka WP Editor.</p><p>Aby umieścić shortcode lub kod HTML w opisie kategorii produktów w WooCommerce, wykonaj poniższe kroki:</p><ol class="wp-block-list">
<li>Zainstaluj i aktywuj wtyczkę &#8222;WP Editor&#8221;: WP Editor to wtyczka, która pozwoli na edycję kodu HTML i obsługę shortcode&#8217;ów w opisach kategorii produktów. Pobierz wtyczkę z oficjalnej strony WordPress.org lub zainstaluj ją bezpośrednio z panelu administratora WordPress.</li><li>Dodaj lub edytuj kategorię produktu: Po aktywacji wtyczki &#8222;WP Editor&#8221;, przejdź do panelu administracyjnego WordPress, a następnie kliknij na &#8222;Produkty&#8221; &gt; &#8222;Kategorie&#8221;. Możesz dodać nową kategorię produktów lub wybrać istniejącą kategorię do edycji.</li><li>Wstaw kod HTML lub shortcode: W polu opisu kategorii zobaczysz teraz edytor WP Editor. Możesz użyć edytora tekstowego (zakładka &#8222;Text&#8221;) do wklejenia kodu HTML lub shortcode&#8217;u. Jeśli używasz edytora wizualnego (zakładka &#8222;Visual&#8221;), użyj przycisku &#8222;&lt;/&gt;&#8221; („Wstaw kod HTML”) w pasku narzędzi, aby wkleić kod HTML.</li><li>Zapisz zmiany: Po wstawieniu kodu HTML lub shortcode&#8217;u kliknij przycisk &#8222;Dodaj nową kategorię&#8221; lub &#8222;Aktualizuj&#8221;, aby zapisać zmiany.</li>
</ol><p>Teraz, gdy wyświetlasz stronę kategorii produktów na swojej witrynie, kod HTML lub shortcode zostanie prawidłowo wyświetlony i przetworzony. Pamiętaj jednak, że nie wszystkie shortcode&#8217;y mogą działać poprawnie w opisie kategorii, a niektóre mogą wymagać dodatkowej konfiguracji lub modyfikacji kodu źródłowego.</p></div></div></article><article id="post-708" class="post tf_clearfix post-708 type-post status-publish format-standard hentry category-layout has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/jak-wylaczyc-odzyskiwanie-hasla/">Jak wyłączyć odzyskiwanie hasła</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2022-09-08">8 września 2022</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a></span></p> <div class="entry-content"><div id="themify_builder_content-708" data-postid="708" class="themify_builder_content themify_builder_content-708 themify_builder tf_clear"></div><p>Sytuacja tak, że trzeba było zmienić hasła dla wszystkich adminów, ale bez usuwania ich kont. Natomiast trzeba było wyłączyć możliwość odzyskiwania hasła, żeby zablokowany użytkownik nie mógł go sobie zresetować. Oczywiście mały kod w functions.php</p><pre class="wp-block-code"><code>function disable_password_reset() { return false; }
add_filter ( 'allow_password_reset', 'disable_password_reset' );</code></pre></div></div></article><article id="post-704" class="post tf_clearfix post-704 type-post status-publish format-standard has-post-thumbnail hentry category-layout has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "> <figure class="post-image tf_clearfix"><a href="https://wphp.pl/pobieranie-aktualnego-kursu-walut-przez-api-nbp/"><img data-tf-not-load="1" fetchpriority="high" loading="auto" decoding="auto" decoding="async" src="https://wphp.pl/wp-content/uploads/2022/09/api-nbp-1160x665.jpg" width="1160" height="665" class="wp-post-image wp-image-705" title="api-nbp" alt="api-nbp"> </a></figure><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/pobieranie-aktualnego-kursu-walut-przez-api-nbp/">Pobieranie aktualnego kursu walut przez API NBP</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2022-09-08">8 września 2022</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a></span></p> <div class="entry-content"><div id="themify_builder_content-704" data-postid="704" class="themify_builder_content themify_builder_content-704 themify_builder tf_clear"></div><p>Jakiś czas temu zdarzyło się zadanie od klienta, który chciał mieć część produktów woocommerce z cenami w euro a część w złotówkach. I żeby nie było tak prosto to niech jeszcze system przelicza to euro na złotówki dla klienta. A co tam &#8211; niech je jeszcze przelicza po aktualnych kursach bo przecież co chwila coś się zmienia. Pierwszy etap rzeczywiście udało się zrealizować za pomocą darmowej wtyczki. Można było napisać samemu kod, ale mi się nie chciało, bo klient i tak by nie docenił wysiłku. Drugi etap postanowiłem sam rozwiązać dla własnej nauki i przyjemności. Skorzystałem z ogólnie dostępnego kodu api Narodowego Banku Polskiego. Kod php jest bardzo prosty i krótki:</p><pre class="wp-block-code"><code>$dane = file_get_contents('https://api.nbp.pl/api/exchangerates/rates/a/eur?format=json');
$json = json_decode($dane);
$kurs = $json->rates&#91;0]->mid;</code></pre><p>Samą poprawność linku możemy sprawdzić wyświetlając adres https://api.nbp.pl/api/exchangerates/rates/a/eur w przeglądarce. W wyniku otrzymamy kod XML.</p><figure class="wp-block-image size-full"><img data-tf-not-load="1" fetchpriority="high" decoding="async" width="895" height="226" src="https://wphp.pl/wp-content/uploads/2022/09/api-nbp.jpg" alt="" class="wp-image-705" srcset="https://wphp.pl/wp-content/uploads/2022/09/api-nbp.jpg 895w, https://wphp.pl/wp-content/uploads/2022/09/api-nbp-300x76.jpg 300w, https://wphp.pl/wp-content/uploads/2022/09/api-nbp-768x194.jpg 768w" sizes="(max-width: 895px) 100vw, 895px" /></figure><p>Oczywiście wyświetlić możemy kurs dowolnej waluty. Po więcej szczegółów warto zerknąć do dokumentacji api.nbp.pl</p></div></div></article><article id="post-697" class="post tf_clearfix post-697 type-post status-publish format-standard hentry category-layout has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/poczta-interia-nie-dochodza-maile/">Poczta interia &#8211; nie dochodzą maile</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2022-07-13">13 lipca 2022</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a></span></p> <div class="entry-content"><div id="themify_builder_content-697" data-postid="697" class="themify_builder_content themify_builder_content-697 themify_builder tf_clear"></div><p>Jeden z klientów miał spory problem. Powiadomienia o zakupach, resetowanie haseł nie dochodziły na skrzynki pocztowe Interia. Niby śmieszny problem bo przecież każdy teraz używa gmail, ale akurat u tego klienta 30% klientów miało konta na interia.</p><p>Post będzie krótki, ale konkretny. Z problemem walczyłem prawie pół roku. </p><p>Nie pomogło wysyłanie maili poprzez SMTP &#8211; w tym wypadku używam wtyczki. Lubię wtyczki, które służą czemuś konkretnemu, są aktualizowane i nie stanowią większego zagrożenia.</p><p>Nie pomogło dodanie w DNS rekordów DKIM.</p><p>Nie pomogło też szukanie w dokumentacji Interii czy na forach.</p><p>Dlatego zastosowałem pewną sztuczkę. W domenie, z której maile były odrzucane założyłem sobie konto. Założyłem również sobie konto na interia. I rozpocząłem namiętne wysyłanie maili między sobą z czego się da by złapać choć odrobinę komunikatu z serwera, którego w teorii zrozumieć się nie da.</p><p>I to mi się udało. Wprawdzie z 72 godzinnym opóźnieniem ale jednak.</p><p>Uwielbiam czytać komunikaty, uwielbiam czytać dokumentacje. Wielu ludzi tego nauczyłem, ale są też tacy którzy wolą kliknąć 10 razy zanim coś przeczytają.</p><p>Dopiero w takiej informacji zwrotnej znalazłem ukryty link do formularza, który zawierał konkretne informacje. Przepraszam, dużo informacji i możliwości.</p><p>Adres IP serwera, z którego wysyłasz e-maile, został uznany za źródło spamu.</p><p>Stało się tak, ponieważ użytkownicy Poczty Interia masowo oznaczają wiadomości z tego adresu IP jako SPAM.</p><p>W ramach ochrony naszych użytkowników Twój e-mail został zablokowany.</p><p>Nie wysyłasz spamu, a mimo to wiadomość została odrzucona? Może to wynikać z kilku powodów:</p><p>&#8211; korzystasz z serwera współdzielonego (Twój serwer poczty rozsyła wiadomości z kilku domen, np. platformy hostingowe),</p><p>&#8211; wiadomości transakcyjne i maile reklamowe wysyłasz z tych samych IP,</p><p>&#8211; Twoja domena ma niepoprawnie skonfigurowany rekord TXT SPF: adres IP, z którego wysyłasz maile, nie występuje w rekordzie SPF lub nie jest zamknięty (~all zamiast -all),</p><p>&#8211; Twoja domena nie ma poprawnie skonfigurowanego rekordu PTR adresu IP, z którego wysyłasz maile.</p><p></p><p>I kluczem programu okazuje się ten fragment:</p><p>(~all zamiast -all)</p><p>Zmiana tego rekordu w DNS cudownie odblokowała maile.</p><p>Żeby nie było szukałem wcześniej w Internecie informacji na ten temat. I powiem szczerze, lepiej spędziłbym ten czas w internacie (szczególnie żeńskim).</p><p> </p></div></div></article><article id="post-658" class="post tf_clearfix post-658 type-post status-publish format-standard hentry category-layout category-woocommerce tag-posts_where tag-wp_query has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/wyszukiwanie-postow-tylko-po-tytulach/">Wyszukiwanie postów tylko po tytułach</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2022-04-01">1 kwietnia 2022</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a>, <a href="https://wphp.pl/category/woocommerce/" rel="tag" class="term-woocommerce">woocommerce</a></span> <span class="post-tag"><a href="https://wphp.pl/tag/posts_where/" rel="tag">posts_where</a>, <a href="https://wphp.pl/tag/wp_query/" rel="tag">wp_query</a></span></p> <div class="entry-content"> <p>Temat wydawał się dość prosty, a jednak zajął mi trochę czasu. Wujek Google wcale nie jest tak łaskawy w odpowiedzi na pytanie co zrobić aby wyniki wyszukiwania w wordpress obejmowały jedynie szukanie po tytułach postów (produktów) a nie po całej treści (opisie).</p><span class="more-link-wrap"><a class="more-link" href="https://wphp.pl/wyszukiwanie-postow-tylko-po-tytulach/">More</a></span></div></div></article><article id="post-635" class="post tf_clearfix post-635 type-post status-publish format-standard hentry category-layout has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/related-product-produkty-podobne-w-woocommerce/">Related product &#8211; produkty podobne w woocommerce</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2022-03-31">31 marca 2022</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a></span></p> <div class="entry-content"> <p>Produkty powiązane w woocommerce to sekcja w większości szablonów, która pobiera produkty z naszego sklepu. Domyślnie mają one te same tagi lub kategorie co przeglądany produkt.</p><p>Przy dużej ilości produktów w sklepie, a co gorsza dużej ilości kategorii, bardzo losowy dobór produktów podobnych może być dość kłopotliwy. Tym bardziej, że nie możemy ich teoretycznie ustawić ręcznie na zapleczu.</p><p>Najprostszym rozwiązaniem, o którym często zapominamy, jest możliwość odpowiedniego połączenia produktów poprzez te same tagi. Wprawdzie zalecam tutaj ostrożność, gdyż nieumiejętne stosowanie tagów może doprowadzić do kanibalizacji strony. Czyli wygenerujemy sztucznie strony o identycznej zawartości a o różnych adresach url.</p><p>Na szczęście kod woocommerca daje nam wiele możliwości wpływania na to jak wyglądają PRODUKTY PODOBNE.</p><span class="more-link-wrap"><a class="more-link" href="https://wphp.pl/related-product-produkty-podobne-w-woocommerce/">More</a></span></div></div></article><article id="post-195" class="post tf_clearfix post-195 type-post status-publish format-standard hentry category-optymalizacja category-woocommerce tag-wc-ajax tag-woocommerce_cart_fragments has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/jak-przyspieszyc-strone-wylaczajac-odswiezanie-koszyka-woocoomerce/">Jak przyspieszyć stronę wyłączając odświeżanie koszyka woocoomerce</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/adminmp-zgora-pl/" rel="author">Grzegorz Chodacki</a></span></span><time class="post-date entry-date updated" datetime="2022-03-31">31 marca 2022</time><span class="post-category"><a href="https://wphp.pl/category/optymalizacja/" rel="tag" class="term-optymalizacja">optymalizacja</a>, <a href="https://wphp.pl/category/woocommerce/" rel="tag" class="term-woocommerce">woocommerce</a></span> <span class="post-tag"><a href="https://wphp.pl/tag/wc-ajax/" rel="tag">wc-ajax</a>, <a href="https://wphp.pl/tag/woocommerce_cart_fragments/" rel="tag">woocommerce_cart_fragments</a></span></p> <div class="entry-content"> <p>Bardzo często zdarza się, że nasza strona z woocommerce działa wolno. Narzędzia do testowania prędkości typu GTMetrix, często pokazują, że wpływ na prędkość ładowania strony może mieć skrypt wc-ajax=get_refreshed_fragments. Generuje on opóźnienia i obciążenie serwera. Do czego jest on potrzebny, czy jest potrzebny i jak go wyłączyć? </p><span class="more-link-wrap"><a class="more-link" href="https://wphp.pl/jak-przyspieszyc-strone-wylaczajac-odswiezanie-koszyka-woocoomerce/">More</a></span></div></div></article><article id="post-587" class="post tf_clearfix post-587 type-post status-publish format-standard hentry category-layout category-woocommerce has-post-title has-post-date has-post-category has-post-tag has-post-comment has-post-author "><div class="post-content"><h2 class="post-title entry-title"><a href="https://wphp.pl/dodanie-niestandardowych-pol-do-produktu-woocoomerce/">Dodanie niestandardowych pól do produktu WooCoomerce</a></h2><p class="post-meta entry-meta"><span class="post-author"><span class="author vcard"><a class="url fn n" href="https://wphp.pl/author/majaukontentowani-pl/" rel="author">Maja Sędziak</a></span></span><time class="post-date entry-date updated" datetime="2021-10-12">12 października 2021</time><span class="post-category"><a href="https://wphp.pl/category/layout/" rel="tag" class="term-layout">layout</a>, <a href="https://wphp.pl/category/woocommerce/" rel="tag" class="term-woocommerce">woocommerce</a></span></p> <div class="entry-content"> <p>Zagadnienie dotyczy innego podejścia niż przy poprzednim wpisie. Poprzednio dla produktów prostych i produktów z wariantami wyliczana była cena za 1m2 na podstawie wymiarów produktu po czym wyświetlana na karcie produktu. Tym razem dodamy dodatkowe pola od strony zaplecza, tj. cenę (pole input) oraz jednostkę (pole wyboru select). Trudność polega na tym, że w zależności od tego czy produkt jest prosty czy z wariantami, ceny wyświetlane są w różnych miejscach w tabeli produktu, dlatego użyte zostaną zupełnie inne hooki. </p><span class="more-link-wrap"><a class="more-link" href="https://wphp.pl/dodanie-niestandardowych-pol-do-produktu-woocoomerce/">More</a></span></div></div></article> </div><link rel="prefetch" as="document" href="https://wphp.pl/page/2/"/><div class="pagenav tf_clear tf_box tf_textr tf_clearfix "> <span class="number current">1</span> <a href="https://wphp.pl/page/2/" class="number">2</a> <a href="https://wphp.pl/page/3/" class="number">3</a> <a href="https://wphp.pl/page/4/" class="number">4</a><a href="https://wphp.pl/page/2/" class="number nextp">&rsaquo;</a><a href="https://wphp.pl/page/6/" title="&raquo;" class="number lastp">&raquo;</a></div></main><aside id="sidebar" itemscope="itemscope" itemtype="https://schema.org/WPSidebar"><div id="search-2" class="widget widget_search"><form method="get" id="searchform" action="https://wphp.pl/"><i class="icon-search"></i><input type="text" name="s" id="s" title="Search" value="" /></form></div><div id="recent-posts-2" class="widget widget_recent_entries"><h4 class="widgettitle">Ostatnie wpisy</h4><ul><li><a href="https://wphp.pl/automatyczne-aktualizacje-wordpressa/">Automatyczne aktualizacje wordpressa</a></li><li><a href="https://wphp.pl/jak-wylaczyc-wymagane-pola-na-stronie-zamowienia-woocommerce/">Jak wyłączyć wymagane pola na stronie zamówienia woocommerce</a></li><li><a href="https://wphp.pl/uzywanie-kodu-html-lub-shortcode-w-opisach-kategorii-produktow/">Jak wstawić kod HTML lub shortcode w opisach kategorii produktów</a></li><li><a href="https://wphp.pl/jak-wylaczyc-odzyskiwanie-hasla/">Jak wyłączyć odzyskiwanie hasła</a></li><li><a href="https://wphp.pl/pobieranie-aktualnego-kursu-walut-przez-api-nbp/">Pobieranie aktualnego kursu walut przez API NBP</a></li></ul></div><div id="recent-comments-2" class="widget widget_recent_comments"><h4 class="widgettitle">Najnowsze komentarze</h4><ul id="recentcomments"></ul></div><div id="archives-2" class="widget widget_archive"><h4 class="widgettitle">Archiwa</h4><ul><li><a href='https://wphp.pl/2023/04/'>kwiecień 2023</a></li><li><a href='https://wphp.pl/2022/09/'>wrzesień 2022</a></li><li><a href='https://wphp.pl/2022/07/'>lipiec 2022</a></li><li><a href='https://wphp.pl/2022/04/'>kwiecień 2022</a></li><li><a href='https://wphp.pl/2022/03/'>marzec 2022</a></li><li><a href='https://wphp.pl/2021/10/'>październik 2021</a></li><li><a href='https://wphp.pl/2021/09/'>wrzesień 2021</a></li><li><a href='https://wphp.pl/2021/04/'>kwiecień 2021</a></li><li><a href='https://wphp.pl/2021/03/'>marzec 2021</a></li><li><a href='https://wphp.pl/2020/12/'>grudzień 2020</a></li><li><a href='https://wphp.pl/2020/07/'>lipiec 2020</a></li><li><a href='https://wphp.pl/2020/03/'>marzec 2020</a></li><li><a href='https://wphp.pl/2020/02/'>luty 2020</a></li><li><a href='https://wphp.pl/2020/01/'>styczeń 2020</a></li><li><a href='https://wphp.pl/2019/05/'>maj 2019</a></li><li><a href='https://wphp.pl/2019/02/'>luty 2019</a></li><li><a href='https://wphp.pl/2018/11/'>listopad 2018</a></li><li><a href='https://wphp.pl/2018/08/'>sierpień 2018</a></li><li><a href='https://wphp.pl/2018/06/'>czerwiec 2018</a></li><li><a href='https://wphp.pl/2018/05/'>maj 2018</a></li><li><a href='https://wphp.pl/2018/03/'>marzec 2018</a></li><li><a href='https://wphp.pl/2018/02/'>luty 2018</a></li><li><a href='https://wphp.pl/2018/01/'>styczeń 2018</a></li></ul></div><div id="categories-2" class="widget widget_categories"><h4 class="widgettitle">Kategorie</h4><ul><li class="cat-item cat-item-8"><a href="https://wphp.pl/category/dla-admina/">dla admina</a>
</li><li class="cat-item cat-item-1"><a href="https://wphp.pl/category/layout/">layout</a>
</li><li class="cat-item cat-item-7"><a href="https://wphp.pl/category/optymalizacja/">optymalizacja</a>
</li><li class="cat-item cat-item-3"><a href="https://wphp.pl/category/woocommerce/">woocommerce</a>
</li></ul></div><div id="meta-2" class="widget widget_meta"><h4 class="widgettitle">Meta</h4><ul><li><a rel="nofollow" href="https://wphp.pl/wp-login.php">Zaloguj się</a></li><li><a href="https://wphp.pl/feed/">Kanał wpisów</a></li><li><a href="https://wphp.pl/comments/feed/">Kanał komentarzy</a></li><li><a href="https://pl.wordpress.org/">WordPress.org</a></li></ul></div></aside></div></div><div class="footer-widgets-wrap"><div class="footer-widgets pagewidth tf_clearfix"><div class="col3-1 first"></div><div class="col3-1 "></div><div class="col3-1 "></div></div></div><div id="footerwrap"><footer id="footer" class="pagewidth tf_clearfix" itemscope="itemscope" itemtype="https://schema.org/WPFooter"><div class="footer-text tf_clearfix"><div class="one"><a href="https://uKONTENTowani.pl">Strony na Wordpress - uKONTENTowani.pl</a></div><div class="two">TO NIE JEST STRONA DLA INSTALATORÓW WTYCZEK</div></div></footer></div></div><script id="tf_vars" data-no-optimize="1" data-noptimize="1" data-no-minify="1" data-cfasync="false" defer="defer" src="data:text/javascript;base64,dmFyIHRoZW1pZnlTY3JpcHQgPSB7InN0aWNreV9oZWFkZXIiOiIiLCJiYWNrX3RvcCI6IjxhIGNsYXNzPVwibGFuZGluZy1iYWNrLXRvcCBsYW5kaW5nLWJhY2stdG9wLWhpZGVcIiBocmVmPVwiI2hlYWRlclwiPjxzcGFuPkJhY2sgdG8gdG9wPFwvc3Bhbj48XC9hPiJ9Owp2YXIgdGJMb2NhbFNjcmlwdCA9IHsic2Nyb2xsSGlnaGxpZ2h0Ijp7InNwZWVkIjo5MDAuMDF9LCJhZGRvbnMiOltdfTsKdmFyIHRoZW1pZnlfdmFycyA9IHsibWVudV9wb2ludCI6IjkwMCIsImJyZWFrcG9pbnRzIjp7InRhYmxldF9sYW5kc2NhcGUiOls3NjksMTI4MF0sInRhYmxldCI6WzY4MSw3NjhdLCJtb2JpbGUiOjY4MH0sIndwIjoiNi42LjIiLCJhamF4X3VybCI6Imh0dHBzOi8vd3BocC5wbC93cC1hZG1pbi9hZG1pbi1hamF4LnBocCIsIm1lbnVfdG9vbHRpcHMiOltdLCJwbHVnaW5fdXJsIjoiaHR0cHM6Ly93cGhwLnBsL3dwLWNvbnRlbnQvcGx1Z2lucyIsImNvbnRlbnRfdXJsIjoiaHR0cHM6Ly93cGhwLnBsL3dwLWNvbnRlbnQiLCJpbmNsdWRlc191cmwiOiJodHRwczovL3dwaHAucGwvd3AtaW5jbHVkZXMvIiwidGhlbWVfdiI6IjcuNS45IiwiZW1haWxTdWIiOiJDaGVjayB0aGlzIG91dCEiLCJub3AiOiJDaGVjayB0aGlzIG91dCEiLCJsaWdodGJveCI6eyJpMThuIjp7InRDb3VudGVyIjoiJWN1cnIlIG9mICV0b3RhbCUifX0sImRvbmUiOnsidGZfZ3JpZF9saXN0LXBvc3QiOnRydWUsInRmX3NlYXJjaF9mb3JtIjp0cnVlfX07"></script><script defer="defer" data-v="7.8.2" data-pl-href="https://wphp.pl/wp-content/plugins/fake.css" data-no-optimize="1" data-noptimize="1" src="https://wphp.pl/wp-content/themes/themify-landing/themify/js/main.js?ver=7.8.2" id="themify-main-script-js"></script><script data-category="functional">window['gtag_enable_tcf_support'] = false;
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', '', {
 cookie_flags:'secure;samesite=none',
 
});</script><script type="application/ld+json">[{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/automatyczne-aktualizacje-wordpressa\/"},"headline":"Automatyczne aktualizacje wordpressa","datePublished":"2023-04-26T14:18:39+02:00","dateModified":"2023-04-26T14:18:39+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Aby wy\u0142\u0105czy\u0107 mo\u017cliwo\u015b\u0107 automatycznych aktualizacji WordPressa, musisz doda\u0107 poni\u017cszy kod w pliku wp-config.php. Najlepiej umie\u015bci\u0107 go przed komentarzem &#8222;To niesamowite, to ju\u017c wszystko!&#8221;, kt\u00f3ry oznacza koniec pliku. Wprowadzenie tej zmiany spowoduje wy\u0142\u0105czenie automatycznych aktualizacji WordPressa, wtyczek i motyw\u00f3w. Je\u015bli chcesz wy\u0142\u0105czy\u0107 tylko aktualizacje rdzenia WordPressa, ale pozwoli\u0107 na automatyczne aktualizacje wtyczek i motyw\u00f3w, u\u017cyj poni\u017cszego [&hellip;]"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/jak-wylaczyc-wymagane-pola-na-stronie-zamowienia-woocommerce\/"},"headline":"Jak wy\u0142\u0105czy\u0107 wymagane pola na stronie zam\u00f3wienia woocommerce","datePublished":"2023-04-25T08:25:37+02:00","dateModified":"2023-04-25T08:37:19+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Czasami zachodzi potrzeba wy\u0142\u0105czenia, niekt\u00f3rych wymaganych p\u00f3l na stronie zam\u00f3wienia. Np. mamy tego typu wysy\u0142k\u0119, \u017ce klient nie chce podawa\u0107 imienia i nazwiska. Albo chce dyskretnie na numer paczkomatu, bez podawania adresu domowego. Oczywi\u015bcie mo\u017cemy zrobi\u0107 to za pomoc\u0105 wtyczki Checkout Field Editor, ale jest ona komercyjna i bez corocznych aktualizacji potrafi popsu\u0107 zaplecze. Dlatego [&hellip;]"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/uzywanie-kodu-html-lub-shortcode-w-opisach-kategorii-produktow\/"},"headline":"Jak wstawi\u0107 kod HTML lub shortcode w opisach kategorii produkt\u00f3w","datePublished":"2023-04-24T14:52:18+02:00","dateModified":"2023-04-25T08:07:51+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Czasami zachodzi potrzeba u\u017cycia bardziej rozbudowanego kodu w opisie kategorii produkt\u00f3w lub u\u017cycia shortcode. Niestety domy\u015blne ustawienia nie pozwalaj\u0105 na to. Musimy wtedy u\u017cy\u0107 drobnej modyfikacji. Oto spos\u00f3b na dodanie obs\u0142ugi shortcode&#8217;\u00f3w i HTML do opis\u00f3w kategorii produkt\u00f3w w WooCommerce: Dzisiaj wyj\u0105tkowo instrukcja dla instalator\u00f3w wtyczek. Powy\u017csze funkcjonalno\u015bci w\u0142\u0105czy dla Was wtyczka WP Editor. Aby [&hellip;]"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/jak-wylaczyc-odzyskiwanie-hasla\/"},"headline":"Jak wy\u0142\u0105czy\u0107 odzyskiwanie has\u0142a","datePublished":"2022-09-08T13:45:57+02:00","dateModified":"2022-09-08T13:45:57+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Sytuacja tak, \u017ce trzeba by\u0142o zmieni\u0107 has\u0142a dla wszystkich admin\u00f3w, ale bez usuwania ich kont. Natomiast trzeba by\u0142o wy\u0142\u0105czy\u0107 mo\u017cliwo\u015b\u0107 odzyskiwania has\u0142a, \u017ceby zablokowany u\u017cytkownik nie m\u00f3g\u0142 go sobie zresetowa\u0107. Oczywi\u015bcie ma\u0142y kod w functions.php"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/pobieranie-aktualnego-kursu-walut-przez-api-nbp\/"},"headline":"Pobieranie aktualnego kursu walut przez API NBP","datePublished":"2022-09-08T13:17:32+02:00","dateModified":"2022-09-08T13:17:33+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Jaki\u015b czas temu zdarzy\u0142o si\u0119 zadanie od klienta, kt\u00f3ry chcia\u0142 mie\u0107 cz\u0119\u015b\u0107 produkt\u00f3w woocommerce z cenami w euro a cz\u0119\u015b\u0107 w z\u0142ot\u00f3wkach. I \u017ceby nie by\u0142o tak prosto to niech jeszcze system przelicza to euro na z\u0142ot\u00f3wki dla klienta. A co tam &#8211; niech je jeszcze przelicza po aktualnych kursach bo przecie\u017c co chwila co\u015b [&hellip;]","image":{"@type":"ImageObject","url":"https:\/\/wphp.pl\/wp-content\/uploads\/2022\/09\/api-nbp.jpg","width":895,"height":226}},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/poczta-interia-nie-dochodza-maile\/"},"headline":"Poczta interia &#8211; nie dochodz\u0105 maile","datePublished":"2022-07-13T01:18:36+02:00","dateModified":"2022-07-13T01:18:37+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Jeden z klient\u00f3w mia\u0142 spory problem. Powiadomienia o zakupach, resetowanie hase\u0142 nie dochodzi\u0142y na skrzynki pocztowe Interia. Niby \u015bmieszny problem bo przecie\u017c ka\u017cdy teraz u\u017cywa gmail, ale akurat u tego klienta 30% klient\u00f3w mia\u0142o konta na interia. Post b\u0119dzie kr\u00f3tki, ale konkretny. Z problemem walczy\u0142em prawie p\u00f3\u0142 roku. Nie pomog\u0142o wysy\u0142anie maili poprzez SMTP &#8211; [&hellip;]"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/wyszukiwanie-postow-tylko-po-tytulach\/"},"headline":"Wyszukiwanie post\u00f3w tylko po tytu\u0142ach","datePublished":"2022-04-01T09:43:05+02:00","dateModified":"2022-04-01T15:01:54+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Temat wydawa\u0142 si\u0119 do\u015b\u0107 prosty, a jednak zaj\u0105\u0142 mi troch\u0119 czasu. Wujek Google wcale nie jest tak \u0142askawy w odpowiedzi na pytanie co zrobi\u0107 aby wyniki wyszukiwania w wordpress obejmowa\u0142y jedynie szukanie po tytu\u0142ach post\u00f3w (produkt\u00f3w) a nie po ca\u0142ej tre\u015bci (opisie)."},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/related-product-produkty-podobne-w-woocommerce\/"},"headline":"Related product &#8211; produkty podobne w woocommerce","datePublished":"2022-03-31T13:24:23+02:00","dateModified":"2022-04-04T20:13:20+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Produkty powi\u0105zane w woocommerce to sekcja w wi\u0119kszo\u015bci szablon\u00f3w, kt\u00f3ra pobiera produkty z naszego sklepu. Domy\u015blnie maj\u0105 one te same tagi lub kategorie co przegl\u0105dany produkt. Przy du\u017cej ilo\u015bci produkt\u00f3w w sklepie, a co gorsza du\u017cej ilo\u015bci kategorii, bardzo losowy dob\u00f3r produkt\u00f3w podobnych mo\u017ce by\u0107 do\u015b\u0107 k\u0142opotliwy. Tym bardziej, \u017ce nie mo\u017cemy ich teoretycznie ustawi\u0107 [&hellip;]"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/jak-przyspieszyc-strone-wylaczajac-odswiezanie-koszyka-woocoomerce\/"},"headline":"Jak przyspieszy\u0107 stron\u0119 wy\u0142\u0105czaj\u0105c od\u015bwie\u017canie koszyka woocoomerce","datePublished":"2022-03-31T11:23:44+02:00","dateModified":"2022-03-31T14:45:34+02:00","author":{"@type":"Person","url":"","name":"Grzegorz Chodacki"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Bardzo cz\u0119sto zdarza si\u0119, \u017ce nasza strona z woocommerce dzia\u0142a wolno. Narz\u0119dzia do testowania pr\u0119dko\u015bci typu GTMetrix, cz\u0119sto pokazuj\u0105, \u017ce wp\u0142yw na pr\u0119dko\u015b\u0107 \u0142adowania strony mo\u017ce mie\u0107 skrypt wc-ajax=get_refreshed_fragments. Generuje on op\u00f3\u017anienia i obci\u0105\u017cenie serwera. Do czego jest on potrzebny, czy jest potrzebny i jak go wy\u0142\u0105czy\u0107?"},{"@context":"https:\/\/schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/wphp.pl\/dodanie-niestandardowych-pol-do-produktu-woocoomerce\/"},"headline":"Dodanie niestandardowych p\u00f3l do produktu WooCoomerce","datePublished":"2021-10-12T10:22:10+02:00","dateModified":"2022-04-01T17:09:50+02:00","author":{"@type":"Person","url":"","name":"Maja S\u0119dziak"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"Zagadnienie dotyczy innego podej\u015bcia ni\u017c przy poprzednim wpisie. Poprzednio dla produkt\u00f3w prostych i produkt\u00f3w z wariantami wyliczana by\u0142a cena za 1m2 na podstawie wymiar\u00f3w produktu po czym wy\u015bwietlana na karcie produktu. Tym razem dodamy dodatkowe pola od strony zaplecza, tj. cen\u0119 (pole input) oraz jednostk\u0119 (pole wyboru select). Trudno\u015b\u0107 polega na tym, \u017ce w zale\u017cno\u015bci [&hellip;]"}]</script> </body>
</html>