Nếu bạn thường xuyên post bài bằng wordpress sẽ thấy việc download hình ảnh từ trang web nào đó, rồi upload lên wordpress, chèn vào bài viết tốn kém thời gian đến mức nào.
Tại sao không lấy luôn hình ảnh từ website khác chèn vào web mình?
- Vì như vậy hình ảnh sẽ phụ thuộc vào host của người khác, nếu host của họ có vấn đề, hình ảnh trên web của bạn cũng “tèo” luôn
- Ảnh hưởng SEO, cái này nếu bạn quan tâm về SEO hình ảnh sẽ thấy vô tình đã cho người khác 1 backlink
Vậy để giảm bớt công đoạn thì làm cách nào, đơn giản copy đoạn code này vào function.php của theme và thử copy 1 ảnh của web khác và publish bài viết thôi, việc còn lại để wordpress lo.
Mình không khuyến khích các bạn sử dụng plugin vì có thể dẫn đến chậm website, cái nào chèn code được thì mình chèn nhé.
class Auto_Save_Images{ function __construct(){ add_filter( ‘content_save_pre’,array($this,’post_save_images’) ); } function post_save_images( $content ){ if( ($_POST[‘save’] || $_POST[‘publish’] )){ set_time_limit(240); global $post; $post_id=$post->ID; $preg=preg_match_all(‘/<img.*?src=”(.*?)”/’,stripslashes($content),$matches); if($preg){ foreach($matches[1] as $image_url){ if(empty($image_url)) continue; $pos=strpos($image_url,$_SERVER[‘HTTP_HOST’]); if($pos===false){ $res=$this->save_images($image_url,$post_id); $replace=$res[‘url’]; $content=str_replace($image_url,$replace,$content); } } } } remove_filter( ‘content_save_pre’, array( $this, ‘post_save_images’ ) ); return $content; } function save_images($image_url,$post_id){ $file=file_get_contents($image_url); $post = get_post($post_id); $posttitle = $post->post_title; $postname = sanitize_title($posttitle); $im_name = “$postname-$post_id.jpg”; $res=wp_upload_bits($im_name,”,$file); $this->insert_attachment($res[‘file’],$post_id); return $res; } function insert_attachment($file,$id){ $dirs=wp_upload_dir(); $filetype=wp_check_filetype($file); $attachment=array(‘guid’=>$dirs[‘baseurl’].’/’._wp_relative_upload_path($file),’post_mime_type’=>$filetype[‘type’],’post_title’=>preg_replace(‘/.[^.]+$/’,”,basename($file)),’post_content’=>”,’post_status’=>’inherit’ ); $attach_id=wp_insert_attachment($attachment,$file,$id); $attach_data=wp_generate_attachment_metadata($attach_id,$file); wp_update_attachment_metadata($attach_id,$attach_data); return $attach_id; } } new Auto_Save_Images(); add_filter(‘use_block_editor_for_post’, ‘__return_false’);
- [VShare PSD] 10 Mẫu Bìa Ảnh Chân Dung Phong Cách Âu – Mỹ Cập Nhật 2022 (PSD Kèm Font)
- [VShare Preset] 49 Tone Màu Kodak Fuji Giả Lập Tone Màu Hongkong Năm 2023 (XMP)
- [Share Action] Action Tạo Hiệu Ứng In Ảnh Trên Báo – Newspaper Print Photoshop Action
- [Hướng Dẫn] Nhận 15TB Lưu Trữ Miễn Phí Với uCloude
- [VShare PSD] 12GB Thiết Kế Poster Chủ Đề Tết Âm Lịch Quý Mão 2023 Đầy Đủ Chi Tiết