অ্যাডমিন এবং সামনের প্রান্তে সারিবদ্ধ করার জন্য একটি স্ক্রিপ্ট নিবন্ধন করুন


12

যেহেতু আমি এটি বুঝতে পেরেছি, অ্যাডমিন স্ক্রিপ্টগুলি admin_enqueue_scriptsহুক এবং অন্যান্য সমস্ত স্ক্রিপ্টগুলির মাধ্যমে নিবন্ধীকৃত এবং সমবেত হওয়ার কথা বলেছে wp_enqueue_scriptsতাই আমি আমার সমস্ত স্ক্রিপ্টগুলিকে একটি সুস্পষ্ট ও সুসংহত পদ্ধতিতে নিবন্ধভুক্ত করতে এবং সারিবদ্ধ করার জন্য নিম্নলিখিত ফাংশনগুলি সেট আপ করেছি।

আমার প্রশ্ন হ'ল অ্যাডমিনে এবং সামনের প্রান্তে যদি আমার নির্দিষ্ট স্ক্রিপ্টগুলির (যেমন। Jquery বৈধতা প্লাগইন) প্রয়োজন হয় তবে কী হবে? এক্ষেত্রে স্ক্রিপ্টটি নিবন্ধকরণ এবং সন্ধানের জন্য প্রস্তাবিত পদ্ধতি কী? এটিকে দু'বার ডিফেরেন্ট এ with হ্যান্ডেল দিয়ে নিবন্ধ করুন বা wp_enqueue_scriptsকেবল এটির মাধ্যমে নিবন্ধ করুন এবং যদি তাই হয়, যখন প্রয়োজন হয় তখন ডাকা হওয়ার ঝুঁকি থাকে না? (আমি বোঝাতে চাইছি, admin_enqueue_scriptsপূর্ববর্তী সময়ে যদি স্ক্রিপ্টগুলি উপলব্ধ না করা হয় তবে অন্য কেন উপস্থিত থাকবে ?

আমি ডাব্লিউপি-তে এনক্রুইং স্ক্রিপ্টগুলির সংক্ষিপ্তসারগুলি সম্পূর্ণরূপে বুঝতে কেউ আমাকে এটি ব্যাখ্যা করার জন্য সত্যই প্রশংসা করব। ধন্যবাদ

আমার কোড:

// REGISTER ALL NON-ADMIN SCRIPTS
add_action( 'wp_enqueue_scripts', 'register_all_non_admin_scripts' );
function register_all_non_admin_scripts() {

wp_register_script( ... );
wp_register_script( ... );

}

// ENQUEUE NON-ADMIN SCRIPTS CONDITIONALLY
add_action( 'wp_enqueue_scripts', 'enqueue_scripts_where_required' );
function enqueue_scripts_where_required() {

// scripts to be loaded at all times
wp_enqueue_script( '' );

// scripts to be loaded conditionaly
if( is_page( '' ) ) {
    wp_enqueue_style( '' );
}
}

// REGISTER ALL ADMIN SCRIPTS
add_action( 'admin_enqueue_scripts', 'register_all_admin_scripts' );
function register_all_admin_scripts(){
wp_register_script( ... );
wp_register_script( ... );
}

// ENQUEUE ADMIN SCRIPTS
add_action( 'admin_enqueue_scripts', 'enqueue_admin_contact_cpt_js' );
function enqueue_admin_contact_cpt_js(){

global $post_type;

// scripts to be loaded at all times
wp_enqueue_script( '' );

// scripts to be loaded conditionaly by post type
if( 'contact' == $post_type ){
    wp_enqueue_script( '' );
    ...
}
}

উত্তর:


10

আপনি স্ক্রিপ্টগুলি আগে নিবন্ধভুক্ত করতে পারেন , উদাহরণস্বরূপ wp_loaded:

add_action( 'wp_loaded', 'register_all_scripts' );

function register_all_scripts() 
{
    wp_register_script(...);
}

এবং তারপর আপনি সারিবদ্ধ স্ক্রিপ্ট যখনই আপনি তাদের প্রয়োজন:

add_action( 'wp_enqueue_scripts', 'enqueue_front_scripts' );
add_action( 'admin_enqueue_scripts', 'enqueue_back_scripts' );

অন্যান্য স্ক্রিপ্টগুলির সাথে সংঘর্ষ এড়াতে একই হ্যান্ডলগুলি এবং নামগুলি ব্যবহার করুন।


আমার ধারণা যে স্ক্রিপ্টগুলি অ্যাডমিন এবং সামনের প্রান্তে উভয় ক্ষেত্রেই ব্যবহার করা সমস্যার সমাধান করবে; আমি এই ক্ষেত্রে অন্য একটি ফাংশন যুক্ত করব। ধন্যবাদ @ টসচো
রনিইনস্পেইন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.