• April 13, 2018

    WordPress มีระบบ featured images แต่ บางคนไม่อยากอัพโหลด แต่ต้องการเอาไฟล์รูปอันแรกมาแสดงเลย (ซึ่งไฟล์รูปนี้อาจดึงมาจากเว็บอื่นก็ได้) วิธีการคือ หา Tag img ใช้ function preg_match() ในการค้นหา

    functions.php

    //function to call first uploaded image in functions file
    function main_image() {
     
        if (preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', get_the_content(), $matches)) {
            //check if an image exists at all
            $first_thumb = $matches [1] [0];
    
            // replace the thumbnail size part to get large image url
            $source_img_rep  = preg_replace('/(-\d+x\d+)?\.(\w{3,4})$/','',$first_thumb);
            $ext = pathinfo($first_thumb, PATHINFO_EXTENSION);
            $first_source = $source_img_rep . '.' . $ext;
            echo '<a href="' . get_permalink() . '" class="thumbnail cboxElement" title="' . the_title_attribute('echo=0') . '" ><img class="img-reponsive" src="'.$first_thumb.'" alt="' . the_title_attribute('echo=0') . '" /></a>';
    
        }else if ( has_post_thumbnail() ) {
    
            $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'large');
            echo '<a href="' . get_permalink() . '" class="thumbnail cboxElement" title="' . the_title_attribute('echo=0') . '" >';
            the_post_thumbnail( 'eo-featurette',array('class' => 'featurette-image img-responsive') );
            echo '</a>';
            
        }
     
    }

    การเอาไปใช้งาน หรือ เรียกใช้งาน

    <?=main_image();?>

    โดยเอามันไปแทนที่โค๊ดเดิม (ด้านล่างนี้)

    <?php if ( has_post_thumbnail() ) : ?>
    ...
    <?php endif; ?>


เวอไนน์ไอคอร์ส

ประหยัดเวลากว่า 100 เท่า!






เวอไนน์เว็บไซต์⚡️
สร้างเว็บไซต์ ดูแลเว็บไซต์

Categories