কেন ওয়ার্ডপ্রেস পুরানো jQuery v1.12.4 ব্যবহার করে?


25

উত্স কোডটি যাচাই করার সময় আমি দেখেছি যে ওয়ার্ডপ্রেস jQuery v1.12.4 ব্যবহার করে। ওয়ার্ডপ্রেস কেন jQuery এর এই পুরানো সংস্করণ ব্যবহার করে?


1
উত্তরটি খুব সহজ: ডাব্লুপি পুরানো ব্রাউজারগুলির সাথে পশ্চাদপটে সামঞ্জস্য বজায় রাখতে চায়। ডাব্লুপি-র পর্যাপ্ত ব্যবহারকারী রয়েছে যার এখনও IE8 সমর্থন দরকার যে তারা এটিকে এখনও ফেলে দিতে পারেন না।
সিম্বা

উত্তর:


32

ডাব্লুপি কোর দ্বারা লোড করা jQuery ব্যবহার করে অনেক থিম এবং প্লাগইন রয়েছে। প্রতিবার jQuery আপডেট হওয়ার সাথে সাথে পুরানো থিম এবং প্লাগইনগুলি ভাঙ্গার ঝুঁকি রয়েছে (কারণ এগুলির মধ্যে অনেকগুলি এখনও ব্যবহৃত হয় তবে আর আপডেট হয় না)। এজন্য jquery-migrate.jsআপনি নিজের উত্স কোডেও দেখতে পান। এটি এমন একটি স্ক্রিপ্ট যা প্লাগইন / থিমগুলি দ্বারা ব্যবহৃত পুরানো ফাংশনগুলি ক্যাচ করে এবং নিশ্চিত করে যে তারা এখনও jQuery এর নতুন সংস্করণগুলিতে কাজ করে।

JQuery 3.xপরিবারে চলে যাওয়ার ফলে অনেকগুলি প্লাগইন / থিমগুলি ভেঙে যায়, কারণ হ্রাসপ্রাপ্ত সমস্ত কিছুর জন্য মাইগ্রেশন স্ক্রিপ্ট থাকা সম্ভব নয় । এই কারণেই 1.xপরিবারের নতুন সংস্করণগুলি এখনও বিকাশিত ছিল যখন ইতিমধ্যে পরিবার 2.xএবং 3.xপরিবার বিদ্যমান ছিল। (সুরক্ষা) প্যাচগুলি বাদে এবং পরে কোনও নতুন 1.xএবং 2.xসংস্করণ থাকবে না । যদিও jQuery এখনই পুরানো নয়, অদূর ভবিষ্যতে এটি হবে।1.122.21.12

সুতরাং, ওয়ার্ডপ্রেস একটি আবদ্ধ হয়। যদি এটি কোনও উচ্চতর jQuery সংস্করণে আপগ্রেড না হয় তবে এটি নতুন সম্ভাবনার সাথে তাল মিলিয়ে চলতে পারে না। তবে, এটি আপগ্রেড করলে পুরানো সাইটগুলি ভেঙে যায়। সম্ভবত পরিণতি যে ডাব্লু বছর দুয়েক জন্য অপেক্ষা করব, তাই পুরোনো থিম / প্লাগিন যাহাই হউক না কেন বিকাশ করা হবে, এবং তারপর ঝাঁপ 3.xপরিবার

শোধন

উপরেরগুলি সুপারিশ করতে পারে যে 1.xসংস্করণগুলি থেকে মাইগ্রেট করা 3.xআসলে সম্ভব নয়। এটা সত্যি না. এটি কিছুটা জটিল। কৌশলটি হ'ল প্রথমে আপগ্রেড করা 1.12, পুরানো মাইগ্রেশন স্ক্রিপ্ট ব্যবহার করে ফলাফলটি ডিবাগ করা এবং তারপরে 3.0মাইগ্রেশন স্ক্রিপ্ট যুক্ত করুন যা এর সাথে কাজ করে 1.12। বিস্তারিত নির্দেশাবলী এখানে

সুরক্ষা আপডেট

বিকাশকারীরা লক্ষ্য করবেন যে গুগল দেব সরঞ্জামগুলি / বাতিঘর এই পুরানো jQuery সংস্করণের উপস্থিতির কারণে ওয়ার্ডপ্রেস সাইটগুলিকে দুর্বল হিসাবে প্রতিবেদন করে - বা তাই বলে মনে হয়। কার্যত, সমস্ত বাতিঘর এটি পরীক্ষা করে যে গ্রন্থাগারটি স্নিক ক্ষতিগ্রস্থতা ডেটাবেস-এ উল্লিখিত দুর্বলতাগুলি রয়েছে কিনা । আপনি যদি এটি বিশদে পরীক্ষা করে দেখেন যে সংস্করণটি 1.12.4 টি পরিষ্কার clean 1.12.4 এর বিস্তৃত ব্যবহারের কারণে আপনি দ্রুততার সাথে মোকাবিলা করা যে কোনও গুরুতর দুর্বলতার উপর নির্ভর করতে পারেন।


