ডি 7 এর জন্য সেরা সিএসএস এবং জেএস সমষ্টি / মিনিফিকেশন কৌশল


8

ড্রুপাল 6 এর দুর্দান্ত অ্যাডাগাগ মডিউল রয়েছে, যা বুদ্ধিমানভাবে সিএসএস এবং জেএস বান্ডিল করার দুর্দান্ত কাজ করে , তবে বর্তমানে কোনও ডি 7 প্রকাশ হয় না।

আমি যা অর্জন করতে চাইছি তা হ'ল:

  • কম সিএসএস এবং জেএস ফাইল (5 সিএসএস এবং 5 জেএস ফাইলগুলি অনেক বেশি)
  • জেএস ফাইলগুলির মিনিফিকেশন রয়েছে (বর্তমানে মূলত এটি কেবল সিএসএসের জন্য করে)

এখানে কোনও ড্রুপাল 7 সমাধান রয়েছে যা এখানে সহায়তা করবে? এটি অপ্টিমাইজ করার সাথে অন্যান্য ব্যক্তির অভিজ্ঞতা কী?


সম্পাদনা: প্রশ্নটি মূলত ২০১১ সালে পোস্ট করা হয়েছিল adv এখন অ্যাডগ্যাগের একটি খুব স্থিতিশীল ডি 7 রিলিজ রয়েছে ।

উত্তর:


12

ডি 7-র জন্য, কোর লাইব্রেরিতে একটি শিক্ষণ মোড রয়েছে যা আপনার সাইট সম্পর্কে বাস্তব-বিশ্বের পরিসংখ্যানের ভিত্তিতে একত্রিত হয়।

আপনি যদি সমস্ত কিছুকে এক বিশাল আকারের উপর চাপিয়ে দিতে চান তবে আমি কিছু নমুনা কোড সহ একটি নিবন্ধ লিখেছি :

/**
 * Implements hook_js_alter().
 */
function mymodule_js_alter(&$javascript) {
  uasort($javascript, 'drupal_sort_css_js');
  $i = 0;
  foreach ($javascript as $name => $script) {
    $javascript[$name]['weight'] = $i++;
    $javascript[$name]['group'] = JS_DEFAULT;
    $javascript[$name]['every_page'] = FALSE;
  }
}

/**
 * Implements hook_css_alter().
 */
function mymodule_css_alter(&$css) {
  uasort($css, 'drupal_sort_css_js');
  $i = 0;
  foreach ($css as $name => $style) {
    $css[$name]['weight'] = $i++;
    $css[$name]['group'] = CSS_DEFAULT;
    $css[$name]['every_page'] = FALSE;
  }
}

দ্রুপাল.অর্গ ইস্যু # 1034208 এছাড়াও কঠোর আদেশের প্রয়োজনীয়তাগুলি কিছুটা শিথিল করার প্রস্তাব দেয়।


দৈত্যাকার সামগ্রিক সঠিক আচরণটি বলে মনে হচ্ছে না, এটি পৃষ্ঠার জন্য সত্যই 1 টি বড় সিএসএস / জেএস ফাইল তৈরি করবে, তবে আপনি যে পৃষ্ঠায় আছেন তার উপর নির্ভর করে এই ফাইলটি পরিবর্তিত হবে। এটি অবশ্যই আদর্শের চেয়ে কম।
wiifm

ঠিক ঠিক, প্রতিটি পৃষ্ঠা যদি বিভিন্ন জেএস ফাইল লোড করে, তবে সামগ্রিকভাবে অগত্যা পৃথক হবে। আপনি কেবলমাত্র কারণটি ড্রুপাল 7 টি ফাইলকে কার্যকরী গোষ্ঠীগুলিতে বিভক্ত করেছেন (জেএস_লিবারি, জেএস_ডিএফএলটি এবং জেএস_থেম)। জটিল সাইটগুলির সাথে এটি প্রায়শই একটি জায়ান্ট ফাইলের চেয়ে বেশি দক্ষ।
ডিলান ট্যাক

1
যদি 3 টি গ্রুপ থাকে তবে 5 টি ফাইল মাথায় কীভাবে থাকবে? কখনই 3 এর বেশি নয়? 1 টি ফাইলের সমস্ত কিছুকে বান্ডিল করা স্পষ্টতই একটি ভয়ঙ্কর ধারণা, তবে কীভাবে জেএস ফাইলগুলিকে ন্যূনতম রাখবেন?
রুডি

আমি এখানে উল্লিখিত কোডটি চেষ্টা করেছি। আসলে এটি আমার জন্য দুটি সংক্ষেপিত জেএস ফাইল তৈরি করে। আমি কীভাবে এটিতে একটি জেএস ফাইল তৈরি করতে পারি?
এআরুন

@ ডিলানট্যাক আমার ওয়েবসাইটের একটিতে সিএসএস ফিল্ড লোড করার ক্ষেত্রে সমস্যা আছে [ drupal.stackexchange.com/questions/128649/… এবং ওয়েবসাইটের ঠিকানা [ live.md/] আমি আপনার কোডটি কোথায় রাখি সেদিকে ঘুরে বেড়াচ্ছিলাম, এবং আমি আপনার কোডটি পাশাপাশি ব্যবহার করতে পারি? অ্যাডগ্যাগ মডিউল?
ইয়ামা

3

অ্যাডএজিজি ডি 7 তৈরি করা হচ্ছে। অন্যান্য বিকল্প (অন্তর্ভুক্ত উদ্ধৃতিগুলি তাদের প্রকল্প পৃষ্ঠাগুলি থেকে রয়েছে):

... uglify.js এর সাহায্যে জাভাস্ক্রিপ্টের অন ফ্লাইট মিনিফিকেশনকে অনুমতি দেয়। মডিউলটি মিনিফিকেশন করতে ডিফল্টরূপে একটি ওয়েব পরিষেবায় (uglify.me) উপর নির্ভর করে তাই আপনাকে জাভা স্ক্রিপ্টের ক্ষুদ্রায়িত সুবিধাটি উপভোগ করতে আপনার সার্ভারে কোনও প্রাক প্রসেসিং করার দরকার নেই।

... কোনও সাইটে ফ্রন্ট এন্ড পারফরম্যান্স বাড়ানোর জন্য ডিজাইন করা হয়েছে। স্পিডি মডিউলটির এই প্রথম প্রকাশে এটি ইতিমধ্যে মাইনযুক্ত নয় এমন মূল জাভাস্ক্রিপ্ট ফাইলগুলির সংক্ষিপ্ত সংস্করণ সরবরাহ করে। উদাহরণস্বরূপ, jquery.js (ইতিমধ্যে minified) না থাকলে drupal.js এর একটি সংক্ষিপ্ত সংস্করণ সরবরাহ করা হয়েছে।


অ্যাডএজিজি 7.x এখন তার প্রথম আরসিতে। drupal.org/project/advagg এটি ব্যবহার সুপারিশ
mikeytown2
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.