এনকুইড স্টাইলস এবং স্ক্রিপ্টগুলিতে সংস্করণ URL প্যারামিটার (? Ver = XXX) প্রতিরোধ করুন


12

ব্যবহারের ক্ষেত্রে

আমি ক্রোমের ডিভাইস ওয়ার্কস্পেস বৈশিষ্ট্যগুলির সাথে পরীক্ষা করছি। এটিতে ডিভাইসে সরাসরি কোনও ফাইল সম্পাদনা করার ক্ষমতা রয়েছে এবং সেভ করা স্টাইলশীটটি নিজেই রিফ্রেশ করতে পারে (বা এমনকি সংকলন করে পুনরায় রিফ্রেশ করুন!)।

তবে স্ট্যাকওভারফ্লো প্রশ্নটিতে নথিবদ্ধ হিসাবে "ক্রোমের" অটো-রিলোড লোড জেনারেটেড সিএসএস "পুনরায় লোড হচ্ছে না যখন এসএএসএস সিএসএস পুনরায় কম্পাইল করে" , স্টাইলশীট ইউআরএলের ইউআরএল প্যারামিটারগুলি ক্রমটিকে পরিবর্তনকে লক্ষ্য করা থেকে বিরত করে।

কাঙ্খিত ফলাফল

তার মানে কেবলমাত্র বিকাশের সময় , আমি ?ver=X.X.Xসাধারণ স্টাইলশীট <link>আউটপুট থেকে এটিকে সরাতে চাইতাম wp_enqueue_style()। অন্য কথায়, আমি ডিফল্ট চেয়েছিলাম href:

http://localhost/mysite/wp-includes/style.css?ver=4.1.1

পরিবর্তে এটি হতে:

http://localhost/mysite/wp-includes/style.css

উত্তর:


12

ডিফল্ট wp_enqueue_[style/script]()আচরণ

জন্য ডিফল্ট মান $versionযুক্তি এর wp_enqueue_style()হয় false। তবে, এই ডিফল্টটির অর্থ হ'ল স্টাইলশিটগুলি পরিবর্তে ওয়ার্ডপ্রেস সংস্করণ দেওয়া হয় ।

সমাধান

"ওয়ার্ডপ্রেস এনকুইড সিএসএস এবং জেএস থেকে সংস্করণ সরান" ধন্যবাদ , আমি একটি অনাবন্ধিত সত্য শিখেছি যে nullসংস্করণ হিসাবে পাস করার ফলে সংস্করণটি পুরোপুরি মুছে ফেলা হবে!

উদাহরণ

wp_enqueue_style( 'wpse-styles', get_template_directory_uri() . '/style.css', array(), null );

ক্যাভেট অনুস্মারক

এটি উল্লেখ করার মতো, যেমনটি প্রশ্নটিতে উল্লেখ করা হয়েছে, এটি সম্ভবত বিকাশের সময় করা উচিত (নির্দিষ্ট ইউজকেস হিসাবে)। সংস্করণ প্যারামিটারটি সাইট দর্শকদের জন্য ক্যাচিং (এবং ক্যাশে না করে) সাহায্য করে এবং তাই সম্ভবত 99% ক্ষেত্রে একা থাকতে হবে।


8

আপনার পোস্টের জন্য ধন্যবাদ, মিঃউইউব।

আমি এর আর একটি সমাধান খুঁজে পেয়েছি, খুব সাধারণ প্লাগইন তৈরি করে আপনি যখন ডিভাইসটি করতে পারেন তখন সাইটটি আর বিকাশের অধীনে থাকে না।

<?php

/*
Plugin name: Strip WP Version in Stylesheets/Scripts
*/

function switch_stylesheet_src( $src, $handle ) {

        $src = remove_query_arg( 'ver', $src );
        return $src;
}
add_filter( 'style_loader_src', 'switch_stylesheet_src', 10, 2 );

?>

আমি এই সমাধানটি খুঁজতে কয়েক মিনিট সময় ব্যয় করেছি। ভেবেছি আমি এখানে নতুন প্রশ্ন / উত্তর তৈরি না করে অন্য বিকল্পটি ভাগ করতে পারি।


কাজ করে না ...
রেজি

এটা সঠিক উত্তর. বিকাশের সময় এই ফিল্টারটি ব্যবহার করুন এবং একবার লাইভ হয়ে যাওয়ার পরে এটি সরান।
dtbaker

ডিকু এবং সারি স্টাইলগুলির চেয়ে ভাল উপায়। ফিল্টার সহ স্ক্রিপ্টগুলিতেও প্রযোজ্যscript_loader_src
ধর্ম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.