4
কেবলমাত্র অতিরিক্ত তথ্য যোগ করার জন্য - jQuery 1.x এবং 2.x উভয়ই এই বছর মে অবধি সক্রিয়ভাবে আপডেট হয়েছিল, তাদের মধ্যে পার্থক্যটি কেবলমাত্র 1.x এর IE8 এর সাথে সামঞ্জস্য ছিল এবং 2.x প্যাচগুলি সরিয়েছিল এবং এই বগি ব্রাউজারগুলির জন্য সমাধানগুলি। ৩.x হ'ল নতুন সংস্করণ, এবং "অফিসিয়াল" এইচটিএমএল 5 / জাভাস্ক্রিপ্ট ইন্টারফেসের সাথে সামঞ্জস্য রাখতে বিভিন্ন ইন্টারফেস পরিবর্তন করে জিনিসগুলি আরও এক ধাপ এগিয়ে নিয়ে যায় (যেমন, যেখানে এটি একইভাবে কাজ করেছিল, jQuery এর নিজস্ব সংস্করণ থাকার পরে জিনিসগুলি স্ট্যান্ডার্ড হয়ে ওঠে একই ধরণের জিনিস করা)।
রিকোশেট

23
  • এটি পুরানো নয়
  • 2.x বা 3.x এ স্থানান্তরিত হওয়া খুব তাড়াতাড়ি, লোকেরা এখনও আই 8 ব্যবহার করে যা কেবলমাত্র 1.x এ সমর্থিত

2
@ লাইটনেসেসেসিনআরবিট সম্মত হয়েছে তবে আমার অভিজ্ঞতা থেকে ডাব্লুপি বিকাশকারীর গড় ক্যালিবারের ক্ষেত্রে এই প্রশ্নটি স্পষ্ট।
MonkeyZeus

7
জানুয়ারী 2018 এর জন্য আপডেট: ওয়ার্ডপ্রেসের সাথে ডিফল্ট অন্তর্ভুক্ত থাকা সত্ত্বেও এটি পুরানো যে ধারণাটি এখন আর "বাজে" নয় is এক্সএসএস দুর্বলতাগুলি 1.12.4 দিয়ে চিহ্নিত করা হয়েছে এবং 1.x শাখাটি আর আপডেট পাচ্ছে না। প্রস্তাবিত প্রতিকার হ'ল jquery 3.x snyk.io/test/npm/jquery/…
স্কয়ারকাণ্ডি

2
লাইটহাউস ব্যবহার করার সময় গুগল আপনাকে জানিয়ে দিচ্ছে যে 1.12.4 সংস্করণে জানা সুরক্ষা দুর্বলতা রয়েছে যাতে আপনার এটি ব্যবহার করা উচিত নয়।
phpheini

4
মাইক্রোসফ্ট এমনকি আইসি 8 সমর্থন করে না এমন সময়ে এটি দায়িত্বজ্ঞানহীন। এটি সুরক্ষা সমস্যাযুক্ত পুরানো ব্রাউজার ব্যবহার করা লোকদের রাখে। যদি কেউ আই 8 ব্যবহার করে তবে তাদের থামানো দরকার।
ডেভিড এ ফরাসী

1
@ ডেভিডএ.ফ্রিঞ্চ আমি দ্বিতীয় গতিতে second ডিভাইসগুলির আপডেট করা প্রত্যাখ্যানকারীদের থাকার ব্যবস্থা বন্ধ করতে হবে। এমন একটি সময় ছিল যখন প্রত্যেকে প্রতিটি সম্ভাব্য ব্রাউজারে মোটামুটি সামঞ্জস্য পেতে আগ্রহী ছিল এবং এই খারাপ অভ্যাসগুলি এখনও অবিরত রয়েছে। হয়তো যখন ইন্টারভেইবস তাদের জন্য কাজ করা বন্ধ করে দেয়, তখন সেই লোকেরা একটি আধুনিক ব্রাউজারে আপডেট হবে। এই মুহুর্তে আপনি যদি কোনও প্রধান ব্রাউজারের সর্বশেষতম সংস্করণে না থাকেন (আইআই এবং এওএল একেবারেই গণনা করেন না) ইন্টারনেট আপনার জন্য বাঁকানো উচিত নয়। সত্যিই আই 8? আপনি ওয়েবের 1% এরও কম, [এওএল ভাষায়] "বিদায়"
কেফিশ

1

আরও সঠিক হতে হবে।

1.x শাখায় IE 6/7/8 এর জন্য সমর্থন অন্তর্ভুক্ত রয়েছে এবং 2.x শাখাটি দেয় না।

https://blog.jquery.com/2016/05/20/jquery-1-12-4-and-2-2-4-released/


এটি সম্পূর্ণ উত্তর নয়।
ফ্লাইম

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