Preskoči na vsebino

Nastavitve piškotkov

Za vsako vrsto izberite, katere piškotke dovolite. Svojo izbiro lahko kadar koli spremenite prek povezave Nastavitve piškotkov na dnu vsake strani. Izjava o zasebnosti

Nujni

Vedno vklopljeno

Potrebni so za prijavo, shranjevanje košarice in pomnjenje Vaših izbir. Vedno so vklopljeni.

Kateri piškotki?
  • weboke_sessie, weboke_klant, weboke_remember: Vaša seja in ohranjanje prijave
  • weboke_basket: Vaša košarica
  • wkBtwIncl: prikaz cen z DDV ali brez DDV
  • wok_cookies: Vaša izbira glede piškotkov, 12 mesecev

Meri, kateri oglas vodi do obiska ali naročila, da ne plačujemo za oglase, ki ne prinesejo ničesar.

Kateri piškotki?
  • Google Ads prek Google Tag Manager (_gcl_au, _gcl_aw), do 90 dni
  • OpenAI Ads, oglasi v ChatGPT
  • wok_aff: prek katerega partnerja ste prišli k nam (partnerski program), 60 dni

4,6

Država in jezik

Vsaka država ima svojo spletno stran, s cenami in DDV za to državo.

Prikaži

Digitalni in virtualni izdelki

Modul 3: Izdelki · Čas branja: 11 minut

Učni cilj: Po tej lekciji boste znali varno prodajati digitalne in virtualne izdelke: izbrali boste varen način prenosa, zaščitili mapo s prenosi, nastavili omejitve in pravilno uredili pravico do odstopa od pogodbe pri digitalni vsebini.

Ključni pojmi: virtualen izdelek, prenosljiv izdelek, povezava za prenos, omejitev prenosov, datum poteka, način prenosa datotek (Vsili prenašanje, X-Accel-Redirect/X-Sendfile, Samo preusmeritev), woocommerce_uploads, .htaccess, nginx, odobrene mape za prenose (Approved download directories), dostop po plačilu, digitalna vsebina, izrecno soglasje, odpoved pravici do odstopa od pogodbe

Virtualen in prenosljiv: dve različni potrditveni polji

Pri enostavnem izdelku ali različici vidite dve potrditveni polji. Podobni sta si, vendar opravljata različno nalogo:

  • Virtualen (Virtual) pomeni: nič se ne pošilja. WooCommerce ne zaračuna stroškov pošiljanja in pri zaključku nakupa ne zahteva naslova za dostavo (če je vse v košarici virtualno). Pomislite na degustacijo čaja na lokaciji, darilni bon, ki ga pošljete po e-pošti, ali spletno delavnico.
  • Prenosljiv (Downloadable) pomeni: po plačilu kupec prejme eno ali več datotek. WooCommerce za vsakega kupca ustvari povezavo za prenos in jo prikaže v potrditvenem e-sporočilu ter pod Moj račun > Prenosi.

Digitalna knjiga receptov v obliki PDF je običajno oboje: nič ne gre po pošti, obstaja pa datoteka. Tiskana knjiga receptov z brezplačnim PDF-jem je prenosljiva, ni pa virtualna: knjiga gre namreč po pošti.

Theehuis Example prodaja »Knjigo receptov Čaj in torta« kot PDF za € 9,95. Potrditveni polji: virtualen in prenosljiv.

Kako deluje prenos in zakaj je način pomemben

Ko pri prenosljivem izdelku naložite datoteko, jo WooCommerce shrani v mapo wp-content/uploads/woocommerce_uploads/. Privzeto imenu datoteke doda naključen niz znakov (nastavitev »Append a unique string to filename for security«, ki je privzeto vklopljena). Kupec tega naslova nikoli ne dobi, temveč povezavo do Vaše trgovine s ključem naročila in kodo za prenos. WooCommerce ob vsakem kliku preveri: ali ta prenos pripada plačanemu naročilu, ali omejitev še ni dosežena, ali prenos še ni potekel? Šele nato kupec prejme datoteko.

Kako datoteka nato pride do kupca, izberete pod WooCommerce > Nastavitve > Izdelki > Prenosljivi izdelki, pri načinu prenosa datotek (File download method):

NačinKako delujeVarnost
Vsili prenašanje (Force downloads, privzeto)PHP prebere datoteko in jo sam pošlje naprejPravi naslov ostane skrit. Velike datoteke se lahko na nekaterih strežnikih zatikajo ali naletijo na časovno omejitev PHP
X-Accel-Redirect/X-SendfilePHP preveri, spletni strežnik pošlje datotekoEnako varno in boljše za velike datoteke; spletni strežnik mora to podpirati (pri Apache je za to potreben modul mod_xsendfile, nginx pozna X-Accel-Redirect). Vprašajte svojega ponudnika gostovanja
Samo preusmeritev (Redirect only)WooCommerce kupca preusmeri na pravi naslov datotekeNevarno: kdor ima naslov, ga lahko deli, datoteko pa je mogoče prenesti brez nakupa. WooCommerce ga sam označuje kot »Insecure«

