2012-03-29 14 views
5

लोगों से कॉपी-पेस्ट,TinyMCE: गूगल डॉक्स

मेरी कंपनी निम्नलिखित वर्कफ़्लो का समर्थन करने की जरूरत है: - समृद्ध सामग्री Google डॉक्स में बनाए हो रही है (सरल स्वरूपण के साथ - बोल्ड/इटैलिक हाइपरलिंक के रूप में, साथ ही साथ) - उस सामग्री को तब एक आंतरिक सीएमएस में चिपकाया जाता है जो TinyMCE का उपयोग करता है।

समस्या: सभी स्वरूपण जब में सामान चिपकाने खो जाए

पहले से ही "पेस्ट वर्ड से" प्लगइन की कोशिश की - यह काम नहीं करता।।

कृपया सलाह दें। धन्यवाद!

अद्यतन: मैंने समस्या को Google क्रोम तक सीमित कर दिया। फ़ायरफ़ॉक्स बस ठीक काम करता है। मैंने paste_pre_processing() कॉलबैक का भी उपयोग किया - वहां पहुंचने से पहले डेटा दूषित हो जाता है।

+0

+1 अच्छा प्रश्न है, लेकिन आसान नहीं है। क्या आप हमें दिखा सकते हैं कि संपादक में क्या चिपकाया जाता है, आपने टिनिमस को कैसे कॉन्फ़िगर किया? – Thariama

+0

Google डॉक्स से पेस्ट करते समय मुझे भी समस्याएं हैं I कभी-कभी डीबी को पेस्ट या सबमिट करते समय सामग्री को "हटाया" जाएगा। मैंने अभी कुछ परीक्षण किया और ऐसा लगता है कि यह ठीक काम कर रहा है, लेकिन यह अविश्वसनीय लगता है, जो एक समस्या है। अब तक कोई भाग्य? – Sam

उत्तर

3

मैंने टिनीएमसीई में पेस्ट प्लगइन को छोड़ दिया। इसके बजाय, मैंने TinyMCE की अनियंत्रित valid_styles प्रॉपर्टी का उपयोग किया। इसने मेरे परिदृश्य के लिए समस्या ठीक हल की। यहां कॉन्फ़िगर स्निपेट है जिसका उपयोग हम समाप्त कर चुके हैं:

valid_elements: "a[href|title|target],del,b,strong,del,i,blockquote,p,br,em,ul,li,ol,span[style]", 
valid_styles : { '*' : 'font-weight,font-style,text-decoration' }, 
1

आपकी समस्या कुछ जटिल समस्या है।

सबसे पहले आप यह सुनिश्चित करें कि TinyMCE टैग को दूर नहीं करता बनाने के लिए और टैग-जिम्मेदार बताते हैं कि यह अमान्य के रूप में पहचानता है की जरूरत है (TinyMCE विन्यास विकल्प valid_elements और valid_children को करीब से देख नहीं है)।

दूसरा आपको पेस्ट प्रक्रिया का अपना प्रबंधन लागू करना होगा। ऐसा करने के तीन तरीके हैं। सबसे अधिक समय लेने वाला विकल्प एक कस्टम कस्टम पेस्ट प्लगइन लिखना और दिए गए एक को प्रतिस्थापित करना है। अन्य विकल्प पेस्ट प्लगइन्स को कॉन्फ़िगर करने और पेस्ट की गई सामग्री को बदलने और बदलने के लिए अपने कार्यों को परिभाषित करने के तरीके हैं। सीटिंग paste_pre_processing और paste_post_processing यहां जाने का तरीका हैं।