ম্যাজেন্টো লেআউট এক্সএমএলে লোকাল ফলব্যাক সহ গুগল সিডিএন jQuery


18

গুগল সিডিএন থেকে ম্যাজেন্টোতে jQuery অন্তর্ভুক্ত করার জন্য আমি নিম্নলিখিতটি করেছি:

<default>
    <reference name="head">
        <block type="core/text" name="google.cdn.jquery">
            <action method="setText">
                <text><![CDATA[<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script><script type="text/javascript">jQuery.noConflict();</script>]]>
                </text>
            </action>
        </block>
    </reference>
</default>

তবে আমি যখন স্থানীয় ফ্যালব্যাকের সাহায্যে এটি কার্যকর করতে চাই, যা বেশ ভালভাবে কাজ করে, তখন আমি এটিকে আমার। PhtML এ যুক্ত করে শেষ করব:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
if (!window.jQuery) {
    document.write('<script src="/path/to/your/jquery"><\/script>');
}
</script>
  • লোকাল.এক্সএমএল এ কাজ করার মতো নোডের ফালব্যাকটি সরিয়ে দেওয়ার চেয়ে আরও কি আরও সুন্দর উপায় আছে ?<text>jQuery.noConflict

সম্পাদনা:

প্রশ্নের অন্য অংশের দিকে দৃষ্টি আকর্ষণ করার জন্য - এমন কোনও সম্প্রদায় মডিউল রয়েছে যা আপনার জন্য jQuery অন্তর্ভুক্ত করে? তাদের যদি স্থানীয় jQuery থাকে তবে তা ঠিক আছে - যদি তারা গুগল সিডিএন ব্যবহার করে - তবে আরও ভাল। যদি এটি বাইরে না থাকে তবে আমি একটি তৈরি করতে পছন্দ করব।

  • এমন কোনও গোছানো এক্সটেনশন রয়েছে যা আমাকে নিজে নিজে বুটস্ট্র্যাপ না করে এটিকে পরিচালনা করে?

1
জিকিউরি (আধা-স্ব-লিঙ্ক) অন্তর্ভুক্ত করার জন্য একটি খুব সাধারণ সম্প্রদায় মডিউল: github.com/netz98/N98_BaseJQuery - এটিতে কেবল একটি স্থানীয় জিকুয়েরি অন্তর্ভুক্ত রয়েছে। সিডিএন এর মাধ্যমে ধারণাটি দুর্দান্ত, পুল অনুরোধগুলির মাধ্যমে উন্নত করতে নির্দ্বিধায় :-)
অ্যালেক্স

কৌতূহলের বাইরে: সিডিএন অবিশ্বাস্য বা কেন ফ্যালব্যাকের প্রয়োজন? আপনি কি ধরনের ব্যবহারিক অভিজ্ঞতা আছে?
অ্যালেক্স

2
কিছু দেশ (ইরান, সিরিয়া, ইত্যাদি) সময়ে সময়ে গুগল এবং গুগল সিডিএন অবরোধ করে। এটি আমার ব্যক্তিগত অভিজ্ঞতা। আমি প্রতিক্রিয়া সময়সীমার মতো জিনিসও দেখেছি যা এটি প্রশমিত করে।
ফিলিউঙ্কল

বোঝা. সুতরাং আপনি মডিউলটির কোনও সমাধান অবদান রাখতে পারলে এটি দুর্দান্ত।
অ্যালেক্স

দুর্দান্ত সন্ধান - উপযুক্ত কোনও কিছুর সন্ধান করার জন্য আমি N98 মডিউলটি দেখতে পাইনি। আমি মনে করি আমি সেখানে অবদান রাখব। ধন্যবাদ! তবে <text>উপরে বর্ণিত পদ্ধতিটির সাথে এটি থাকতে পারে ... এটি কোনও গ্রহণযোগ্য সমাধান কিনা তা নিশ্চিত নয়। N98 মডিউলটি পৃথক জেএস ব্যবহার করে নোকনফ্লিক্ট কল করার জন্য ফাইল অন্তর্ভুক্ত রয়েছে, যদিও আমি মনে করি ...
ফিলিঙ্কল

উত্তর:


18

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

<default>
    <reference name="head">
        <block type="core/text" name="google.cdn.jquery">
            <action method="setText">
                <text><![CDATA[<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script><script>window.jQuery||document.write('<script src="/path/to/your/jquery.js">\x3c/script>');</script><script>jQuery.noConflict();</script>]]></text>
            </action>
        </block>
    </reference>
</default>

এটি কাজ করে না
fmsthird

2

আমি হেড.এফটিএমটিএল ফাইলগুলির চারপাশে থাকা ফাইলগুলি এবং চারপাশের ব্লকগুলি এবং ব্লকগুলির মাধ্যমে দীর্ঘ সময় সন্ধান করেছি তবে <হেড> তে ইনজেক্টের জন্য টেমপ্লেটগুলি পরিবর্তন না করে উপায় নেই।

আমি একজন গাধা, আপনি ইতিমধ্যে সবকিছু লিখেছিলেন এবং আমি কয়েক বার বিষয়টিই দেখাশোনা করতো <?php echo $this->getChildHtml() ?>মধ্যে head.phtml: - /

সুতরাং আমি এই জন্য একটি core/templateব্লক এবং একটি টেম্পলেট ব্যবহার করব। এটি পড়া সহজ, বোঝা সহজ এবং পরিচালনা করা সহজ।


যে সমস্যাটি আমি কাটিয়ে উঠার চেষ্টা করছি তা হ'ল প্রতিবার পিএইচটিএমএলকে জোর করে যুক্ত না করে নির্দিষ্ট পৃষ্ঠার ধরণ এবং লেআউটগুলি থেকে এই ব্লকটি যুক্ত / সরিয়ে ফেলার ক্ষমতা। এই মুহূর্তে একটি স্ট্যাটিক ব্লক যথেষ্ট, তবে কেবলমাত্র এটি সর্বত্র থেকে পাওয়া যায় ...
ফিলিঙ্কল

আমি এখানে সমস্যা দেখছি না। আপনি এটিকে <ডিফল্ট> এ যুক্ত করুন এবং অন্য যে কোনও ব্লকের মতো যেখানেই আপনি এটি রাখতে চান না সেখানে এটি সরিয়ে ফেলুন। core/text_listএটিকে অন্য পৃষ্ঠাগুলিতে সরানোর জন্য আপনি একটি যুক্ত করা এবং আপনার যে সমস্ত জিনিস (এটি যদি একাধিক ফাইল হয়) যুক্ত করার বিষয়ে ভাবতে পারেন ।
ফ্যাবিয়ান ব্লাচস্মিড্ট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.