{"id":209,"date":"2026-01-20T00:00:00","date_gmt":"2026-01-19T23:00:00","guid":{"rendered":"https:\/\/helloblog.io\/hr\/woocommerce-10-5-sto-se-mijenja-za-developere\/"},"modified":"2026-01-20T00:00:00","modified_gmt":"2026-01-19T23:00:00","slug":"woocommerce-10-5-sto-se-mijenja-za-developere","status":"publish","type":"post","link":"https:\/\/helloblog.io\/hr\/woocommerce-10-5-sto-se-mijenja-za-developere\/","title":{"rendered":"WooCommerce 10.5: \u0161to se mijenja za developere i na \u0161to pripaziti prije upgradea"},"content":{"rendered":"\n<p>WooCommerce 10.5 je pred vratima i, barem iz developerske perspektive, ovo nije \u201cjo\u0161 jedan minor release\u201d. Fokus je vrlo jasan: manje optere\u0107enja na ActionScheduleru i bazi, stabilniji edge caseovi (porezi), \u010di\u0161\u0107i CSS utjecaj na ostatak admina\/fronta te nekoliko promjena koje mogu zaka\u010diti ekstenzije koje su se oslanjale na interne detalje.<\/p>\n\n\n\n<p>U nastavku je pregled onoga \u0161to je najva\u017enije za web shopove koji rade na prometnim instalacijama, za timove koji grade ekstenzije i za sve koji imaju custom checkout\/SEO\/permalink logiku.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Raspored izdanja (i kako testirati)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>Feature Freeze je zapo\u010deo 12. sije\u010dnja 2026.<\/li>\n\n\n<li>WooCommerce 10.5 Beta 1 je objavljen 19. sije\u010dnja 2026.<\/li>\n\n\n<li>WooCommerce 10.5 Beta 2 je objavljen 26. sije\u010dnja 2026.<\/li>\n\n\n<li>Finalni release je zakazan za 4. velja\u010de 2026.<\/li>\n\n<\/ul>\n\n\n\n<p>Za testiranje beta verzija preporu\u010deni put je slu\u017ebeni <a href=\"https:\/\/woocommerce.com\/products\/woocommerce-beta-tester\/\">WooCommerce Beta Tester plugin<\/a>, koji ti omogu\u0107uje instalaciju beta buildova bez ru\u010dnog \u201cpetljanja\u201d po paketima.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0160to dolazi u WooCommerce 10.5 (klju\u010dne developerske promjene)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1) Velika promjena: import narud\u017ebi u Analytics tablice prelazi na Scheduled Imports<\/h3>\n\n\n\n<p>Najve\u0107a i najkonkretnija promjena u 10.5 je temeljno pobolj\u0161anje na\u010dina na koji WooCommerce importira order podatke u Analytics tablice.<\/p>\n\n\n\n<p>Do sada je WooCommerce za prakti\u010dki svaki \u201corder event\u201d okidao analytics import job preko ActionSchedulera. Iako je to asinkrono, na busy siteovima je u praksi zavr\u0161avalo ogromnim backlogsima (\u010desto 10.000+ akcija), \u0161to onda povla\u010di degradaciju performansi, ja\u010du kontenciju u bazi i op\u0107enita usporavanja.<\/p>\n\n\n\n<p>U 10.5, default postaje <strong>Scheduled Imports<\/strong>: batch procesiranje koje osvje\u017eava analytics podatke <strong>svakih 12 sati<\/strong> i obra\u0111uje <strong>100 narud\u017ebi po batchu<\/strong>.<\/p>\n\n\n\n<p>Oba parametra su prilagodljiva kroz nove filtere:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><code>woocommerce_analytics_import_interval<\/code> (interval osvje\u017eavanja)<\/li>\n\n\n<li><code>woocommerce_analytics_regenerate_batch_size<\/code> (veli\u010dina batcha)<\/li>\n\n<\/ul>\n\n\n\n<p>Bitna posljedica: drasti\u010dno se smanjuje broj scheduled akcija i optere\u0107enje baze, a vlasnici shopova dobivaju jasniji uvid u status importa i mogu\u0107nost ru\u010dnog pokretanja importa kad god treba. Referenca: <a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/61603\">#61603<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2) Checkout block: shipping opcije dobivaju jasniji UI (thumbnaili, paketi) + bugfix synca<\/h3>\n\n\n\n<p>Checkout block dobiva pobolj\u0161an prikaz shipping opcija, posebno u scenarijima gdje postoji vi\u0161e paketa (npr. subscription proizvodi). UI sada mo\u017ee prikazivati thumbnailove proizvoda i vizualno odvojene (bordered) kontejnere za pakete.<\/p>\n\n\n\n<p>Uz to, ispravljen je bug gdje se shipping metode nisu ispravno sinkronizirale pri prebacivanju izme\u0111u \u201cShip\u201d i \u201cPickup\u201d opcija dostave. Referenca: <a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/61625\">#61625<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3) Robusnije prikazivanje narud\u017ebi s legacy\/korumpiranim tax podacima<\/h3>\n\n\n\n<p>Ako si ikad naletio na narud\u017ebe s \u201c\u010dudnim\u201d poreznim podacima (npr. tax vrijednosti spremljene kao float\/string umjesto arraya), 10.5 uvodi pouzdanije, unatrag kompatibilno rukovanje tim slu\u010dajevima.<\/p>\n\n\n\n<p>Fix pokriva sve tipove order itema (proizvodi, shipping, fees), poku\u0161ava inteligentno zaklju\u010diti tax rate ID-eve iz konteksta narud\u017ebe i dodaje filter <code>woocommerce_order_item_legacy_tax_conversion<\/code> za custom konverzijsku logiku ako ti treba specifi\u010dno pona\u0161anje u ekstenziji. Referenca: <a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62271\">#62271<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4) Select2 CSS: stilovi su sada scopeani da ne \u201ccuri\u201d u druge pluginove<\/h3>\n\n\n\n<p>WooCommerce stilovi za Select2 (popularna JS komponenta za napredne select dropdownove) sada su scopeani kroz <code>:where(.woocommerce)<\/code> kako ne bi utjecali na su\u010delja drugih pluginova.<\/p>\n\n\n\n<p>Ovo je dobar kompromis jer <code>:where()<\/code> pseudo-klasa zadr\u017eava nultu specifi\u010dnost, pa postoje\u0107i custom overrideovi (ako si ih ve\u0107 imao) ne bi trebali iznenada prestati raditi, dok se istovremeno smanjuje \u201ckolateralna \u0161teta\u201d na admin ekranima. Referenca: <a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/61956\">#61956<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5) Novi filter <code>woocommerce_shipping_tax_class<\/code> za dinami\u010dko ra\u010dunanje poreza na dostavu<\/h3>\n\n\n\n<p>Uveden je novi filter <code>woocommerce_shipping_tax_class<\/code> koji otvara mogu\u0107nost dinami\u010dkog izra\u010duna poreznih stopa za dostavu na temelju sadr\u017eaja ko\u0161arice, podataka o kupcu i lokacije.<\/p>\n\n\n\n<p>Ovo omogu\u0107uje implementaciju pravila poput \u201cshipping tax prati dominantnu stopu u ko\u0161arici\u201d te rje\u0161avanje kompleksnijih tax scenarija (u objavi se kao primjer spominju zahtjevi poput onih u Nizozemskoj). Referenca: <a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62040\">#59512<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">API promjene i developerske napomene (advisories)<\/h2>\n\n\n\n<p>Uz core promjene, 10.5 povla\u010di i nekoliko \u201cadvisory\u201d tema koje se isplati pro\u010ditati ako radi\u0161 s REST API-jem, oslanja\u0161 se na interne namespaceove ili ima\u0161 custom permalink setup.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>WC REST API sada ispravno hendla <strong>decoding special karaktera<\/strong> za atribute varijacija proizvoda. Detalji: https:\/\/developer.woocommerce.com\/2026\/01\/14\/wc-rest-api-fixes-for-product-variation-attributes-with-special-characters-in-woocommerce-10-5\/<\/li>\n\n\n<li>Trait <strong>AccessiblePrivateMethods<\/strong> \u0107e biti uklonjen. Bio je dio <code>Internal<\/code> namespacea kao jasan signal da nije namijenjen javnom kori\u0161tenju; ekstenzije koje su ga pogre\u0161no koristile mogu puknuti. Detalji: https:\/\/developer.woocommerce.com\/2026\/01\/15\/removal-of-the-accessibleprivatemethods-trait-in-woocommerce-10-5\/<\/li>\n\n\n<li>Promjene u <strong>product permalinkovima baziranim na kategorijama<\/strong>: prioritet dobiva najdublja kategorija radi boljeg SEO-a i konzistentnosti URL-ova, ali utje\u010de samo na specifi\u010dne permalink strukture. Detalji: https:\/\/developer.woocommerce.com\/2026\/01\/13\/product-permalink-changes-coming-in-woocommerce-10-5\/<\/li>\n\n\n<li>Na stranicama <strong>varijabilnih proizvoda<\/strong> gumb <strong>Add to Cart<\/strong> je sada <strong>disabled dok se variation script u potpunosti ne u\u010dita<\/strong>. Na sporijim vezama korisnici su ranije mogli kliknuti prije inicijalizacije logike odabira varijacije, \u0161to je vodilo u failed submit. Detalji: https:\/\/developer.woocommerce.com\/2026\/01\/16\/add-to-cart-button-disabled-by-default-in-variable-products-in-woocommerce-10-5\/<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Performance pobolj\u0161anja u 10.5<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Eksperimentalni REST API cache (primjenjiv na bilo koji endpoint)<\/h3>\n\n\n\n<p>WooCommerce 10.5 uvodi <strong>novi eksperimentalni REST API cache<\/strong> koji se mo\u017ee primijeniti na bilo koji endpoint u WC REST API-ju. Prema najavi, vi\u0161e informacija (uklju\u010duju\u0107i kako testirati) dolazi bli\u017ee samom 10.5 releaseu.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cached variation prices: pobolj\u0161anja + utility klasa za callbackove<\/h3>\n\n\n\n<p>Pobolj\u0161ano je i cacheiranje cijena varijacija, uz dodavanje nove utility klase za rad s callbackovima. Detalji: https:\/\/developer.woocommerce.com\/2026\/01\/08\/variation-prices-caching-improvements-in-woocommerce-10-5\/<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Eksperimentalni Product Object Caching<\/h3>\n\n\n\n<p>Uveden je i <strong>eksperimentalni Product Object Caching<\/strong>: tijekom jednog requesta WooCommerce mo\u017ee cacheirati instance proizvoda kako bi sprije\u010dio ponovna u\u010ditavanja istog proizvoda iz baze. To je posebno korisno na stranicama gdje se isti proizvod \u201cprovu\u010de\u201d kroz vi\u0161e komponenti i hookova.<\/p>\n\n\n\n<p>Implementacija je dostupna kroz PR: https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62041, a dodatni kontekst je ovdje: https:\/\/developer.woocommerce.com\/2026\/01\/19\/experimental-product-object-caching-in-woocommerce-10-5\/<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Product Filters: popravci oko cache podataka + \u010di\u0161\u0107enje transienta<\/h3>\n\n\n\n<p>Ispravljeni su i performance problemi gdje se cache podaci Product Filtersa nisu ispravno postavljali i u\u010ditavali. U praksi je to moglo dovesti do \u201cfloodanja\u201d baze cache zapisima i degradacije performansi na shopovima s velikim katalozima.<\/p>\n\n\n\n<p>A\u017euriran je i WooCommerce alat za cleanup transienta tako da pri pokretanju \u010disti i filter data cache. Ako koristi\u0161 Product Filters block i i dalje vidi\u0161 performance probleme, jedan od mogu\u0107ih uzroka je upravo ovaj cache, a predlo\u017eeno rje\u0161enje je \u010di\u0161\u0107enje WooCommerce transienta. Referenca: <a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62575\">#62575<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Brzi check: \u0161to bih testirao prije produkcijskog upgradea<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>Ako ima\u0161 veliki promet, provjeri pona\u0161anje Analyticsa nakon prelaska na Scheduled Imports (interval i batch size po potrebi prilagodi filterima <code>woocommerce_analytics_import_interval<\/code> i <code>woocommerce_analytics_regenerate_batch_size<\/code>).<\/li>\n\n\n<li>Ako koristi\u0161 Checkout block i ima\u0161 subscription scenarije ili vi\u0161e paketa, pro\u0111i kroz shipping\/pickup toggle i provjeri da UI i sync rade o\u010dekivano.<\/li>\n\n\n<li>Ako ima\u0161 povijesne narud\u017ebe migrirane iz drugih sustava, otvori nekoliko \u201cproblemati\u010dnih\u201d narud\u017ebi i potvrdi da porezni podaci ne ru\u0161e prikaz; po potrebi se zaka\u010di na <code>woocommerce_order_item_legacy_tax_conversion<\/code>.<\/li>\n\n\n<li>Ako si customizirao admin\/front Select2, provjeri je li ti neko su\u010delje ranije implicitno ovisilo o WooCommerce Select2 CSS-u izvan <code>.woocommerce<\/code> scopea.<\/li>\n\n\n<li>Ako radi\u0161 kompleksniji tax setup za dostavu, isprobaj <code>woocommerce_shipping_tax_class<\/code> i provjeri pokriva li pravila koja si ranije rje\u0161avao ru\u010dno.<\/li>\n\n\n<li>Ako tvoja ekstenzija koristi interne WooCommerce detalje, posebno <code>Internal<\/code> namespace, provjeri ovisnost o AccessiblePrivateMethods traitu.<\/li>\n\n\n<li>Ako radi\u0161 s permalink strukturom \u201cpo kategorijama\u201d, testiraj generiranje URL-ova i redirekcije, posebno gdje postoji vi\u0161e kategorija razli\u010dite dubine.<\/li>\n\n\n<li>Na sporijim mre\u017eama testiraj variable product page: Add to Cart je sada disablean dok se skripta ne u\u010dita &#8211; provjeri da ti custom JS\/UI ne o\u010dekuje druga\u010diji flow.<\/li>\n\n\n<li>Ako koristi\u0161 REST API intenzivno, pripazi na promjene oko dekodiranja special karaktera u atributima varijacija, te isprobaj eksperimentalni REST API cache kad upute budu dostupne.<\/li>\n\n\n<li>Ako koristi\u0161 Product Filters block na velikom katalogu, nakon upgradea provjeri DB optere\u0107enje i po potrebi pokreni cleanup WooCommerce transienta.<\/li>\n\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Changelog i slu\u017ebene reference<\/h2>\n\n\n\n<p>Kompletan changelog za 10.5 beta granu dostupan je ovdje: https:\/\/github.com\/woocommerce\/woocommerce\/blob\/10.5.0-beta.1\/plugins\/woocommerce\/readme.txt<\/p>\n\n\n<div class=\"references-section\">\n                <h2>Reference \/ Izvori<\/h2>\n                <ul class=\"references-list\"><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/20\/woocommerce-10-5-whats-coming-for-developers\/\" target=\"_blank\" rel=\"noopener noreferrer\">WooCommerce 10.5: What&#039;s coming for developers Release Posts<\/a><\/li><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/14\/wc-rest-api-fixes-for-product-variation-attributes-with-special-characters-in-woocommerce-10-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">WC REST API fixes for product variation attributes with special characters in WooCommerce 10.5<\/a><\/li><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/15\/removal-of-the-accessibleprivatemethods-trait-in-woocommerce-10-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">Removal of the AccessiblePrivateMethods trait in WooCommerce 10.5<\/a><\/li><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/13\/product-permalink-changes-coming-in-woocommerce-10-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">Product permalink changes coming in WooCommerce 10.5<\/a><\/li><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/16\/add-to-cart-button-disabled-by-default-in-variable-products-in-woocommerce-10-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">Add to cart button disabled by default in variable products in WooCommerce 10.5<\/a><\/li><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/08\/variation-prices-caching-improvements-in-woocommerce-10-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">Variation prices caching improvements in WooCommerce 10.5<\/a><\/li><li><a href=\"https:\/\/developer.woocommerce.com\/2026\/01\/19\/experimental-product-object-caching-in-woocommerce-10-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">Experimental product object caching in WooCommerce 10.5<\/a><\/li><li><a href=\"https:\/\/woocommerce.com\/products\/woocommerce-beta-tester\/\" target=\"_blank\" rel=\"noopener noreferrer\">WooCommerce Beta Tester<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/blob\/10.5.0-beta.1\/plugins\/woocommerce\/readme.txt\" target=\"_blank\" rel=\"noopener noreferrer\">Full changelog (10.5.0-beta.1)<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/61603\" target=\"_blank\" rel=\"noopener noreferrer\">PR #61603<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/61625\" target=\"_blank\" rel=\"noopener noreferrer\">PR #61625<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62271\" target=\"_blank\" rel=\"noopener noreferrer\">PR #62271<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/61956\" target=\"_blank\" rel=\"noopener noreferrer\">PR #61956<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62040\" target=\"_blank\" rel=\"noopener noreferrer\">PR #62040<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62041\" target=\"_blank\" rel=\"noopener noreferrer\">PR #62041<\/a><\/li><li><a href=\"https:\/\/github.com\/woocommerce\/woocommerce\/pull\/62575\" target=\"_blank\" rel=\"noopener noreferrer\">PR #62575<\/a><\/li><\/ul>\n            <\/div>","protected":false},"excerpt":{"rendered":"<p>WooCommerce 10.5 donosi ozbiljan zaokret u importu podataka u Analytics tablice, nekoliko bitnih filtera i niz performance pobolj\u0161anja. Ako odr\u017eava\u0161 custom ekstenzije ili radi\u0161 na ve\u0107im shopovima, ovo je verzija koju vrijedi testirati prije produkcije.<\/p>\n","protected":false},"author":42,"featured_media":208,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31],"tags":[107,28,106,41,10],"class_list":["post-209","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress-ekosustav","tag-checkout","tag-performanse","tag-rest-api","tag-woocommerce","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/posts\/209","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/comments?post=209"}],"version-history":[{"count":0,"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/posts\/209\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/media\/208"}],"wp:attachment":[{"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/media?parent=209"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/categories?post=209"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helloblog.io\/hr\/wp-json\/wp\/v2\/tags?post=209"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}