জেকিল তারিখ ফর্ম্যাটিং কীভাবে কাজ করে?


95

আমি জেকিলকে একটি সাধারণ সাইট তৈরি করতে ব্যবহার করছি।

আমি ফর্ম্যাটটিতে তারিখের ক্ষেত্রটি প্রদর্শন করতে চাই 12 September 2011

কিছু সৃজনশীল গুগলিংয়ের মাধ্যমে আমি পেয়েছি, কিছুটা তারিখ-বিন্যাসের হেরফের, তবে এমন কিছুই যা আমাকে মাসের নাম মনে করে না। {{ page.date| date: "%m-%d-%Y" }}আমার যা আছে তা হ'ল যা আমাকে আউটপুট হিসাবে পেয়ে থাকে 09-12-2011তবে আমি যা খুঁজছি তা তেমন নয়।

জেকিলের নাম হিসাবে মাসটি পাওয়ার কোনও উপায় আছে কি?

বা, ব্যতীত, তারিখের বৈশিষ্ট্যের জন্য কোনও ডকুমেন্টেশন আছে?


আকর্ষণীয় ফিল্টারগুলি হ'লdate_to_string এবং date_to_xmlschema( jekyllrb.com / ডকস / টেম্পলেটগুলি দেখুন )
মার্টিন থোমা

সর্বাধিক সম্পূর্ণ তারিখ জেকিল / তরল তারিখের ফর্ম্যাটিং ডকুমেন্টটি আমি খুঁজে পেতে পারি: alanwsmith.com/jekyll-liquid-date-
formattting-

উত্তর:


164

সমাধান

এই আউটপুট ফিল্টার:

{{ page.date | date: "%-d %B %Y" }}

তারিখগুলি ফর্ম্যাট করা যেমন:

9 September 2013

দিনের জন্য বিয়োগ ( -)টি মিস করবেন না তা নিশ্চিত হন %-d। এটি ছাড়াই দশজনের নীচের সংখ্যার শীর্ষস্থানীয় জিরো থাকবে (উদাঃ 09 September 2013)।

স্বতন্ত্র তারিখের ফর্ম্যাটিং টোকেন সম্পর্কিত বিবরণগুলি তরল "আউটপুট ট্যাগ এবং ফিল্টার" নথিপত্র পৃষ্ঠায় পাওয়া যাবে

অধিক তথ্য

আমি জেকিল তারিখের ফর্ম্যাটিংয়ের উদাহরণগুলির একটি বড় সেট একসাথে রেখেছি । এটি বেশ কয়েকটি ফরম্যাটের জন্য উদাহরণ সরবরাহ করে এবং আপনার যে কোনও উপায়ে ফর্ম্যাট করার জন্য যথেষ্ট বিশদ সরবরাহ করা উচিত। কিছু উদাহরণ অন্তর্ভুক্ত:

  • 2013-09-23
  • সেপ্টেম্বর 23, 2013
  • 23 শে সেপ্টেম্বর, 2013
  • 4 জুলাই 2013 (অর্থাত্ "জুলাই" এর পরিবর্তে "জুলি" এর মতো অন্যান্য ভাষায় নাম পরিবর্তন করা)।

উপভোগ করুন!


এটি কি এনএনএক্সএক্স ফরম্যাটে, অর্থাৎ প্রথম তৃতীয় তৃতীয় ইত্যাদিতে ফর্ম্যাট করা সম্ভব?
আয়ান

@ ইয়ান - আমি তরল তারিখের বিন্যাসগুলি বাদ দিয়ে "1 ম", "2 য়" ইত্যাদি করার কোনও উপায় দেখতে পাচ্ছি না। কিছু অতিরিক্ত যুক্তি thrownোকানো দিয়ে এটি সম্ভব হতে পারে specifically সে জন্য বিশেষভাবে আরও একটি প্রশ্ন পোস্ট করুন এবং দেখুন কীভাবে কেউ জানেন।
অ্যালান ডাব্লু স্মিথ

