2015-05-21 5 views
6

मैं वर्तमान में एक भूत ब्लॉग पर काम कर रहा हूं (घोस्ट एक वर्डप्रेस "उत्तराधिकारी" है जो उस प्लेटफॉर्म पर नोड.जेएस और अन्य विभिन्न पैकेज/पुस्तकालयों पर आधारित है), लेकिन मुझे आश्चर्य है कि मैं कैसे सभी को पकड़ सकता हूं जिन पोस्ट्स में Ghost/Handlebars.js में एक निश्चित टैग है।भूत में एक विशिष्ट टैग के साथ सभी पोस्ट कैसे खोजें और उन पर पुनरावृत्त करें?

समस्या यह है कि भूत के संदर्भ आमतौर पर इस बिंदु पर encapsulated हैं कि मैं एपीआई से एक निश्चित टैग वाले सभी पदों की एक सूची निकालने नहीं कर सकता; यह स्पष्ट रूप से केवल index.hbs से पोस्ट के माध्यम से पुन: प्रयास करना संभव है, और अन्य समाधान थोड़ा हैकर-वाई हैं या jQuery का अधिक उपयोग शामिल हैं।

मैं भूत में सभी पदों की सूची या सरणी कैसे प्राप्त कर सकता हूं ताकि मैं उन्हें टैग द्वारा फ़िल्टर कर सकूं और फिर उन पर फिर से भर सकूं? मैंने {{#foreach posts}} और {{#has tag='WHATEVER'}} भी कोशिश की है लेकिन यह विधि बॉक्स से बाहर काम नहीं कर रही है। भूत और हैंडलबार के लिए एक नौसिखिया के रूप में, मुझे यकीन है कि क्या करना है।

उत्तर

10

यदि कोई भी इस पर आता है, तो यह अब संभव है।

{{#get "posts" filter="tags:tagname"}} 
    {{#foreach posts}} 
     <p>{{title}}</p> 
    {{/foreach}} 
{{/get}} 

{{#get "posts" filter="tags:[tag1, tag2]"}} 
    {{#foreach posts}} 
     <p>{{title}}</p> 
    {{/foreach}} 
{{/get}} 
+1

टैग: यहाँ आप इसे कैसे प्राप्त सहायक के माध्यम से कर सकते हैं [tag1, tag2] tag1 और/या tag2 साथ पदों अर्थ ... कैसे विकल्प के साथ यह करने के लिए पदों होना आवश्यक है उस पर फिल्टर करने के लिए दोनों? – dimitrieh

6

नोट: यह उत्तर लेखन के समय सही था। {{#get}} सहायक नवंबर 2015 में जोड़ा गया था, और घोस्ट 1.0 (अगस्त 2017) के बाद डिफ़ॉल्ट रूप से उपलब्ध है। इसे यहां दस्तावेज किया गया है: https://themes.ghost.org/docs/get

डेविड का उत्तर अब स्वीकार्य उत्तर होना चाहिए।


theme documentation FAQ में समझाया गया है कि सभी टैग सूचीबद्ध करना संभव नहीं है। यह रोडमैप पर get helper सुविधा का भी संदर्भ देता है जो भविष्य में इसे संभव बना देगा।

भूत के वर्तमान संस्करण के साथ कुछ हद तक हैकी संभावना आरएसएस फ़ीड और लूप के पृष्ठों को प्रत्येक पृष्ठ से टैग को पकड़ने के लिए जावास्क्रिप्ट का उपयोग करना है। यह काम करेगा लेकिन यह ध्यान में रखना उचित है कि आरएसएस फ़ीड का अंकन भविष्य के संस्करण में गायब हो जाएगा (एपीआई पूरी तरह से उपलब्ध होने के बाद, इसलिए माइग्रेशन पथ होगा)।

एक बार हेल्पर रिलीज़ होने के बाद यह एक सीधा सहायक बन जाएगा: {{#get 'tags'}}...do things with tags here...{{/get}}। यह सुविधा सक्रिय विकास के तहत है।

संबंधित मुद्दे