স্টাইলশিট ছাড়াই wp_add_inline_style ব্যবহার করা


18

আমি যে কাস্টম থিমটি তৈরি করছি তার শিরোনামে আমাকে কাস্টম ইনলাইন শৈলী যুক্ত করতে হবে। আমি wp_add_inline_style()ফাংশনটি জুড়ে এসেছি , যা কাজ করে তবে এটি কোনও নির্দিষ্ট স্টাইলশিটের উপর নির্ভর করে বলে আমার পক্ষে সত্যিই উপযুক্ত নয়। শৈলীপত্রের নির্ভরতা ছাড়াই আমাকে হেড ট্যাগের শেষে ইনলাইন শৈলী যুক্ত করতে হবে।

আমি থিমের স্টাইলশিট বা অস্তিত্বহীন একটি সেট করার চেষ্টা করেছি। উভয় ক্ষেত্রেই এটি কাজ করে তবে এটি কিছুটা নোংরা হ্যাক আইএমও (হয় থিমের স্টাইলশিটটি দু'বার লোড করুন বা ভুতের ফাইলটি দেখুন ...)। কোনও স্টাইলশিট নির্ভর করে মাথায় ইনলাইন স্টাইল যুক্ত করার কোনও সঠিক উপায় আছে কি?

অবশ্যই আমি তাদের সরাসরি হেডার.এইচপিপি ফাইলে যুক্ত করতে পারতাম তবে আমি এড়াতে চাই।

উত্তর:


24

আপনার কেবল পৃষ্ঠা শিরোনামে শৈলীগুলি যুক্ত করতে হবে। এটি করার সর্বোত্তম উপায় হ'ল আপনি যে থিমটি ব্যবহার করছেন সেটিকে ধরে রেখে 'ডাব্লুপি_হেড' অ্যাকশন হুক ব্যবহার করা। তাই ভালো:

add_action('wp_head', 'my_custom_styles', 100);

function my_custom_styles()
{
 echo "<style>*{color: red}</style>";
}

পরীক্ষা করে দেখুন ডাব্লু প্যাড কর্ম আঙ্গুলসমূহ সম্পর্কে আরো জানতে।


সমস্যা নেই! আমি সাহায্য করতে পেরে আনন্দিত.
স্কাইশ্যাব

যদি (আমার মতো) আপনি ড্যাশবোর্ড পৃষ্ঠাগুলিতে কাস্টম ইনলাইন সিএসএস যুক্ত করতে চান তবে আপনি admin_headক্রিয়াটি ব্যবহার করতে পারেন ।
ব্রাজিলিয়ান গাই

16

আপনি কেবল "ডামি" হ্যান্ডেলটি ব্যবহার করতে পারেন:

wp_register_style( 'dummy-handle', false );
wp_enqueue_style( 'dummy-handle' );

wp_add_inline_style( 'dummy-handle', '* { color: red; }' );

আমি এই সমাধানটি সত্যিই পছন্দ করি কারণ আমার স্টাইলটির একটি হ্যান্ডেল রয়েছে এবং এটি এমন একটি এনএসসি ফাইল থেকে অন্তর্ভুক্ত রয়েছে en
dev_masta

ডাব্লিউপি_গ্রিস্টার_স্টাইলের উত্স হিসাবে মিথ্যা ব্যবহারের জন্য ডকুমেন্টেশন কোডেক্স.ওয়ার্ডপ্রেস.আর.এফ
ফাংশন_রফারেন্স

3

আপনার থিমের অবশ্যই একটি ডিফল্ট স্টাইলশিট রয়েছে (অন্যথায় এটি থিম হিসাবে লোড করা হবে না)। আপনার ইনলাইন সিএসএসের হ্যান্ডলার হিসাবে কেবল এটি খুব স্টাইলশিটটি ব্যবহার করুন। একটি উদাহরণ খুঁজে পাওয়া যেতে পারে থিমের functions.php থিম TwentyFifteen (কোড সংক্ষিপ্ততা জন্য এড়ানো) এর:

function twentyfifteen_scripts() {
    wp_enqueue_style( 'twentyfifteen-style', get_stylesheet_uri() );

}
function twentyfifteen_post_nav_background() {
    wp_add_inline_style( 'twentyfifteen-style', $css );
}

1
ওপি বিশেষত wp_add_inline_style () ব্যবহার ব্যতীত অন্য কোনও পদ্ধতির জন্য জিজ্ঞাসা করেছিল। উভয় পদ্ধতিই কাজ করে এবং আমি wp_add_inline_style () এর সাথে যাওয়ার কোনও বাধ্যকারী কারণ খুঁজে পাইনি। যদি আপনি কোনও কারণ জানেন তবে আমি এটি সম্পর্কে জানতে চাই।
স্কাইশ্যাব

আপনার সমাধান কাজ করে, তবে ডাব্লুপি দলের কারও কাছ থেকে একবার শুনেছি এমন কিছু অনুসারে এটি এখনও "হ্যাকি" (যদি আমার ভুল না হয়); ঠিক আমার মতামত । আমি মনে করি যে ওপি ভাবছিল যে স্টাইল শীটটি দু'বার লোড করা বা ভুতের হুক ব্যবহার না করে এটি করার কোনও উপায় নেই। যাইহোক, যদি তারা কোনও প্লাগইন অনুমোদন না করে থাকে তবে সর্বদা থিমের স্টাইল শীটটি সাথে যেতে হবে। আপনার সমাধানটি কোডেক্সে নথিভুক্ত হওয়ায় আমি আমার উত্তরটিও সম্পাদনা করছি। :)
ক্যাস্পার

আমি wp_add_inline_style () দিয়ে ঘুরেছি এবং আমি এটি পেয়েছি। শৈলীর সাথে স্টাইলগুলি সংযুক্ত করার সুবিধা হ'ল এটি যদি শনাক্ত হয়ে যায়, শৈলীগুলি মুদ্রণ করা হবে না। তবে উভয়ই পদ্ধতি তাদের মাথায় ইনলাইন প্রিন্ট করে। সুতরাং বলুন যে আপনি একটি প্লাগইন বিকাশকারী এবং আপনার স্টাইলগুলি মুদ্রণযোগ্য। থিম শৈলীর সাথে এর কোনও যোগসূত্র নেই, এবং তাই যদি কোনও শিশু থিম নিজস্ব থিম শৈলীর নিজস্ব ব্যবহার করতে সন্ধান করে তবে এখন আপনার প্লাগইন স্টাইলগুলি আউটপুট পাচ্ছে না। সুতরাং, ওপি এই কারণে অনুরোধের সেই অংশটি নির্দিষ্ট করে থাকতে পারে।
স্কাইশ্যাব
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.