เงื่อนไขการอัปเกรด
การอัปเกรดด้วยวิธีต่อไปนี้ เป็นวิธีการอัปเกรดด้วย command line บน linux server
วิธีอัปเกรด
ย้ายไปทำงานที่ไดเรกทอรี่ของเว็บไซต์ WordPress ที่ต้องการอัปเกรด
cd /var/www/your-wordpress
ค้นหาไฟล์ที่มีคำว่า “phpmailer.php” อยู่ในชื่อไฟล์
find . -iname *phpmailer.php*
ตรวจสอบเวอร์ชั่น PHPMailer ของไฟล์ที่พบ
grep \$Version ./your-found-file # Result is public $Version = 'x.y.zz';
สำรองไฟล์เอาไว้เผื่ออยากดาวน์เกรดกลับมาเป็นเวอร์ชั่นเดิมทีหลัง
# WordPress Core cp ./wp-includes/class-phpmailer.php ./wp-includes/class-phpmailer.php.bak cp ./wp-includes/class-pop3.php ./wp-includes/class-pop3.php.bak cp ./wp-includes/class-smtp.php ./wp-includes/class-smtp.php.bak # WordPress Themes and Plugins cp ./wp-content/plugins/your-plugin/class.phpmailer.php ./wp-content/plugins/your-plugin/class.phpmailer.php.bak cp ./wp-content/themes/your-theme/class.phpmailer.php ./wp-content/themes/your-theme/class.phpmailer.php.bak
ดาวน์โหลด PHPMailer และไฟล์ที่เกี่ยวข้อง เวอร์ชั่นล่าสุดมาพักไว้ที่ไดเรกทอรี่ /tmp
wget -P /tmp https://raw.githubusercontent.com/PHPMailer/PHPMailer/master/class.phpmailer.php wget -P /tmp https://raw.githubusercontent.com/PHPMailer/PHPMailer/master/class.pop3.php wget -P /tmp https://raw.githubusercontent.com/PHPMailer/PHPMailer/master/class.smtp.php
เริ่มการอัปเกรดโดยการเขียนทับไฟล์เวอร์ชั่นเก่า ด้วยไฟล์ที่เราดาวน์โหลดมาพักไว้ในไดเรกทอรี่ /tmp
# WordPress Core cp /tmp/class.phpmailer.php ./wp-includes/class-phpmailer.php cp /tmp/class.pop3.php ./wp-includes/class-pop3.php cp /tmp/class.smtp.php ./wp-includes/class-smtp.php # WordPress Themes and Plugins cp /tmp/class.phpmailer.php ./wp-content/plugins/your-plugin/class.phpmailer.php cp /tmp/class.phpmailer.php ./wp-content/themes/your-theme/class.phpmailer.php
ตั้งค่าสิทธิ์ของไฟล์ที่เราเพิ่งอัปเกรด เพื่อให้โปรแกรม Web Server เข้าถึงไฟล์ได้อย่างถูกต้อง
# WordPress Core chown www-data:www-data ./wp-includes/class-phpmailer.php chown www-data:www-data ./wp-includes/class-pop3.php chown www-data:www-data ./wp-includes/class-smtp.php # WordPress Themes and Plugins chown www-data:www-data ./wp-content/plugins/your-plugin/class.phpmailer.php chown www-data:www-data ./wp-content/themes/your-theme/class.phpmailer.php