Category Archives: PrestaShop 1.5

ตั้งค่าใช้งาน gmail (smtp) ใน PrestaShop 1.5

ใน PrestaShop มีช่องทางในการส่งอีเมล์อยู่ลองช่องทางคือ PHP Mail กับ SMTP โดยตัวเลือกปกติเราจะใช้กันที่ PHP Mail ทีนี้เราลองมาเปลี่ยนมาใช้ SMTP กันบ้าง ขอเลือกใช้ SMTP จาก gmail มาเป็นตัวอย่าง มาดูกันว่าต้องทำยังไงกันบ้างครับ

[D.I.Y] มาดัดแปลง module blocknewproducts ให้แสดงผลในตำแหน่ง home กัน

Module blocknewproducts ปกติจะมีการแสดงผลทางด้านซ้ายและขวาเท่านั้น แต่ถ้าเราอยากจะให้แสดงผลตรงกลางเหมือนกับ module homefeatured เราจะต้องทำยังไงบ้าง มาลองทำกันดู

สิ่งที่ต้องเตรียมมีดังนี้
- Text editor อะไรก็ได้แล้วแต่ถนัด
- Module blocknewproducts.php เป็นส่วนที่เราจะแก้ไข
- Tpl ของ module homefeatured (homefeatured.tpl) เอาไว้เป็นแม่แบบ

มาเริ่มกันเลยดีกว่า

- ให้ทำการ copy ไฟล์ homefeatured.tpl ไปยัง
modules/blocknewproducts แล้วเปลี่ยนชื่อเป็น blockhomenewproducts.tpl จะใช้ชื่ออื่นต่างจากนี้ก็ได้นะครับ
- เปิด blocknewproducts.php ด้วย Text editor ที่เตรียมไว้จากนั้นเราจะค่อยเพิ่ม php code ลงไปทีละจุดเริ่มจาก

public function install()

ให้แทรกชุดคำสั่ง

!$this->registerHook('displayHome')

ดูภาพด้านล่างประกอบ

ต่อมาที่ให้เพิ่ม code ตามด้านล่างนี้ ดูภาพด้านล่างประกอบ

public function hookDisplayHome($params)
{
     $newProducts = Product::getNewProducts((int)($params['cookie']->id_lang), 0,
          (int)(Configuration::get('NEW_PRODUCTS_NBR')));

     if (!$newProducts && !Configuration::get('PS_BLOCK_NEWPRODUCTS_DISPLAY'))
          return;

     $this->smarty->assign(array(
          'products' => $newProducts,
          'add_prod_display' => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'),
          'homeSize' => Image::getSize('home_default'),
     ));

     return $this->display(__FILE__, 'blockhomenewproducts.tpl');
}



ต่อมาเรามาแก้ไขในส่วนของ blockhomenewproducts.tpl เพื่อให้รองรับการแปลภาษาสำหรับ module blocknewproducts นะครับ อย่าได้ช้าลงมือกันต่อ เปิดไฟล์ แล้วค้นหาคำว่า

mod='homefeatured'

จากนั้นให้แก้ไขเป็น

mod='blocknewproducts'

เป็นอันเสร็จสำหรับส่วนนี้ แต่ถ้าใครอยากจะเปลี่ยนคำไหนเป็นอะไรก็ตามสะดวกเลยครับ ยกตัวอย่างสักตัว เช่น

{l s='Featured products' mod='homefeatured'}

ก็เปลี่ยนเป็น

{l s='New products' mod='blocknewproducts'}

s='New products' คือส่วนของคำที่เราจะเอาไปแสดงและแปลเป็นภาษาอื่น ๆ นะครับ

จบในส่วนที่จำเป็นต้องแก้ไขแล้ว เราก็มาต่อในส่วนของ Backoffice กันเลย สิ่งที่เราจะต้องทำหลังจากนี้คือ
- reset module หรือ uninstall และ install ใหม่
- แปลภาษาเพิ่มเติมสำหรับ tpl ที่เพิ่มเข้าไปใหม่

ผลสำเร็จจะเป็นตามภาพด้านล่างนี้ครับ

จบ. กันง่าย ๆ แบบนี้แหละ ^^ ถ้าเขียนไม่เข้าใจยังไงถามได้นะครับ

*** เนื้อหาการดัดแปลงจะอ้างอิงกับ Module ใน PrestaShop 1.5 นะครับ สามารถนำไปประยุกต์กับ 1.4 ได้เหมือนกัน


หากมีข้อสงสัยหรืออยากแบ่งปันความเห็นของท่าน ยินดีรับฟังและร่วมออกความเห็นได้ที่กลุ่ม PrestaShop Thailand เชิญได้ที่ http://www.facebook.com/groups/prestashop.th ครับ
หรือบ้านใหม่อีกแห่งใน G+ ที่ https://plus.google.com/communities/107595456751483898239

ส่วนใครได้ใช้ Google+ แล้ว แต่ยังไม่รู้จะเพิ่มใครเข้าแวดวง (Circle) ดี ก็จัดผมเข้าไปในแวดวงของท่านได้ที่
http://gplus.to/nokaek นะครับ