pico hosting ผู้ให้บริการ Web hosting จดโดเมนราคาประหยัด
บทความ: การแก้ไขให้ PrestaShop (V1.0RC5) แสดง Invoice เป็นภาษาไทย

PrestaShop ใช้ FPDF ซึ่งเป็น PHP script สำหรับสร้างไฟล์ PDF ด้วย PHP แต่ FPDF นั้นยังไม่มีภาษาไทยมาให้ เราจึงจำเป็นต้องเข้าไปเพิ่มภาษาไทยเอง และสำหรับการแก้ไขให้ PrestaShop แสดง Invoice เป็นภาษาไทยได้นั้น ต้องเพิ่ม Font ที่เป็นภาษาไทยเข้าไป และต้องไปแก้ไข code ในไฟล์ classes/PDF.php ด้วย สำหรับตัวอย่างนี้ผมจะใช้ font ของ AngsanaNew, AngsanaNew-Bold ทำให้ดูเป็นตัวอย่าง
ขั้นตอนการแก้ไข
- - ดาวน์โหลดไฟล์ fpdf-angsana.zip แล้วแตกไฟล์ออกมา จะได้ไฟล์ 4 ไฟล์คือ angsa.php, angsa.z, angsab.php, angsb.z ให้อัพโหลดไฟล์ดังกล่าวไปไว้ที่ directory /tools/fpdf/font
- - ต่อไปก็เข้าไปแก้ไขไฟล์ /classes/PDF.php โดยให้ค้นหาข้อความ $pdf = new PDF('P', 'mm', 'A4'); แล้วเพิ่ม
$pdf->AddFont('angsa','','angsa.php');
$pdf->AddFont('angsa','B','angsab.php');
เข้าไปในบรรทัดถัดไป - - เนื่องจากฟอนต์ของ Angsna มันมีขนาดที่เล็กกว่าฟอนต์ที่ PrestaShop กำหนดมา เราจึงต้องเข้าไปกำหนดขนาดของ Font ใหม่ โดยให้ค้นห้า $pdf->SetFont(self::fontname(), '', xx); ในไฟล์ /class/PDF.php แล้วแก้ขนาดของตัวอักษรตามที่เราต้องการ เช่นต้องการใช้ขนาดตัวอักษรเป็น 16 ก็แก้เป็น $pdf->SetFont(self::fontname(), '', 16); ครับ
- - หลังจากนั้นให้เข้าไปตั้งค่าใน Back office->Preferences->PDF ดังรูป
สำหรับใครที่ต้องการใช้ Font อื่นนอกเหนือจาก Angsana แล้ว สามารถดาวน์โหลด ttf2pt1.sourceforge.net มาแปลง Font ได้ตามต้องการครับ ถ้ามีเวลาเดี๋ยวจะมาอธิบายวิธีการแปลง Font ด้วย ttf2pt1 ให้อ่านกันอีกทีครับ
หมายเหตุ: วิธีนี้ทดสอบกับ PrestaShop V1.0RC5 นะครับ
Quick Help.


