নির্দিষ্ট পৃষ্ঠার টেম্পলেটগুলিতে ডাব্লিউপি এনকুই স্টাইল


24

আমি একটি থিমের প্রক্রিয়াধীন, আমি পৃষ্ঠা-টেম্পলেট ব্যবহার করে অবতরণ পৃষ্ঠাগুলি যুক্ত করতে চাই। আমি সুনির্দিষ্ট পৃষ্ঠার টেম্পলেটগুলির জন্য শৈলী এবং জেএস তৈরি করতে দেখায় এমন কোথাও খুঁজে পাচ্ছি না। কোন পরামর্শ. যাত্রা। ল্যান্ডিং পৃষ্ঠা 1 - ল্যান্ডিং-পৃষ্ঠা-টেম্পলেট-one.php ব্লগ বা হোমপেজের চেয়ে খুব আলাদা স্টাইল এবং জেএসের প্রয়োজন হবে।

উত্তর:


29

আপনি যদি WP এর অনেকগুলি উন্নয়ন কাজ করার পরিকল্পনা করেন তবে আপনার এই পৃষ্ঠাটি বুকমার্ক করা উচিত: http://codex.wordpress.org/ শর্তযুক্ত_ট্যাগগুলি

অন্য উত্তরটি কাজ করে তবে শর্তসাপেক্ষে আপনার পৃষ্ঠাগুলির উপর নির্ভর করে (myurl.com/this-is-the-slug) কখনই পরিবর্তন হয় না। একটি আরও নির্ভরযোগ্য পদ্ধতি (আইএমও), এবং যেটি এই ক্ষেত্রে ফিট করে, তার is_page_template('example-template.php')পরিবর্তে শর্তযুক্ত চেক ব্যবহার করা হবে।


22

is_page( 'landing-page-template-one' )আপনার অতিরিক্ত সমস্ত এনক্যু বিবৃতিগুলির অংশ হিসাবে আপনি আপনার পৃষ্ঠার নির্দিষ্ট শৈলী / স্ক্রিপ্টগুলির চারপাশে শর্তযুক্ত ব্যবহার করতে পারেন ।

function my_enqueue_stuff() {
  if ( is_page( 'landing-page-template-one' ) ) {
    /** Call landing-page-template-one enqueue */
  } else {
    /** Call regular enqueue */
  }
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_stuff' );

এমনকি আপনি elseifঅন্যান্য পৃষ্ঠাগুলি ইত্যাদির জন্য উপরের অংশে আরও চেইন করতে পারেন etc.

রেফারেন্স: কার্যাদি রেফারেন্স -is_page()


আপনাকে স্বাগতম শান, সাহায্য করে খুশি।
এডওয়ার্ড ক্যাসি

2
is_page_template()পৃষ্ঠা স্লাগ সহজেই পরিবর্তিত হওয়ায় আমি ব্যবহার করা পছন্দনীয়। এই সমাধানটি, এটি কার্যকরভাবে কাজ করার সময়, যদি স্লাগ পরিবর্তন করা হয় তবে ভেঙে যাবে। ভবিষ্যতে যদি কেউ সমস্যায় পড়ে তবে কেচজরের সমাধান দেখুন।
BODA82

ধন্যবাদ! অন্যরা যারা এই বিষয়ে হোঁচট খেয়েছে তাদের জন্য: শর্তাধীন বিবৃতি is_pageঅবশ্যই ক্রিয়াতে সংযুক্ত ফাংশনে থাকতে হবে এবং add_actionবিবৃতিটি নিজেই মোড়ানো নয়। আপনি যদি add_actionশর্তাধীন বিবৃতিটি মোড়ানো করেন তবে পৃষ্ঠার প্রক্রিয়াটি শুরুতে এটি কোন পৃষ্ঠাটি তা জানা উচিত।
হেন্ডেকা

2

যদি পৃষ্ঠা টেম্পলেটটি থিমের একটি উপ-ডিরেক্টরিতে অবস্থিত (ডাব্লুপিপি ৩.৪ থেকে), ফোল্ডারের নাম এবং টেম্পলেট ফাইলের নামটিতে একটি স্ল্যাশ প্রিন্ট করুন, যেমন:

is_page_template( 'templates/about.php' );

সুতরাং, পুরো ফাংশনটি দেখতে দেখতে:

function my_enqueue_stuff() {
  if ( is_page_template( 'landing-page-template-one' ) ) {
    /** Call landing-page-template-one enqueue */
  } else {
    /** Call regular enqueue */
  }
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_stuff' );

তথ্যসূত্র: অফিসিয়াল ডকুমেন্টেশন


উল্লেখ করার জন্য ধন্যবাদ যে is_page_template ()চেকটি এনকুই ফাংশনের ভিতরে থাকা উচিত, এবং তার চারপাশে নয়।
গ্রেগন 3

1

আমি জানি না যে অন্যান্য উত্তরগুলিতে প্রদত্ত সমাধানগুলি কাজ করতে ব্যবহৃত হয়েছিল, তবে (যেহেতু কোনও গ্রহণযোগ্য উত্তর নেই!) মনে হয় সঠিক উত্তরটি বর্তমানে:

function my_enqueue_stuff() {
    if ( get_page_template_slug() == 'landing-page-template-one.php' ) {
        wp_enqueue_script('my-script-handle', 'script-path.js', ... );
    }
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_stuff' );

is_page_template () কেবল https://developer.wordpress.org/references/function/is_page_template/ অনুসারে লুপের বাইরে কাজ করে ।


উল্লিখিত দস্তাবেজ অনুসারে, এটি লুপের অভ্যন্তরে ব্যবহার করা যাবে না
সেলরন্ড

লুপের বাইরে এটাই আমি বলেছিলাম ... * ব্লাশ *
সমৃদ্ধ বিমান

1

বলুন যে আপনার টেম্পলেটটির নামটি স্বভাবের এবং আপনি সেই পৃষ্ঠায় বুটস্ট্র্যাপ লোড করতে চান যাতে আপনি নির্দিষ্ট পৃষ্ঠার টেম্পলেটগুলিতে স্টাইলটি এ জাতীয় তৈরি করতে পারেন:

যেতে function.php ফাইল তারপর এই মত অবস্থা চেক করুন:

function temper_scripts() {

    if(basename(get_page_template()) == 'temper.php'){

       wp_enqueue_style('bootstrap', '//stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css');

    }

}

add_action('wp_enqueue_scripts', 'temper_scripts');
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.