-
Üyelik
10.04.2018
-
Yaş/Cinsiyet
43 / E
-
Meslek
bilgisayar programcısı
-
Konum
Antalya
-
Ad Soyad
M** P**
-
Mesajlar
38
-
Beğeniler
5 / 4
-
Ticaret
4, (%100)
Arkadaşlar Aşağıdaki Kodlarda resim ismini image.jpg olarak wordprese ekleyebiliyor. sorun image.jpg ismi yerine başka bir koymam lazım yardımcı olabilen varmı ???
$image_url="http://www.denemesite.com/image.jpg"
$upload_dir = wp_upload_dir();
$image_data = file_get_contents($image_url);
$filename = basename($image_url);
if(wp_mkdir_p($upload_dir['path']))
$file = $upload_dir['path'] . '/' . $filename;
else
$file = $upload_dir['basedir'] . '/' . $filename;
file_put_contents($file, $image_data);
$wp_filetype = wp_check_filetype($filename, null );
$attachment = array(
'post_mime_type' => $wp_filetype['type'],
'post_title' => sanitize_file_name($filename),
'post_content' => '',
'post_status' => 'inherit'
);
$attach_id = wp_insert_attachment( $attachment, $file, $post_id );
require_once(ABSPATH . 'wp-admin/includes/image.php');
$attach_data = wp_generate_attachment_metadata( $attach_id, $file );
wp_update_attachment_metadata( $attach_id, $attach_data );
set_post_thumbnail( $post_id, $attach_id );
wpuzman
WordPress Developer
Kullanıcı
-
Üyelik
13.01.2017
-
Yaş/Cinsiyet
33 / E
-
Meslek
Yazılım
-
Konum
Trabzon
-
Ad Soyad
B** M**
-
Mesajlar
2771
-
Beğeniler
293 / 949
-
Ticaret
33, (%100)
2 farklı filtreleme ekleyerek deneyebilirsiniz. Url den image yüklerken hangisini kullanıyor tam anlamadım. sanitize_file_name veya wp_handle_upload_prefilter ikisinden birini kullanıyorsa aşağıdaki gibi bir işlem yapılabilir.
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
$file['name'] = 'wordpress-is-awesome-' . $file['name'];
return $file;
}
veya
function make_filename_hash($filename) {
$info = pathinfo($filename);
$ext = empty($info['extension']) ? '' : '.' . $info['extension'];
$name = basename($filename, $ext);
return "custom_image_name"."_".$name . $ext;
}
add_filter('sanitize_file_name', 'make_filename_hash', 10);
1 kişi bu mesajı beğendi.
-
Üyelik
10.04.2018
-
Yaş/Cinsiyet
43 / E
-
Meslek
bilgisayar programcısı
-
Konum
Antalya
-
Ad Soyad
M** P**
-
Mesajlar
38
-
Beğeniler
5 / 4
-
Ticaret
4, (%100)
Üstad
'post_title' => sanitize_file_name($filename),
koddaki $filename yazılan yeri değiştirince oldu
Yardımın için teşekükrüler
wpuzman
WordPress Developer
Kullanıcı
-
Üyelik
13.01.2017
-
Yaş/Cinsiyet
33 / E
-
Meslek
Yazılım
-
Konum
Trabzon
-
Ad Soyad
B** M**
-
Mesajlar
2771
-
Beğeniler
293 / 949
-
Ticaret
33, (%100)
Önce birinciyi dene sonra ikinciyi dene. Bak bakalım herhangi birinde yüklenen ismi değişecek mi? Ona göre düzenleme yaparız.