ওয়ার্ডপ্রেসে .css এর সংস্করণটি কীভাবে পরিবর্তন করবেন?


13

শিরোনামের পরামর্শ অনুসারে, আমি আমার থিমের একটি .css ফাইলের সংস্করণ কীভাবে পরিবর্তন করব তা নিশ্চিত নই। এই মুহুর্তে .css সংস্করণটি এরকম:

<link rel='stylesheet' id='xxxx'  href='https://www. site css/ styles.css?ver=4.6.1' type='text/css' media='all' />

আমার কি চালানোর দরকার আছে এমন একটি স্ক্রিপ্ট আছে - উপরের হিসাবে আমি কোথায় 4..6.২ সংস্করণটি খুঁজব?


আপনি কীভাবে এই স্ক্রিপ্টটি মুদ্রণের জন্য পাচ্ছেন?
নাথান পাওয়েল

উত্তর:


18

চতুর্থ যুক্তি, $verকারণ wp_enqueue_style()আপনাকে সংস্করণ সেট করতে দেয়:

wp_enqueue_style( string $handle,
                  string $src = false,
                  array $deps = array(),
                  string|bool|null $ver = false,
                  string $media = 'all' );

দস্তাবেজগুলি:

( ver (স্ট্রিং | bool | নাল) (alচ্ছিক) স্ট্রিং উল্লেখ করে স্টাইলশিট সংস্করণ নম্বর, যদি এটির একটি থাকে, যা ইউআরএলে ক্যাশে বুস্টিংয়ের উদ্দেশ্যে ক্যোরি স্ট্রিং হিসাবে যুক্ত করা হয়। যদি সংস্করণটি মিথ্যাতে সেট করা থাকে তবে একটি সংস্করণ নম্বর স্বয়ংক্রিয়ভাবে বর্তমান ইনস্টল করা ওয়ার্ডপ্রেস সংস্করণের সমান যুক্ত হয়ে যায়। যদি নালিতে সেট করা থাকে তবে কোনও সংস্করণ যুক্ত করা হবে না। ডিফল্ট মান: false


তার জন্য ধন্যবাদ - আমি অনুমান করি যে আমি যা জিজ্ঞাসা করছি তা হল 'আমি কীভাবে এটি করব' - অর্থাত 'আমি কীভাবে নতুন স্ক্রিনটি তৈরি করতে সেই স্ক্রিপ্টটি চালাব'? আশা করি এটি উপলব্ধি করা হয়েছে ...
হেনরি

আপনি যে প্রশ্নটি কল করেন সেখানেই আপনার প্রশ্নটি আপডেট করবেন wp_enqueue_style()? ওয়ার্ডপ্রেস $verআমার উত্তরে পোস্ট করা ব্যাখ্যার উপর ভিত্তি করে সংস্করণটি স্বয়ংক্রিয়ভাবে পরিচালনা করে , তাই আমি ধরে নিচ্ছি যে $ ver মিথ্যাতে সেট করা আছে। আপনি যদি এটি পরিবর্তন করতে চান তবে argument ver টি যুক্তিটিকে একটি নতুন স্ট্রিংয়ে পরিবর্তন করুন (আমি ইতিমধ্যে 4.6.2 ব্যবহার করব না যেহেতু সেই কনভেনশনটি ওয়ার্ডপ্রেস ইতিমধ্যে ব্যবহার করেছে), তবে প্রযুক্তিগতভাবে এটি কার্যকর হবে।
ডেভ রোমি

1
আপনি সহজেই সেখানে যেকোন কিছু বিকল্প করতে পারেন। উদাহরণস্বরূপ $ver = time();আপনি পৃষ্ঠাটিতে যতবার আঘাত হবেন ততবার একটি নতুন সংস্করণ তৈরি হবে এবং সংস্করণটি সময় হবে।
নাথান পাওয়েল

8

wp_enqueue_style()শিরোনামে স্টাইল শীট যুক্ত করতে মূলত থিমের ব্যবহারের ফাংশনগুলি তাদের ফাংশনগুলির মধ্যে রয়েছে ph আপনার থিমটি একই রকম হয় কিনা তা এখানে কীভাবে খুঁজে পাবেন।

আপনার wp-content/themes/YOUR_THEME_NAME/functions.phpফাইলটি খুলুন এবং স্টাইল শীটটি যুক্ত করছে এমন লাইনটি সন্ধান করুন, যেমন:

wp_enqueue_style('main_style',  get_stylesheet_directory_uri() . '/style.css');

বা পছন্দ করুন:

wp_enqueue_style( 'twentysixteen-style', get_stylesheet_uri() );

আপনি আইডিটি অনুসন্ধান করতে পারেন ( -cssঅংশ ব্যতীত ) ... যদি আইডিটি থাকে: main_style-cssকেবল main-styleআপনার ফাংশন.এফপি ফাইলটিতে সন্ধান করুন এবং আপনার সম্ভবত কোডটির লাইনটি সন্ধান করা উচিত।

এখন আপনি কোডটি খুঁজে পেয়েছেন এবং আপনি জানেন যে থিম ফাংশন.এফপি wp_enqueue_style()ফাইল ব্যবহার করে এই স্টাইলশিটটি যুক্ত করে । সংস্করণের জন্য আপনার এই কোডটি আপডেট করতে হবে।

$style_ver = filemtime( get_stylesheet_directory() . '/style.css' );
wp_enqueue_style( 'main_style', get_stylesheet_directory_uri() . '/style.css', '', $style_ver );

আপনি দেখতে পাচ্ছেন যে এই কোডটি filemtime()পিএইচপি ফাংশন ব্যবহার করে স্টাইল.এসএস ফাইলের শেষ সংশোধিত সময় পায় এবং এটি time()কেবল জিনিসগুলি পরিষ্কার করার জন্য পিএইচপি ফাংশন ব্যবহার করে টাইমস্ট্যাম্পে সময় রূপান্তর করে ।

আপনি যদি না চান তবে প্রতিবার সংস্করণটি পরিবর্তনশীলভাবে পরিবর্তন হয় আপনি কেবল এটি করতে পারেন:

wp_enqueue_style( 'main_style', get_stylesheet_directory_uri() . '/style.css', '', '1.5' );

যে প্রায় কাছাকাছি এটা. সালাম


শিরোনাম: আপনার get_stylesheet_directory()অভ্যন্তরটি ব্যবহার করা উচিত filemtime()কারণ এটি কোনও সিস্টেমের পথে ফিরে আসবে।
হাফ ক্রেজিড

3

আমি এই উত্তরগুলি থেকে খুব বেশি কিছু পাইনি তাই আমি ভেবেছিলাম আমার জন্য যা কাজ করে তা লিখি। আমি জানি কোডেক্স বলেছেন:

(ver (স্ট্রিং | bool | নাল) (alচ্ছিক) স্ট্রিং উল্লেখ করে স্টাইলশিট সংস্করণ নম্বর, যদি এটির একটি থাকে, যা ইউআরএলে ক্যাশে বুস্টিংয়ের উদ্দেশ্যে ক্যোরি স্ট্রিং হিসাবে যুক্ত করা হয়। যদি সংস্করণটি মিথ্যাতে সেট করা থাকে তবে একটি সংস্করণ নম্বর স্বয়ংক্রিয়ভাবে বর্তমান ইনস্টল করা ওয়ার্ডপ্রেস সংস্করণের সমান যুক্ত হয়ে যায়। যদি নালিতে সেট করা থাকে তবে কোনও সংস্করণ যুক্ত করা হবে না। ডিফল্ট মান: মিথ্যা

এটি আসলে কীভাবে কাজ করে তা খুব গুপ্ত বিষয়। আমার স্টাইলশীটে wp_enqueue_styleকোয়েরি প্যারামটি ট্রিগার করতে আমি কোনও সংস্করণ নম্বর পেতে পারি না ?ver=1.2.3। তবে এটি সত্যে সেট করা স্টাইলশীটের ঘোষিত সংস্করণটিকে স্টাইলশিটে অনুমতি দেয় cache bust। (পড়তে)

আপনার স্টাইল। CSS এর মধ্যে আপনাকে অবশ্যই আপনার থিমটির নাম দিন। এটি ডব্লিউপি দ্বারা প্রয়োজনীয়। তবে অন্যান্য বিকল্পগুলি যেমন versionwp_enqueue_style এর সংস্করণ বুলিয়ানটিও রেফারেন্স দেয়।

/******************************************************************
Site Name: MySite.com
Author: @BenRacicot
Version: 4.0 // <- wp_enqueue_style's version number
Stylesheet: Main Stylesheet
******************************************************************/

এখন যখন আমি এটি পরিবর্তন Version: 4.1করি getstyle.css?cache-bust=0.24135995238933283


2

আপনি সহজেই time()এঙ্কিউ স্টাইল বা স্ক্রিপ্টের সময়ে ব্যবহার করতে পারেন ..

ওয়ার্ডপ্রেস wp_enqueue_style()ফাংশন ব্যবহার না করে

<link rel='stylesheet' id='xxxx'  href='https://www. site css/ styles.css?ver=<?php echo time(); ?>' type='text/css' media='all' />

wp_enqueue_style()ফাংশন ব্যবহার করে

wp_enqueue_style('style_sheet_name', get_stylesheet_directory_uri() . '/custom_style.css', '', time());

অথবা

wp_enqueue_style('style_sheet_name', get_stylesheet_uri() . '/custom_style.css', '', time());

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