رفتن به مطلب

سوال در رابطه با wp_register_script


پست های پیشنهاد شده

سلام دوستان

تو قالب سایت من برای لود کردن اسکریپت ها از این تابع استفاده شده یعنی همون هندل واسش درست کردن واسه تک تک اسکریپت ها

خلاصه من به این قضیه کاری ندارم

با توجه به این صفحه http://codex.wordpre...register_script

که در رابطه با این تابع

گویه یه حالتی داره که میشه اسکریپت رودر فوتر لود کرد

wp_register_script( $handle, $src, $deps, $ver, $in_footer );

$in_footer (boolean) (optional) Normally scripts are placed in the <head> section. If this parameter is true the script is placed at the bottom of the <body>. This requires the theme to have the wp_footer() hook in the appropriate place. Note that you have to enqueue your script before wp_head is run, even if it will be placed in the footer. (New in WordPress 2.8) Default: false

خب حالا سوال من اینه که واسه این تکه کد

wp_register_script('Feature_slider', MOM_JS . '/jquery.cycle.all.min.js', 'jquery');

چطور قابلیت در فوتر لود شدن فعال کنم؟

ویرایش شده توسط Sgwgo
لینک به ارسال

خب سوال من اینجاست که این تابع 2 پارامتر داره که میتونن خاصیت true و false بگیرن

تابع چطور میفهمه این true که گذاشتم مال کدوم پارامتر؟

پارمتر $ver

و پارمتر $in_footer

لینک به ارسال

پارامتر چهارم ، ver$، مربوط به ورژن اسکریپت هست، بصورت عبارت‌هایی به شکل 1.2 ، 1.5.6.0 ، 5 ( نوع این پارامتر بولین نیست که true بگیره)...وقتی توی فایل اسکریپت تغییری ایجاد می‌کنی با تغییر این پارامتر، مرورگر کاربر [به جای اینکه از کَش این فایل رو بخونه] فایل جدید رو لود می‌کنه.

پارامتر آخر هم که برای لود در فوتر ئه، مقدار پیشفرض‌ــِش true هست و نیاز نیست مقداردهی کنی.

مثال:


wp_register_script( 'my_script', 'test.js', array('jquery'), ' ', false );

wp_register_script( 'my_script2', 'test2.js', array('jquery', 'my_script'), '2.0.5 ', true );

موفق باشیـ..

ویرایش شده توسط abdy
لینک به ارسال

بصورت دیفالت فالس هستش که من ترو کردم ولی نرفت تو فوتر

اینو هم بگم که wp-footer() تو قالبم هست

لینک به ارسال

بله بله...من اشتباه کردم، مقدار دیفالت false ئه.. ببخشید

احتمالن یه اسکریپت دیگه توی کد هست که وابسته به این اسکریپت ئه و اون توی هدر لود میشه...در نتیجه این اسکرپیت هم توی هدر لود میشه

لینک به ارسال

چه کدی الان استفاده می کنید؟ (اخرین تغییر)

هیچی دیگه آقا مرتضی من True اضفه کردم به کد که مثلا در فوتر لود بشه ولی متاسفانه هنوز تو هدر هستش


wp_register_script('Feature_slider', MOM_JS . '/jquery.cycle.all.min.js', 'jquery', TRUE);

لینک به ارسال

به شماره پارامتر توجه کنید

wp_register_script('Feature_slider', MOM_JS . '/jquery.cycle.all.min.js', 'jquery' , '' , TRUE);

لینک به ارسال

آها پس واسه ورژن باید خالی بزارم؟

خب منم تو پست های قبل به این قضیه اشاره کردم ولی گویا دوستان متوجه نشدن

لینک به ارسال

آقا پارسا ممنونم جواب داد عزیز

فقط یه سوال این طراح قالب ما اسکریپت پیشفرض وردپرس به این صورت لود کرده حالا اگه بخوام اینم بفرستم تو فوتر باید چندتا پرامتر جا خالی بزارم ؟ یا اصلا چطور میشه؟


wp_enqueue_script('jquery');

لینک به ارسال

دوستان کسی روش جدید سراغ نداره واسه متوقف کردن لود اسکریپ افزونه lightbox-plus توی صفحه اصلی

آخه چندجا روش دیدم و جواب نگرفتم از جمله آموزش سایت newbie

لینک به ارسال

آقا پارسا ممنونم جواب داد عزیز

فقط یه سوال این طراح قالب ما اسکریپت پیشفرض وردپرس به این صورت لود کرده حالا اگه بخوام اینم بفرستم تو فوتر باید چندتا پرامتر جا خالی بزارم ؟ یا اصلا چطور میشه؟


wp_enqueue_script('jquery');

ابتدا با wp_deregister_script حذف باید بشه

بعد دوباره ثبت بشه

لینک به ارسال

میشه کمی بیشتر توضیح بدی

فقط یچیز من بگم

من نیام این کی که گذاشترو پاک کنم یعنی این:


wp_enqueue_script('jquery');

بعد بیام یدونه


wp_register_script('defult j', 'wp-includes/js/jquery/jquery.js', 'jquery' , '' , TRUE);

تعریف کنم

و بعد با


wp_enqueue_script('defult j');

لودش کنم

مثل کاری که واسه بقیه اسکریپت ها کرده

ویرایش شده توسط Sgwgo
لینک به ارسال

خوب کدهاتون همین هست فقط قبل:

wp_register_script('defult j', 'wp-includes/js/jquery/jquery.js', 'jquery' , '' , TRUE);

با کدی که پارسا داده jquery رو از رجیستر خارج کنید

لینک به ارسال

آقا مرتضی ممنونم

میشه گفت متوجه شدم

ولی چون چند چیز هنوز برام سوال میپرسم

مگه این اسکریپت کجا رجیستر شده؟؟؟؟

wp_enqueue_script('jquery');

مگه با برداشتن همین کد بالا از ریجستر خارج نمیشه؟

لینک به ارسال

ممکنه توسط پوسته یا افزونه ای رجیستر شده باشد

البته پیشفرض رجیستر هست، فقط در صف نیست

لینک به ارسال
  • 1 سال بعد...

سلام

ببخشید یک سوال

من جایی خوندم که بهتره برای بالا بردن سرعت لود سایت و جلوگیری از تداخل بیایم و از جی کوئری خود وردپرس استفاده کنیم، چون اگه ما یک جی کوئری جدا در هدر لود کنیم ممکنه یک افزونه هم بیاد و جی کوئری وردپرس رو لود کنه و... و باز گفته بود که بیایم و جی کوئری وردپرس رو با جی کوئری گوگل جایگزین کنیم به این ترتیب اگه جی کوئری از قبل تو کش مرورگر وجود داشته باشه دیگه احتیاج به لود مجدد نیست و...

آیا این مطلب درسته و جواب میده؟

سوال بعدی هم اینکه اگه یکه فایل جی کوئری رو با استفاده از wp_register_script در فانکشن ریجستر کنیم. این تابع خودش به صورت اتوماتیک این فایل رو به قالب اضافه میکنه و دیگه احتیاجی به لود کردن فایل در هدر نیست یا نه باز هم همچنان باید با استفاده از wp_enqueue_script فایل رو در هدر فراخوانی کرد؟

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...