2012-12-10 19 views
5

के चयन पर पेज मेटाडेटा स्कीमा को ट्रिडियन 2011 में - नीचे प्राप्त करने का सबसे अच्छा तरीका क्या है: मौजूदा पृष्ठ को संपादित करने के नए पृष्ठ के निर्माण पर, जब संपादक पृष्ठ टेम्पलेट का चयन करता है, तो क्या हम स्वचालित रूप से संबंधित पेज मेटाडाटा स्कीमा को सेट करें। तो मूल रूप से एक पीटी और मेटाडाटा स्कीमा के एक एसोसिएशन को इसका उपयोग करने के रूप में परिभाषित करें।पृष्ठ टेम्पलेट

+0

अच्छा सवाल है, हम करने के लिए [51 क्षेत्र Tridion करने में आपकी रुचि हो सकता है विशिष्ट प्रस्ताव] (http://area51.stackexchange.com/proposals/38335/tridion?referrer=gPujQMxthNCNn9xqeeO2NA2)। यदि आपके पास एक पल है तो उसी SO खाते से साइन अप करें। –

+0

हो गया है कि पहले से ही बार्ट :) मैं पूरी तरह से समर्थन –

उत्तर

7

मैं इन विकल्पों में देख सकते हैं:

  1. एक ईवेंट हैंडलर, डॉक्स here (आवश्यक में लॉग इन करें)
  2. एक डेटा एक्सटेंडर देखते हैं, डॉक्स here (अपेक्षित में लॉग इन करें)
  3. एक ग्राहक को देखने के -साइड जीयूआई एक्सटेंशन

इनमें से प्रत्येक एक्सटेंशन बिंदु पिछले स्टैक ओवरव्लो और बाहरी ब्लॉग पोस्ट में पिछले प्रश्नों में भी शामिल किया गया है। जो उनमें से प्रत्येक के साथ संभव/व्यवहार्य है, उस पर अतिरिक्त अतिरिक्त "दस्तावेज़ीकरण" के रूप में कार्य कर सकते हैं।

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

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

अद्यतन जीयूआई में पृष्ठ टेम्पलेट की बदलती का जवाब करने के लिए, आप कुछ इस तरह का उपयोग कर सकते हैं:

var c = $display.getView().properties.controls; 
$evt.addEventHandler(c.PageTemplate, 'change', function() { 
    console.log(c.PageTemplate.getValue()); // the newly selected Page Template 
    c.MetaSchemaDropdown.setValue('tcm:10-2103-8'); // the corresponding Metadata Schema 
}); 
+0

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

+1

आप शायद एंगुइला इवेंट हैंडलर बना सकते हैं जो पेज टेम्पलेट ड्रॉपडाउन ("चेंज" इवेंट) में बदलावों को सुनता है, फिर इस पर आधारित निष्पादित करता है। संपादक द्वारा पहले से ही टेम्पलेट का चयन करने के बाद सावधानी बरतें, कुछ मेटाडेटा में भरे हुए, फिर एक अलग टेम्पलेट का चयन करें (आप शायद पिछले डेटा को ओवरराइट करेंगे) –

+0

इवेंट सिस्टम के बारे में: जिस घटना को मैं चेक आउट करता हूं वह है LoadEventArg। – Quirijn

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