Sgwgo

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

20 پست در این موضوع قرار دارد

ارسال شده در (ویرایش شده)

سلام دوستان

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

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

با توجه به این صفحه 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
0

به اشتراک گذاری این پست


لینک به پست

خاصیت $in_footer رو باید true کنید

1

به اشتراک گذاری این پست


لینک به پست

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

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

پارمتر $ver

و پارمتر $in_footer

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

پارامتر چهارم ، 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
3

به اشتراک گذاری این پست


لینک به پست

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

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

0

به اشتراک گذاری این پست


لینک به پست

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

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

0

به اشتراک گذاری این پست


لینک به پست

متوجه نشدم میشه کمی واضحتر

0

به اشتراک گذاری این پست


لینک به پست

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

0

به اشتراک گذاری این پست


لینک به پست

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

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


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

0

به اشتراک گذاری این پست


لینک به پست

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

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

2

به اشتراک گذاری این پست


لینک به پست

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

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

0

به اشتراک گذاری این پست


لینک به پست

ورژن رو هر چیزی میتوانید قرار دهید

1

به اشتراک گذاری این پست


لینک به پست

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

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


wp_enqueue_script('jquery');

0

به اشتراک گذاری این پست


لینک به پست

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

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

0

به اشتراک گذاری این پست


لینک به پست

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

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


wp_enqueue_script('jquery');

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

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

2

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

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

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

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


wp_enqueue_script('jquery');

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


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

تعریف کنم

و بعد با


wp_enqueue_script('defult j');

لودش کنم

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

ویرایش شده در توسط Sgwgo
0

به اشتراک گذاری این پست


لینک به پست

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

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

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

0

به اشتراک گذاری این پست


لینک به پست

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

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

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

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

wp_enqueue_script('jquery');

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

0

به اشتراک گذاری این پست


لینک به پست

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

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

1

به اشتراک گذاری این پست


لینک به پست

سلام

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

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

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

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

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری