আমি অনামী ব্যবহারকারীদের জন্য ড্রুপাল 8 ক্যাচিং প্রক্রিয়া থেকে পৃষ্ঠাগুলির উপকার বজায় রাখতে চাই, নির্দিষ্ট পৃষ্ঠাগুলি ব্যতীত যা প্রতিটি পৃষ্ঠায় আপডেট হওয়া উচিত তা জেনেও যে তারা ভিউ থেকে উত্পন্ন হয়েছে।
এটি কি প্রযুক্তিগতভাবে সম্ভব? কিভাবে?
আমি অনামী ব্যবহারকারীদের জন্য ড্রুপাল 8 ক্যাচিং প্রক্রিয়া থেকে পৃষ্ঠাগুলির উপকার বজায় রাখতে চাই, নির্দিষ্ট পৃষ্ঠাগুলি ব্যতীত যা প্রতিটি পৃষ্ঠায় আপডেট হওয়া উচিত তা জেনেও যে তারা ভিউ থেকে উত্পন্ন হয়েছে।
এটি কি প্রযুক্তিগতভাবে সম্ভব? কিভাবে?
উত্তর:
এই দর্শনগুলি ব্লকটি কী দেখায়?
ডি 8 এর ক্যাশে ট্যাগ এবং প্রসঙ্গ রয়েছে যা কিছু পরিবর্তন হলে স্বয়ংক্রিয়ভাবে ব্লককে অকার্যকর করে দেবে।
সুতরাং আপনার কাছে নোডের একটি তালিকা থাকলে প্রতিবার নোড যুক্ত বা আপডেট করা হলে সেই ব্লকটি আপডেট করা হবে তবে ততক্ষণ পর্যন্ত ক্যাশেড সংস্করণ ব্যবহার করা হবে। যা প্রতিটি পৃষ্ঠায় পুনর্নির্মাণের চেয়ে অনেক ভাল।
এটি পৃষ্ঠা ক্যাশে নিয়েও কাজ করে, সেই পৃষ্ঠাগুলি স্বয়ংক্রিয়ভাবে আপডেট হবে।
অনেকগুলি, কেবল কোনও ম্যানুয়াল কনফিগারেশনের প্রয়োজন ছাড়াই বাক্সটি বাইরে রেখে ক্যাশে নিয়ে কাজ করে।
সম্পাদনা (মন্তব্য প্রতিক্রিয়া):
এলোমেলোভাবে সাজানো প্লাগইন সহ এলোমেলো? এটি স্বয়ংক্রিয়ভাবে সেই ব্লকটিকে নন-ক্যাশেযোগ্য হিসাবে চিহ্নিত করতে হবে। এটি তবে পৃষ্ঠা ক্যাশে মডিউলকে প্রভাবিত করে না। এখন একটি নতুন স্মার্টক্যাচ / গতিশীল পৃষ্ঠা ক্যাশে মডিউল রয়েছে তবে এটি কেবল পরবর্তী বিটাতে (বা আরসি!) থাকবে। এটি অবশেষে বাকী পৃষ্ঠাটি ক্যাশে করে কেবল সেই অংশটি তৈরি করতে দেবে।
তবে এর মতো একটি মামলা সম্ভবত কিছু জাভাস্ক্রিপ্ট ব্যবহার করে সবচেয়ে ভাল প্রয়োগ করা হয়েছে। যদি কেবল কয়েকটি নোড থাকে তবে আপনি সেগুলি ডিফল্টরূপে লুকিয়ে রাখতে পারেন এবং এলোমেলোভাবে এগুলির একটি দৃশ্যমান করতে পারেন। অথবা জাভাস্ক্রিপ্ট সহ এমন ইউআরএল অনুরোধ করুন যা একটি এলোমেলোভাবে বিজ্ঞাপন দেয় বা আরও ভাল এন ইউআরএল এর একটি র্যান্ডম পরিদর্শন করুন যা প্রতিটি বিজ্ঞাপন প্রত্যাবর্তন করে (যেমন ইউআরএলগুলির একটি তালিকা ফিরে এসে তার মধ্যে একটি বাছাই করে even এমনকি আপনি সরাসরি চিত্রের ইউআরএলটি করতে পারেন ।
যদি এটি একটি কাস্টম ব্লক হয় তবে আপনি ক্যাশে এপিআই ব্যবহার করতে পারেন এবং ক্যাশে সর্বোচ্চ বয়স নির্ধারণ করতে পারেন , উদাহরণস্বরূপ
$build = [
// ...
'#cache' => [
'max-age' => 0,
],
];
যদি এটি একটি বিদ্যমান ব্লক হয়, তবে আপনি এটি রেন্ডার অ্যারেতে যুক্ত করতে এটি পরিবর্তন করতে পারেন।