Feltöltés: mennyiség fájlonként, PDF-oldalszám és külső tárhely
Több kép feltöltése fájlonkénti mennyiséggel, a feltöltött PDF oldalszámának használata számításban, és a feltöltések áthelyezése felhőtárhelyre.
Az itt leírt megoldások a Speciális feltöltések (Advanced Uploads) kiegészítőt igénylik, a mennyiség fájlonként megoldás ezen felül a Speciális számítások (Advanced Calculations) kiegészítőt is. A külső tárhelyre mentés a bővítmény 3.26.9-es vagy újabb változatát kéri.
Több kép feltöltése, fájlonkénti mennyiséggel
Szekció neve “Több kép feltöltése, fájlonkénti mennyiséggel”Ezzel a beállítással a vásárló több képet tölthet fel, és mindegyikhez megadja, hány példányt kér (például nyomtatott képből). Az egy darabra eső ár egy keresési táblázatból jön, a teljes mennyiség alapján.
- Hozz létre egy Szám típusú mezőt, és jegyezd fel az azonosítóját. Címke nem kell hozzá: a bővítmény elrejti a termékoldalon. Ebbe kerül az összes fájl mennyiségének összege.
- Hozz létre egy Feltöltés mezőt, és kapcsold be rajta a Több feltöltés engedélyezése?, az Ár feltöltésenként? és a Mennyiség feltöltésenként beállítást. A Közös mennyiség mező azonosítója beállításba írd be az 1. lépésben létrehozott szám mező azonosítóját.
- Készíts keresési táblázatot a darabárakkal. A Speciális számítások kiegészítővel CSV-fájlt tölthetsz fel egy vagy több árlistával, vagy a vezérlőpulton is összeállíthatod. Például 10 és 49 darab között 0,25 az ár, 50 és 399 darab között 0,20. Az ár függhet a mérettől is: egy kisebb kép olcsóbb lehet, mint egy nagyobb.
- Egy csoportban hozz létre egy Számítás mezőt a darabárhoz. A Képlet értéke
{look_up_table}, az Y mező azonosítója a közös mennyiség mezőé, a Keresési táblázat mezőben pedig válaszd ki az árlistát. - Hozz létre még egy Számítás mezőt a termék teljes árához. A képlete a közös mennyiség mező és a darabár mező szorzata, a Művelet értéke pedig Termékár beállítása.
- Ha az ár a mérettől vagy a formátumtól is függ, tedd a számítási mezőket csoportba, és adj a csoportnak feltételt (például csak akkor jelenjen meg, ha a Méret mező értéke 10 x 10). Másold le a csoportot a többi opcióhoz, és módosítsd a feltételt és a használt keresési táblázatot.
A termékoldalon minden feltöltött fájl mellett megjelenik egy mennyiségbevitel, ezek összege tölti ki az elrejtett szám mezőt.
A feltöltött PDF oldalszáma a számításban
Szekció neve “A feltöltött PDF oldalszáma a számításban”A feltöltött PDF oldalszámát a {field_xxx_pdf_count} címkével használhatod számításban, ahol az xxx a Feltöltés mező azonosítója.
- Nyisd meg a WooCommerce → Beállítások → Termékkiegészítők → Feltöltések oldalt.
- Kapcsold be a PDF-feltöltések engedélyezése és a PDF oldalszám beállítást.
- Kattints a Módosítások mentése gombra.
- Hozz létre egy Feltöltés mezőt, és kapcsold ki rajta a Több feltöltés engedélyezése? beállítást, mert a számítás egyszerre csak egy fájlt olvas.
- Hozz létre egy Számítás mezőt, amelynek képlete a feltöltés mezőre hivatkozik. A PDF feltöltésekor a számítás megkapja az oldalszámot.
Hibaelhárítás: ha a vásárló ezt a hibaüzenetet látja: „There was an error in getting the PDF page count”, a PDF olyan tömörítést használ, amelyet a beépített (ingyenes FPDI) olvasó nem támogat. Ilyenkor a wcpauau_page_count_method szűrővel válthatsz másik módszerre. A szűrő alapértéke preg_match_all; ha a kiszolgálón telepítve van az Imagick PHP-bővítmény, visszaadhatod az imagick értéket:
add_filter( 'wcpauau_page_count_method', function () { return 'imagick';} );Feltöltések áthelyezése külső tárhelyre
Szekció neve “Feltöltések áthelyezése külső tárhelyre”A feltöltött fájlokat a médiatár közvetítésével felhőtárhelyre (például Amazon S3) is küldheted. Ehhez kell egy áthelyező bővítmény, amely a médiatár új fájljait magától felismeri, és a tárhelyszolgáltatónál egy fiók. A módszert a WP Offload Media ingyenes változatával próbálták ki, hasonló bővítménnyel is működnie kell. A WP Offload Media nem támogatja a Google Drive-ot: ahhoz olyan bővítmény kell, amely a médiatárból Google Drive-ra áthelyez (például a Next3 Offload).
A működés: a kódrészlet a feltöltött fájlt a bővítmény saját feltöltési mappájából a médiatárba mozgatja, az áthelyező bővítmény észleli az új médiatárelemet, elküldi a tárhelyre, és az új webcím kerül a feltöltött fájlhoz.
- Telepítsd és kapcsold be az áthelyező bővítményt (például WP Offload Media).
- Hozz létre fiókot a tárhelyszolgáltatónál (például Amazon S3).
- Állítsd be az áthelyező bővítményt a saját útmutatója szerint.
- Add hozzá a webhelyhez a kódrészletet. Több beállítás nincs.
A kódrészlet három részből áll:
- a
pewc_offload_mediaszűrőt igazra állítja:add_filter( 'pewc_offload_media', '__return_true' ); - egy függvény minden feltöltött fájlnál kikapcsolja a köztes képméretek generálását, a
media_handle_sideload()hívással a médiatárba mozgatja a fájlt, frissíti az elérési utat és a webcímet, majd törli az eredeti és az ideiglenes fájlt; ha az áthelyezés nem sikerül, törli a feltöltést, és az eredeti adatokat adja vissza, - egy függvény a
pewc_after_ajax_uploadszűrőre kötve, amely akkor futtatja az áthelyezést, ha apewc_offload_mediaszűrő aktív.
Korlátozások:
- A fájl a feltöltés pillanatában a médiatárba kerül, még a kosárba tétel és a fizetés előtt. Így olyan fájl is feltöltődhet, átkerülhet és tárolódhat, amelyhez végül nem lesz rendelés.
- A módszer még tesztelés alatt áll.
Készült: