Hi @zendevweb,
Thank you for your update and for sharing your requirements.
Based on your needs, our developer colleague has provided a tailored solution that applies the 80mm receipt size specifically to receipt templates, while leaving A4 invoices unaffected. The approach involves checking the template type and applying custom CSS only when printing receipts.
Please update your active theme’s “functions.php” with the following code:
function print_paper_resize() {
$template_type = wcdn_get_template_type();
if ( $template_type === 'receipt' ) {
?>
<style>
/* CSS Media Queries for Print
------------------------------------------*/
@media print {
body {
font-size: 8.5pt;
max-width: 80mm;
margin: auto!important;
font-weight: 550;
}
.shipping-address{
width:80%!important;
}
.billing-address{
width:70%!important;
margin-bottom:1em!important;
}
h2,h3{
margin-bottom:0!important;
}
th{
padding-bottom:0!important;
padding-left:0.5em!important;
}
td{
padding:0.35em 0.35em 0!important;
}
.order-addresses{
margin-bottom:1em!important;
}
.order-info li strong {
font-weight:600!important;
display:inline!important;
padding-right:1.4em!important;
}
.order-info{
margin-bottom:0!important;
}
.order-branding{
margin-bottom:0!important;
}
.product-quantity, .total-quantity{
padding-left:1.8em!important;
}
.includes_tax {
white-space:nowrap!important;
}
.content {
/* Remove padding to not generate empty follow up pages */
padding-bottom: 0;
}
}
</style>
<?php
}
}
add_action( 'wcdn_head', 'print_paper_resize', 10, 1 );
Since you mentioned these are currently too large, you can target these elements more precisely in your CSS. For example, if they have specific classes or IDs, you could add CSS rules like:
/* Example: Adjust font size for specific order details /
.receipt .order-number,
.receipt .order-date,
.receipt .payment-method {
font-size: 0.9em; / or any size you prefer */
}
Please inspect the HTML of your receipt to identify the exact classes or IDs for these elements, then add similar CSS rules within the <style> block above.
Please note that this code applies only to the print view of receipts, ensuring your invoices (A4) remain unaffected. Also, you need to adjust the CSS selectors based on your theme’s HTML structure for precise targeting.
Feel free to implement this solution and let us know if it meets your needs or if you require further customization.