Monday, November 7, 2022

Dân Chơi

Code tự động lưu ảnh vào host khi copy bài từ nguồn khác

Như tiêu tiêu đề thôi hôm nay mình sẽ share đoạn code tự động lưu ảnh vào host khi copy bài từ nguồn khác. Thỉnh thoảng bạn coppy 1 bài mà quên lấy hình , đoạn code function này sẽ giúp bạn nhé !

Code tự động lưu ảnh vào host

với đoạn code trên Tự động lưu toàn bộ hình ảnh khi copy trong khoảng nguồn khác chỉ phê chuẩn 1 lần bấm save. Code ổn định không bị lỗi trên các phiên bản wordpress

nhưng nhược điểm của code là Nó sẽ tự động lưu nên mình không kiểm soát được số lượng, dung lương cũng như tên của các file ảnh ấy.

thí dụ : sau khi bạn lấy bài trong khoảng trang của người khác vè bằng Plugin Content Crawler – lấy tin sản phẩm tự động mà ko lấy được hình về thì code sau là 1 giải pháp nhé

Để sử đụng bạn copy đoạn code sau vào file functions.php trong thư mục theme bạn đang dùng nhé

class Auto_Save_Images

function __construct()

add_filter( 'content_save_pre',array($this,'post_save_images') );

function post_save_images( $content ) $_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();

OK , bạn lưu lại và xem kết quả nhé :)

]Code tự động lưu ảnh vào host Code tự động lưu ảnh vào host

Code tự động lưu ảnh vào host bằng Plugin

Ngoài việc dùng bằng code ta mang thể chủ động chuyên chở hình về bằng plugin QQWorld Auto Save Images

mang Plugin này bài viết được auto lấy hình về bài đăng sau khi bạn bấm Save nhé

Code tự động lưu ảnh vào host bằng Plugin Code tự động lưu ảnh vào host bằng Plugin[/caption]

Việc của bạn là chỉ vận chuyển về và cài vào thôi , Kick hoạt nó lên . Việc cua bạn là chỉ cần coppy và dán - Việc Lưu ảnh lên host đã mang plugin lo hết nhé

Việc này chỉ với lợi lúc bạn khiến cho demo hoặc các việc tương tự , Còn về đăng bạn bạn cũng nên Change 1 số thông tin cho thích hợp mang bằng đăng nhé , đặc biệt là sửa alt của hình ảnh

chúc Các bạn thành công nhé

theo : Chợ Webs