Izberite torej Vsili prenašanje ali X-Sendfile. Preusmeritev je le zasilna rešitev, nastavitev »Allow using redirect mode (insecure) as a last resort« pa omogoči, da se WooCommerce vrne na preusmeritev, če drugi način ne deluje; pustite jo izklopljeno, razen če veste, zakaj jo potrebujete.

Zaščita mape

Pri načinu Vsili prenašanje ali X-Sendfile mora biti mapa woocommerce_uploads zaprta za običajne obiskovalce. Sicer lahko nekdo, ki ugane ime datoteke ali ga razbere iz povezave, ki je ušla v javnost, datoteko prenese neposredno. WooCommerce zato ob namestitvi v to mapo shrani dve datoteki:

  • prazno index.html, da mapa ne prikazuje seznama datotek;
  • .htaccess z deny from all (pri načinu Samo preusmeritev: Options -Indexes).

Datoteka .htaccess deluje na Apache in LiteSpeed (kot pri WebOké in mnogih drugih deljenih gostovanjih). Na nginx spletni strežnik datoteke .htaccess ne bere. Tam mora biti v konfiguraciji strežnika pravilo, ki mapo blokira. Pri upravljanem gostovanju nginx to včasih uredi ponudnik gostovanja; na lastnem VPS morate to storiti sami. WooCommerce to sam preverja in v skrbništvu (ter v Zdravje spletišča) prikaže obvestilo, če se zdi, da mapa ni zaščitena.

Na nekaj stvari bodite pozorni:

  • Prazen odgovor 200 ni dokaz. Če zahtevate mapo in vidite prazno stran, je to lahko prazna datoteka index.html, medtem ko so same datoteke odprte. Zato preizkusite tudi eno datoteko (naloga to naredi).
  • Zunanje datoteke. Pri izdelku lahko navedete tudi povezavo do datoteke drugje. Za to ima WooCommerce seznam odobrenih map za prenose (Approved download directories): kot prenos se smejo uporabiti le datoteke iz teh map ali s teh naslovov. Tako nihče s skrbniškimi pravicami pri izdelku ne more pomotoma ali namenoma ponuditi poljubne datoteke s strežnika kot prenos. Seznam naj bo kratek.
  • Varnostne kopije in testno okolje (staging). Mapa je del Vaše varnostne kopije. V testnem okolju so torej tudi Vaše plačljive datoteke: zaščitite testno okolje (lekcija 7.3).

Omejitve in dostop

Za vsak prenosljiv izdelek ali različico nastavite:

  • Omejitev prenosov (Download limit): kolikokrat sme kupec prenesti datoteko. Prazno pomeni neomejeno. Omejitev na primer 5 prenosov omeji deljenje, vendar povzroči pritožbe, ko si nekdo kupi nov prenosnik. Izberite nekaj razumnega in pomagajte kupcem, ki Vas za to prosijo.
  • Datum poteka (Download expiry): po koliko dneh povezava preneha delovati.

Splošne nastavitve pod Prenosljivi izdelki:

  • Prenosi zahtevajo prijavo (Downloads require login), privzeto izklopljeno. Vklop pomeni, da gostje ne morejo ničesar prenesti; vklopite to le, če zahtevate tudi uporabniške račune.
  • Dostop po plačilu (Grant access to downloadable products after payment), privzeto vklopljeno: kupec lahko prenaša, ko ima naročilo status V obdelavi, torej takoj po uspešnem plačilu. Če je izklopljeno, šele po statusu Zaključeno.

Odstop od pogodbe pri digitalni vsebini

Pri običajnem čajniku ima kupec 14 dni za premislek (lekcija 5.2). Pri prenosu je to težavno: kdor ima PDF, ga ima tudi po odstopu od pogodbe. Zato obstaja izjema, vendar le pod pogoji. V EU je določena v členu 16 direktive 2011/83/EU; na Nizozemskem v členu 6:230p, točka g, nizozemskega civilnega zakonika (BW). Pravice do odstopa od pogodbe ni pri digitalni vsebini, ki ni dobavljena na materialnem nosilcu, če:

  1. se je dobava začela z izrecnim predhodnim soglasjem potrošnika;
  2. je potrošnik izjavil, da se s tem odpoveduje pravici do odstopa od pogodbe; in
  3. ste Vi to potrdili (v potrditvi pogodbe, na trajnem nosilcu podatkov, kot je e-sporočilo o naročilu).

Če manjka katerikoli od teh treh pogojev, kupec ohrani pravico do odstopa od pogodbe, tudi če je datoteko že prenesel. V Belgiji in Nemčiji velja enako pravilo EU v njunih lastnih zakonih (glejte lekcijo 5.2). V Sloveniji to ureja Zakon o varstvu potrošnikov (ZVPot-1).