@ ইয়ান - আমি এখানে আরও একটি উত্তর পোস্ট করেছি যা প্রথম, দ্বিতীয়, তৃতীয় প্রশ্নের উত্তর দেয়। তারিখের ফর্ম্যাটিং স্নিপেটগুলির রেফারেন্স সেটটিতে নির্দেশ করতে আমার উত্তরটি আপডেট করছি।
অ্যালান ডাব্লু স্মিথ

ব্যবহার করবেন না plus: '0'। ব্যবহার করুন: {{ page.date | date: "%-m-%d-%Y" }}। লক্ষ্য করুন মধ্যে হাইফেন %ও মি: %-m
এখনকার

4
@ দামিয়াননওক - পয়েন্টারটি ব্যবহারের জন্য ধন্যবাদ %-m। এটা অনেক পরিষ্কার। আমি এটি প্রতিফলিত করার জন্য উত্তর আপডেট করেছি এবং যত তাড়াতাড়ি সম্ভব আমার রেফারেন্স পোস্টটি আপডেট করব।
অ্যালান ডাব্লু স্মিথ

14

জেকিল তরলে ফিল্টার এক্সটেনশান যুক্ত করে। এখানে দেখুন । আপনি কেবল date_to_long_stringফিল্টার চালিয়ে আপনার পছন্দসই তারিখের বিন্যাসটি প্রদর্শন করতে পারেন ।

লিঙ্ক থেকে:


লং স্ট্রিংয়ের তারিখ

দীর্ঘ বিন্যাসে একটি তারিখ ফর্ম্যাট করুন যেমন "27 জানুয়ারী 2011"।

{{ site.time | date_to_long_string }} => 17 November 2008


4

জ্যাকিল ৩.৮ বাক্সের বাইরে সাধারণ তারিখগুলি সমর্থন করে। মাসের আউটপুট দিতে এইগুলির একটি ব্যবহার করুন।

{{ page.date | date_to_long_string: "ordinal", "US" }}আউটপুট হবে April 24th, 2018

{{ page.date | date_to_string: "ordinal", "US" }}আউটপুট হবে Apr 24th, 2018

{{ page.date | date_to_long_string: "ordinal" }}আউটপুট হবে 24th April 2018

{{ page.date | date_to_string: "ordinal" }}আউটপুট হবে 24th Apr 2018


3

'% বি' চেষ্টা করুন যার অর্থ "পুরো মাসের নাম (` `জানুয়ারী" ")"

স্ট্রাইফটাইমের জন্য ডকুমেন্টেশন অনুসন্ধান করুন, ফাংশন যা সাধারণত একটি তারিখকে স্ট্রিংয়ে রূপান্তর করার জন্য ব্যবহৃত হয়।


2

আপনি যদি কাস্টম সমাধান চান তবে আপনি যেমন চান তেমন একটি তারিখ বিন্যাস করতে জেকিল প্লাগইন লিখতে পারেন (উদাহরণটি ইতালীয় তারিখের জন্য):

module Jekyll
    module ItalianDates
        MONTHS = {"01" => "gennaio", "02" => "febbraio", "03" => "marzo",
                "04" => "aprile", "05" => "maggio", "06" => "giugno",
                "07" => "luglio", "08" => "agosto", "09" => "settembre",
                "10" => "ottobre", "11" => "novembre", "12" => "dicembre"}

        # http://man7.org/linux/man-pages/man3/strftime.3.html
        def italianDate(date)
            day = time(date).strftime("%e") # leading zero is replaced by a space
            month = time(date).strftime("%m")
            year = time(date).strftime("%Y")
            day+' '+MONTHS[month]+' '+year
        end

        def html5date(date)
            day = time(date).strftime("%d")
            month = time(date).strftime("%m")
            year = time(date).strftime("%Y")
            year+'-'+month+'-'+day
        end
    end
end

Liquid::Template.register_filter(Jekyll::ItalianDates)

এটি কেবল কোনও ফাইলে সংরক্ষণ করুন _plugins/italian_dates.rbএবং টেম্পলেটগুলিতে আপনার প্রয়োজন মতো এটি ব্যবহার করুন:

<time datetime="{{page.date | html5date}}">{{page.date | italianDate}}</time>

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