Admin felület

Prestashop rendelés nyomtatásának testreszabása

Prestashop rendelés nyomtatásának testreszabása

A cikk eredeti megjelenése: 2016. december 3. – a PrestaShop azóta sokat változott. Az elvek ma is hasznosak lehetnek, de a lépések a mai (8.x, 9.x) verzióknál eltérhetnek. Kérdezz bátran!

Sokunknál felmerülő probléma, hogy a rendelés nyomtatása során sok felesleges adat kerül a papírra – ami gyakran 2-3 oldal is lehet. Ez adminisztratív szempontból elég bosszantó, nem is beszélve a papír és tintaköltségekről.

prestashop_nyomtatas_testreszabasa

A jó hír, hogy meglehetősen egyszerűen testre lehet szabni azt a felületet amit a Prestashop kinyomtat. Kódmódosításra lesz szükség, így a legeslegelső dolog a backup / mentés az adott fájlról. Azaz erről, ezzel fogunk dolgozni:

"/admin/themes/default/template/controllers/orders/helpers/view/view.tpl"

Ez a fájl tartalmazza azokat a blokkokat amelyeket látunk akkor, amikor megnyitunk egy rendelést adminban.

Így néz ki egy rendelési oldal 1.6.x-ben:

prestashop_eredeti_rendelesoldal

És így fest ennek a nyomtatási-nézete (ami rögtön két oldallá hízik):
prestashop_eredeti_nyomtatasi_oldal
 
2. oldal:
 
prestashop_eredeti_nyomtatasi_oldal2
 
 

Tematika

Az a feladatunk, hogy a nem kellő blokkoknak „hidden-print” osztályt adjunk, vagy hidden-print div-be ágyazzuk azt. Ez a két produktív módszer van.

 

Tehát vagy beágyazzuk ekképp:

 
<div class="hidden-print">
<p>nyomtatáskor elrejtendő blokk, ablak, szöveg, bármi</p>
</div>

 

Vagy az elrejtendő blokk eredeti class-át módosítjuk, például így:

eredeti:

<div class="tab-pane" id="documents">
<h4 class="visible-print">{l s='Documents'} <span class="badge">({$order->getDocuments()|@count})</span></h4>
<div class="visible-print">{* Include document template *}
{include file='controllers/orders/_documents.tpl'}</div>

</div>

 

Módosított:

<div class="tab-pane" id="documents">
<h4 class="hidden-print">{l s='Documents'} <span class="badge">({$order->getDocuments()|@count})</span></h4>
<div class="hidden-print">{* Include document template *}
{include file='controllers/orders/_documents.tpl'}</div>
</div>

 

 

Még egy példa amikor beágyazunk:

eredeti:
prestashop_kodmodositas_elottmódosított:
prestashop_kodmodositas_utan

(A záró „</div>” nincs a képeken.)

A blokkok minden esetben el vannak nevezve vagy kommentelve vannak így megtalálhatjuk a Számunkra haszontalan részeket a nyomtatás során.  Miután kigyomláltuk ezeket, megkaphatjuk az egyoldalas nyomtatandó felületet végeredményül:

prestashop_uj_nyomtatasi_oldal

Sok sikert! 😉 Eladásra fel! 🙂

 
 

Puizl Attila

PrestaShop fejlesztő · Hivatalos PrestaShop Nagykövet

17 éve készítek, fejlesztek és tartok karban PrestaShop webáruházakat. Több száz hazai és külföldi webshop viseli a kézjegyem, és 2010 óta segítek a magyar PrestaShop közösségben.

Bemutatkozás és ügyfélvélemények →

Szólj hozzá!

Az e-mail címed nem jelenik meg. A hozzászólások jóváhagyás után válnak láthatóvá. Részletek: Adatkezelési tájékoztató.