1970 से पहले पोस्ट की तारीख निर्धारित करें


10

मेरे पास एक कस्टम पोस्ट प्रकार है जिसे किताबें कहा जाता है। पुस्तकों के प्रकाशन की तारीख 1700 से 1900 के बीच है।

मैं इन तारीखों को पोस्ट डेट सेट करना चाहता हूं (इसलिए मैं वर्ष द्वारा हल किए गए परिणामों को क्वेरी कर सकता हूं) लेकिन मुझे लगता है कि 1970 के 1 से पहले की तारीख निर्धारित नहीं हो सकती है।

क्या किसी तरह ऐसा करना संभव है?


जहाँ तक मैं बता सकता हूँ कि पोस्ट की तारीख 1902 पर छाया हुआ है।
व्येक

मैंने इस पर एक नज़र डाली और post_dateडेटाबेस में सही तरीके से मेरे द्वारा आजमाई गई किसी भी तारीख को सेट किया। हालाँकि, post_date_gmt1 जनवरी, 1970 से दुनिया की शुरुआत के रूप में गलत तरीके से सेट किया गया है । तो उस क्षेत्र को कॉपी करने की कोशिश मत करो। जो करना है, उसे बताएं।
s_ha_dum

+1 अच्छा प्रश्न! 1970 की खोज में यहां और एसओ में दिलचस्प परिणाम हैं । प्लगइन बहुत अच्छी तरह से कोडित नहीं लगता है, लेकिन एक नज़र के लायक हो सकता है ...
ब्रासोफिलो

जवाबों:


10

post_dateकिसी भी चीज़ के लिए फ़ील्ड का उपयोग न करें जो इसके लिए नहीं बना है। इसके बजाय पोस्ट मेटा फ़ील्ड का उपयोग करें। करने के post_dateलिए बाध्य हैpost_date_gmt , आप अजीब साइड इफेक्ट मिलेगा यहां तक ​​कि आप उस में एक पहले की तारीख मिल सकती है।

इसलिए पोस्ट मेटा फ़ील्ड बनाएं और उन कर क्वेरी के अनुसार क्वेरी करें । डिफ़ॉल्ट फ़ील्ड पर ध्यान न दें।

अपनी टिप्पणी के जवाब में: एक वर्गीकरण का उपयोग न करें।

  1. टैक्सोनोमीज़ का निर्माण प्रति पोस्ट कई शब्दों की अनुमति देने के लिए किया जाता है ( यहाँ पोस्ट-फॉर्मेट को अनदेखा करें)। योजना आपके उपयोग के मामले से मेल नहीं खाती है।
  2. टैक्सोनॉमी प्रश्न महंगे हैं, वे तीन तालिकाओं के माध्यम से चलते हैं।
  3. कई असाइनमेंट जैसी दुर्घटनाओं को रोकने के लिए आपको डिफ़ॉल्ट इंटरफ़ेस बदलना होगा। संभव है, लेकिन बिल्कुल सरल नहीं और शायद आगे-संगत नहीं।

मैंने एक बार एक पुस्तक प्रबंधक प्लगइन भी शुरू किया, दुर्भाग्य से यह अभी भी एक मसौदा स्थिति में है ... लेकिन मेरे पास तारीखों के बारे में कुछ सिफारिशें हैं:

  1. दो पोस्ट प्रकारों का उपयोग करें: ओपस के लिए एक, वास्तविक संस्करणों के लिए एक ( opusप्रकार कई संस्करणों के लिए एक अभिभावक होगा)। इसलिए आप संस्करण में रचना दिनांक, प्रकाशन दिनांक (भाषा, संपादक, अनुवादक और इतने पर) संग्रह में संग्रहीत कर सकते हैं।

  2. इतिहासकारों के लिए सुरक्षित बनाना<time> पढ़ें । 1970 से पहले की तिथियां कठिन हैं।

  3. MySQL दिनांक और समय कार्य सभी मामलों को संभाल नहीं कर सकते हैं, तो आप छँटाई के लिए कुछ कस्टम दिनचर्या के साथ खत्म, (2.) के लिए अपने समाधान पर निर्भर करता है।


धन्यवाद! मेरे मुवक्किल ने मुझे पुस्तकों के साथ एक xml फ़ाइल भेजी और मैंने उसे वर्डप्रेस में आयात किया। मेरे पास केवल पुस्तकों के लिए वर्ष हैं इसलिए मैंने वर्षों के लिए एक कस्टम टैक्सोनॉमी बनाने का फैसला किया, लेकिन फिर मुझे पता चला कि मैं इसके आधार पर क्वेरी का आदेश नहीं दे सकता। लेकिन अगर मैं कस्टम फील्ड द्वारा ऑर्डर कर सकता हूं, तो मुझे इसका ठीक-ठीक अंदाजा है।
गुजरती है

मैं आपसे पूछता हूं कि आपको क्या लगता है, क्या यह वर्षों के लिए एक कस्टम टैक्सोनॉमी का उपयोग करने के लिए एक अच्छा पर्याप्त समाधान है? मुझे लगता है कि मैं पद नाम के आधार पर परिणामों को क्रमबद्ध करने के लिए एक कस्टम sql क्वेरी बना सकता हूं (क्योंकि db संरचना मूल रूप से पोस्ट मेटा समाधान के साथ भी समान है) और मुझे लगता है कि बैकेंड में वर्षों + पुस्तकों का प्रबंधन करना थोड़ा आसान है ।
गुजरती है

@passatgt मेरा अपडेट देखें लघु: नहीं, ऐसा मत करो। :)
FUXIA

समझ गया। हालांकि, यह उल्लेख करने के लिए कि मेरे पास 25.000 पुस्तकें हैं :)
passatgt

1

यह प्लगइन जॉन लिम ऑफ PHP एवरीवेयर द्वारा एडीओडीबी डेट लाइब्रेरी का उपयोग करता है , जो है - मैं बोली - "1970 से पहले की तारीखों को एक तारीख के साथ प्रारूपित करते हुए एक आकर्षण"।


वह प्लगइन अधिक होता है जो ओपी के लिए पूछ रहा है और यह स्पष्ट नहीं है कि क्या यह तारीख स्वरूपण प्लगइन द्वारा आंतरिक रूप से उपयोग किया जाता है या यदि यह वर्डप्रेस कोर फ़ंक्शन के लिए एक ही तिथि स्वरूपण को भी सक्षम करता है। क्या आप उनमें से किसी प्रश्न का उत्तर जानते हैं?
s_ha_dum

मैं सिर्फ लिम की लाइब्रेरी को हाइलाइट करना चाहता था, और यह WP प्लगइन में कैसे लागू किया जाता है। आपके दूसरे प्रश्न के अनुसार, कोर फ़ंक्शन में कोई बदलाव नहीं किया गया है, प्लगइन कस्टम डेटाबेस तालिका में तिथियों को संग्रहीत करता है।
दिग्गी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.