WooCommerce tega ne uredi samodejno. Potrebujete:

  • obvezno potrditveno polje pri zaključku nakupa, samo kadar je v košarici digitalna vsebina, z besedilom, kot je »Strinjam se, da se dobava začne takoj, in vem, da s tem izgubim pravico do odstopa od pogodbe«;
  • enako besedilo kot potrditev v e-sporočilu o naročilu za te izdelke;
  • ustrezen stavek v Vaših informacijah o odstopu od pogodbe, da to velja za prenose.

Obstajajo razširitve, ki dodajo takšno potrditveno polje; tudi blok za zaključek nakupa omogoča dodatna polja. Ocenite jih kot vsak drug vtičnik. Potrditveno polje, ki je vnaprej označeno, ne šteje za izrecno soglasje (lekcija 5.4).

Bodite pozorni na razliko z virtualnimi storitvami, kot je delavnica na določen datum. Tam veljajo pravila za storitve, z drugačnimi izjemami. Preberite lekcijo 5.2.

Povzetek

  • Virtualen = nič se ne pošilja; prenosljiv = datoteke po plačilu. PDF je običajno oboje.
  • Izberite Vsili prenašanje ali X-Accel-Redirect/X-Sendfile; Samo preusmeritev je nevarna.
  • Mapa woocommerce_uploads mora biti zaprta: .htaccess na Apache in LiteSpeed, pravilo strežnika na nginx. Preizkusite pravo datoteko, ne le mape.
  • Seznam odobrenih map za prenose naj bo kratek, nastavite razumne omejitve.
  • Pri prenosih pravice do odstopa od pogodbe ni le ob izrecnem soglasju, odpovedi pravici in potrditvi; WooCommerce tega ne uredi samodejno. V Sloveniji to ureja Zakon o varstvu potrošnikov (ZVPot-1).

Kviz

1. Theehuis Example prodaja tiskano knjigo receptov z brezplačnim PDF-jem. Kateri potrditveni polji označite?



2. Zakaj je način prenosa »Samo preusmeritev« nevaren?



3. Vaša trgovina deluje na nginx. Ali datoteka .htaccess, ki jo WooCommerce shrani v woocommerce_uploads, takrat zadošča?



4. Kupec kupi PDF, ga takoj prenese in dva dni pozneje odstopi od pogodbe. Pri zaključku nakupa ni bilo potrditvenega polja o izgubi pravice do odstopa od pogodbe. Kaj velja?



5. Čemu služi seznam »odobrene mape za prenose«?



Naloga

Naloga A3.3: Ali so Vaši prenosi zaščiteni? Ta naloga zahteva poti, ki niso povezane, zato deluje le za Vašo lastno trgovino. Najprej dokažete, da je domena Vaša: nastavite zapis TXT _weboke-cursus.<vaša domena> s kodo, ki jo prejmete, ali objavite datoteko /.well-known/weboke-cursus-<code>.txt, v kateri je ta koda. Nato vnesite naslov svoje trgovine in, če želite, pot ene datoteke za prenos, kot jo WooCommerce prikaže pri izdelku (začne se z /wp-content/uploads/woocommerce_uploads/). Program zahteva mapo (brez sledenja preusmeritvam, samo začetek) in, če ste vnesli pot, enkrat glave te datoteke. Zeleno, če mapa vrne 401, 403 ali 404 oziroma stran brez seznama datotek, datoteka pa vrne 401, 403 ali 404. Oranžno, če niste vnesli datoteke: takrat je preverjena le mapa, prazna stran pa ne pove dovolj. Rdeče, če mapa prikaže seznam datotek ali če je datoteko mogoče preprosto prenesti (200): takrat jo lahko vsakdo z naslovom prenese brez nakupa. Program shrani samo statusne kode, nikoli datoteke.

Vprašanje zase (se ne preverja): kateri način prenosa datotek je nastavljen v Vaši trgovini in kako ste uredili odstop od pogodbe pri svojih digitalnih izdelkih?

Naloga A3.3: Ali so Vaši prenosi zaščiteni?

Ta kontrola zahteva poti, ki jih preverjamo samo pri Vaši lastni spletni trgovini. Najprej kliknite »Prikaži mojo kodo« in to kodo dodajte kot zapis TXT na _weboke-cursus.<Vaša domena> ali kot datoteko na Vaše spletno mesto (glejte navodila ob kodi).



Tega, kar vnesete, in tega, kar najdemo, ne shranjujemo. Vaš brskalnik si zapomni Vaše odgovore in to, ali ste nalogo opravili. Če ste prijavljeni, v Moji tečaji shranimo samo podatek, da ste nalogo (skoraj) pravilno opravili; tudi to lahko tam izbrišete.

Za nadaljnje branje

Baza znanja opisuje stanje pri WebOké (LiteSpeed, .htaccess deluje); pri drugih ponudnikih deluje podobno, razen na nginx.

Trenutek…

Nastavite svoje domene

Za vsako domeno uredite imenske strežnike, povezavo z gostovanjem in kdo bo imetnik.

Nalaganje Vaših domen…