ওয়ার্ডপ্রেসটি মিডিয়া_লার্জ 768px আকারের চিত্র আপলোড করা থেকে আটকাবেন?


10

আমি ওয়ার্ডপ্রেসকে সেটিং> মিডিয়াতে থাম্বনেইল, মাঝারি এবং বড় 0 টি আকারের মাধ্যমে পৃথক চিত্র আপলোডের জন্য বিভিন্ন আকারের আপলোডগুলি তৈরি করতে বাধা দেওয়ার জন্য গাইডলেন্স অনুসরণ করেছি এবং আমার ফাংশন.এফপি ফাইলের add_image_size এবং set_post_thumbnail_size এর সমস্ত উদাহরণ থেকে মুক্তি পেয়েছি থিম। যাইহোক, আমি যখন নতুন চিত্রগুলি আপলোড করি তখন ওয়ার্ডপ্রেস এখনও পুরো পূর্ণ আকারের বাইরে 768px প্রস্থের সংস্করণ তৈরি করে। আমি বিশ্বাস করি যে এই আপডেটটির সাথে এর কিছু করার আছে তবে আমি ভাবছি যে এটির ঘটনাটি রোধ করার কোনও উপায় আছে কিনা? আমি বিশ্বাস করি যে আমি এমন কিছু থ্রেড পড়েছি যেখানে লোকেরা অজান্তেই এটি অন্য কিছু করার চেষ্টা করেছিল তবে আমি একটি ক্লিয়ারকুট পদ্ধতি খুঁজছি।


আপনি বুঝতে পেরেছেন যে ওয়ার্ডপ্রেস এটি সার্ভারের লোড কমাতে এবং আপনার সাইটের গতি বাড়ানোর জন্য করে?
কেনেথ ওডলে

উত্তর:


16

medium_largeচিত্রের আকার অপসারণ করতে আপনি এটি intermediate_image_sizesফিল্টার দিয়ে মুছে ফেলার চেষ্টা করতে পারেন :

add_filter( 'intermediate_image_sizes', function( $sizes )
{
    return array_filter( $sizes, function( $val )
    {
        return 'medium_large' !== $val; // Filter out 'medium_large'
    } );
} );

আপনি যদি মধ্যবর্তী সমস্ত আকার অপসারণের চেষ্টা করছেন তবে নিশ্চিত নন তবে আপনি চেষ্টা করে দেখতে পারেন:

add_filter( 'intermediate_image_sizes', '__return_empty_array', 999 );

যেখানে __return_empty_array() a একটি অন্তর্নির্মিত মূল ফাংশন।

আমাদের লক্ষ্য করা উচিত যে এটি দিয়ে এটি মুছে ফেলা সম্ভব নয়

remove_image_size( 'medium_large' );

কারণ এটি যুক্ত add_image_size()হয় নি এবং তাই $_wp_additional_image_sizesবিশ্বব্যাপী অ্যারের অংশ নয় বা wp_get_additional_image_sizes();


হ্যাঁ medium_large_size_wবিকল্পটি পরিবর্তন করাও সম্ভব 0, তবে আমরা এটির মাধ্যমে এটি করতে পারি না /wp-admin/options.phpকারণ সেখানে 0 টি মান নিয়ে সমস্যা আছে বলে মনে হয় (উত্তরটি লেখার আগে আমি প্রথমে চেষ্টা করেছিলাম ;-), তাই আমাদের এটি সেট করা দরকার সেটিংস এপিআই বা ম্যানুয়ালি wp_optionsটেবিলের মাধ্যমে।
বার্গিরে

7

ওয়ার্ডপ্রেস কোর কোডটি করে একইভাবে চিত্রের আকার সরান:

add_filter('intermediate_image_sizes', function($sizes) {
    return array_diff($sizes, ['medium_large']);
});

মনে রাখবেন যে medium_largeসাধারণত একটি ভাল আকার srcsetথাকে এটি কেবল তখনই সরিয়ে ফেলুন আপনার যদি বোঝা যায় কীভাবে srcsetকাজ করে, যদি আপনার ইতিমধ্যে সেখানে একই আকার থাকে।


2

এটি কাজ করবে


function paulund_remove_default_image_sizes( $sizes) {
    unset( $sizes['medium_large']);
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced','paulund_remove_default_image_sizes');

https://developer.wordpress.org/reference/hooks/intermediate_image_sizes_advanced/


যদিও এটি চিত্রটি নিজে তৈরি করে নি তবে এটি সংযুক্তি অ্যারেতে প্রবেশটি তৈরি করে, তাই ইউআরএল শেষে 769x এর সাথে একটি জাল এন্ট্রি। ডিফল্ট ফিল্ডার ইন্টারমিডিয়েট_আইমেজ_ সাইজ ব্যবহার করে চিত্রটি তৈরি করা এবং অ্যারেতে এটির জন্য একটি এন্ট্রি না দেখানো থেকে মুক্তি পেয়েছে।
lowtechsun
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.