แก้ปัญหา Wordpress: ภาพไม่ขึ้น เมื่อเปลี่ยนเว็บ จาก http เป็น https เพราะ srcset

พูดคุย phpBB3, SMF ปัญหา การติดตั้ง ปัญหา การลง Mod การแก้ไข หน้าตาบอร์ด การใช้งาน Joomla 1.5, 1.6, 1.7, 2.5 ,3.x และเร็วๆนี้ Joomla จะออกเวอร์ชั่น 4.0 การใช้งาน wordpress และ CMS อื่นๆ
การตั้งคำถาม ควรระบุรุ่นที่ใช้ ในการตั้งคำตามด้วย นะ เช่น SMF 1.1.4 หรือ SMF2.0 Joomla 1.0 joomla 3.8 และ รายละเอียดของ server OS , php เวอร์ชั่นไหน ฐานข้อมูลอะไร

Moderator: mindphp

กฎการใช้บอร์ด
คำถามหมวดนี้ ควรระบุ รายละเอียดของ Server OS, เวอร์ชั่น ของ PHP, CMS ที่ท่านใช้
รวมถึง Hosting หรือ Control Panel Hosting
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 21397
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

แก้ปัญหา Wordpress: ภาพไม่ขึ้น เมื่อเปลี่ยนเว็บ จาก http เป็น https เพราะ srcset

โพสต์โดย mindphp » 05/08/2019 8:12 am

แก้ปัญหา Wordpress: ภาพไม่ขึ้น เมื่อเปลี่ยนเว็บ เป็น https เพราะ srcset ของ tag img ในการแสดงผล ไม่ยอมเปลี่ยน จาก http เป็น https
ทั้งๆที่เรา กำหนด siteurl เป็น httpsซึ่งจริงๆมันควรจะเปลี่ยนให้ ทั้งหมดของโดเมนเราแล้ว แต่ดันมีโค้ดบางส่วนที่มีการเช็คเงื่อนไขของฟังก์ชั่น wp_calculate_image_srcset เปลี่ยนได้ไม่หมด
ปัญหานี้เกิดได้กับ ทำ https เอง และ ใช้ cloudflare

วิธีแก้ เข้าไปที่
wp-includes/media.php
ค้นหา

โค้ด: เลือกทั้งหมด

    if ( is_ssl() && 'https' !== substr( $image_baseurl, 0, 5 ) && parse_url( $image_baseurl, PHP_URL_HOST ) === $_SERVER['HTTP_HOST'] ) {
        $image_baseurl = set_url_scheme( $image_baseurl, 'https' );
    }
 


เพิ่มโค้ด

โค้ด: เลือกทั้งหมด

 $image_baseurl = set_url_scheme( $image_baseurl, 'https' ); 

หลังบรรทัดที่เจอ จะได้โค้ดที่สมบูรณ์ ดังนี้

โค้ด: เลือกทั้งหมด

    if ( is_ssl() && 'https' !== substr( $image_baseurl, 0, 5 ) && parse_url( $image_baseurl, PHP_URL_HOST ) === $_SERVER['HTTP_HOST'] ) {
        $image_baseurl = set_url_scheme( $image_baseurl, 'https' );
    }
    # ส่วนที่เราเพิ่มเข้าไป
    $image_baseurl = set_url_scheme( $image_baseurl, 'https' ); 
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 21397
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: แก้ปัญหา Wordpress: ภาพไม่ขึ้น เมื่อเปลี่ยนเว็บ จาก http เป็น https เพราะ srcset

โพสต์โดย mindphp » 03/09/2019 2:55 pm

ถ้าใครอัพเกรดเวอร์ชั่น ใหม่ อย่างลืมมาปรับตรงจุดนี้อีกครั้ง
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 21397
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: แก้ปัญหา Wordpress: ภาพไม่ขึ้น เมื่อเปลี่ยนเว็บ จาก http เป็น https เพราะ srcset

โพสต์โดย mindphp » 07/09/2019 2:56 pm

ล่าสุด เวอร์ชั่น WordPress 5.2.3 ยังคงมี ปัญหานี้อยู่
แต่ตามหัวข้อกระทู้กับต่อไป
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042


ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 11 และ บุคคลทั่วไป 0 ท่าน