Y-a--s--e-R 31 ارسال شده در اسفند 95 گزارش بازنشر ارسال شده در اسفند 95 سلام به همه ، امیدوارم که حالتون خوب باشه همونطور که میدونید در حالت عادی ، هر تصویری که در رسانه آپلود شه ، چند سایز ازش ساخته میشه که تعداد ایجاد این سایزها ، واسه هر قالب فرق می کنه . این حالت ، واسه تصاویر شاخص خوبه و باعث میشه که در قسمتهای مختلف قالب ، عکس متناسب با اون قسمت ایجاد و به نمایش دربیاد ، ولی واسه عکس های داخل متن خوب نیست . یعنی به فرض ، میخوایم یه پست با عنوان “عکس های جدید از هنرمندان ایرانی” منتشر می کنیم که طبیعتا باید چندین عکس رو علاوه بر تصویر شاخص ، در خود متن قرار بدیم که نیازی به تولید چند عکس با سایز مختلف نیست و همون عکس اصلی کفایت میکنه ، ولی در حالت پیش فرض از همین عکس ها هم چندین سایز تولید میشه که اصلا بهشون نیازی نیست . سئوال من اینه که چیکار کنیم که فقط این چند سایز اضافی ، برای تصاویر شاخص ایجاد بشه و تصاویری که در متن استفاده میشه و شاخص نیست ، فقط همون سایز اصلیش آپلود شه و سایز دیگه ای ازش ساخته نشه ؟ راهی وجود داره ؟ نقل قول لینک به ارسال
فرحان 997 ارسال شده در اسفند 95 گزارش بازنشر ارسال شده در اسفند 95 سلام. میتونید این لینک رو دنبال کنید: http://wordpress.stackexchange.com/questions/181877/generate-thumbnails-only-for-featured-images 1 نقل قول لینک به ارسال
Y-a--s--e-R 31 ارسال شده در اسفند 95 مالک گزارش بازنشر ارسال شده در اسفند 95 در 2 ساعت قبل، فرحان گفته است : سلام. میتونید این لینک رو دنبال کنید: http://wordpress.stackexchange.com/questions/181877/generate-thumbnails-only-for-featured-images مرسی آقای فرحان ، فقط ببخشید ، چون من زبانم زیاد خوب نیست ، از لینک متوجه نشدم که دقیقا باید واسه حل مشکل ، چیکار کنم ؟ کد زیر رو باید در فانکشن بزارم ؟ // Enable support for Post Thumbnails, and declare sizes. add_theme_support( 'post-thumbnails' ); set_post_thumbnail_size( 400, 400, array("center","center") ); function fw_add_image_insert_override($sizes){ // unset( $sizes['thumbnail']); unset( $sizes['small']); unset( $sizes['medium']); unset( $sizes['large']); return $sizes; } add_filter('intermediate_image_sizes_advanced', 'fw_add_image_insert_override' ); نقل قول لینک به ارسال
فرحان 997 ارسال شده در اسفند 95 گزارش بازنشر ارسال شده در اسفند 95 به نظرم راه حل اولی که داده بودن که یک تابع بود بهتره. اون تابع به این صورته که هر سایز تصویری رو زمانی که فراخوانی میشه برش میزنه. در نتیجه توی مطلب که تصویر بدون سایز فراخوانی میشه دیگه تصاویر کات نمیشن. ولی باید بلد باشید پوسته رو ویرایش کنید. 2 نقل قول لینک به ارسال
Y-a--s--e-R 31 ارسال شده در اسفند 95 مالک گزارش بازنشر ارسال شده در اسفند 95 در 4 ساعت قبل، فرحان گفته است : به نظرم راه حل اولی که داده بودن که یک تابع بود بهتره. اون تابع به این صورته که هر سایز تصویری رو زمانی که فراخوانی میشه برش میزنه. در نتیجه توی مطلب که تصویر بدون سایز فراخوانی میشه دیگه تصاویر کات نمیشن. ولی باید بلد باشید پوسته رو ویرایش کنید. منظورتون اینه ؟ function lazy_image_size($image_id, $width, $height, $crop) { // Temporarily create an image size $size_id = 'lazy_' . $width . 'x' .$height . '_' . ((string) $crop); add_image_size($size_id, $width, $height, $crop); // Get the attachment data $meta = wp_get_attachment_metadata($image_id); // If the size does not exist if(!isset($meta['sizes'][$size_id])) { require_once(ABSPATH . 'wp-admin/includes/image.php'); $file = get_attached_file($image_id); $new_meta = wp_generate_attachment_metadata($image_id, $file); // Merge the sizes so we don't lose already generated sizes $new_meta['sizes'] = array_merge($meta['sizes'], $new_meta['sizes']); // Update the meta data wp_update_attachment_metadata($image_id, $new_meta); } // Fetch the sized image $sized = wp_get_attachment_image_src($image_id, $size_id); // Remove the image size so new images won't be created in this size automatically remove_image_size($size_id); return $sized; } آخه من هر چی کد ، داخل لینک مذکور دیدم مربوط به فانکشن بود . کد بالا رو تو فانکشن بزارم ، مشکل حل میشه ؟ ممنون میشم اگه کامل راهنمایی کنید . اگه بگید که چه کدی رو کجای قالب بزارم خیلی خوب میشه ، آخه همونطور که گفتم چون زبان سایتش انگلیسی بود خیلی دست و پا شکسته متوجه شدم ! نقل قول لینک به ارسال
فرحان 997 ارسال شده در اسفند 95 گزارش بازنشر ارسال شده در اسفند 95 در 17 ساعت قبل، Y-a--s--e-R گفته است : منظورتون اینه ؟ function lazy_image_size($image_id, $width, $height, $crop) { // Temporarily create an image size $size_id = 'lazy_' . $width . 'x' .$height . '_' . ((string) $crop); add_image_size($size_id, $width, $height, $crop); // Get the attachment data $meta = wp_get_attachment_metadata($image_id); // If the size does not exist if(!isset($meta['sizes'][$size_id])) { require_once(ABSPATH . 'wp-admin/includes/image.php'); $file = get_attached_file($image_id); $new_meta = wp_generate_attachment_metadata($image_id, $file); // Merge the sizes so we don't lose already generated sizes $new_meta['sizes'] = array_merge($meta['sizes'], $new_meta['sizes']); // Update the meta data wp_update_attachment_metadata($image_id, $new_meta); } // Fetch the sized image $sized = wp_get_attachment_image_src($image_id, $size_id); // Remove the image size so new images won't be created in this size automatically remove_image_size($size_id); return $sized; } آخه من هر چی کد ، داخل لینک مذکور دیدم مربوط به فانکشن بود . کد بالا رو تو فانکشن بزارم ، مشکل حل میشه ؟ ممنون میشم اگه کامل راهنمایی کنید . اگه بگید که چه کدی رو کجای قالب بزارم خیلی خوب میشه ، آخه همونطور که گفتم چون زبان سایتش انگلیسی بود خیلی دست و پا شکسته متوجه شدم ! ببینید میشه به این صورت عمل کنید اول هر دو تا کد رو بزارید توی فایل فانکشن، هم این تابع رو و هم اون کدی که خودتون اول انتخاب کردید.( اون قسمتی از کد اولی که میاد همه ی سایزهای برش رو حذف میکنه). بعد از اون بیاید توی فانکشن بگردید هر جایی که add_image_size بود رو کامنت کنید تا قالب هم سایزی رو به وردپرس برای برش زدن اضافه نکنه. مرحله بعدی اینه که بیاید توی قالبتون، توی فایل هایی که لوپ قرار داره دنبال the_thumbnail بگردید و ب جای اون از تابع lazy_image_size استفاده کنید. نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .