मीडिया आयात करने में विफल


14

जब मैं [टूल> एक्सपोर्ट] के साथ एक्सएमएल फाइल जेनरेट करता हूं और एक अन्य वर्डप्रेस वेबसाइट पर [टूल्स> इम्पोर्ट] का उपयोग करता हूं तो मुझे प्रत्येक अटैचमेंट पोस्ट प्रकार के लिए "मीडिया आयात करने में विफल" हो जाता है। और जो चित्र लोड करने में विफल रहे, उन्हें पिछले सर्वर से हॉटलिंक किया गया है, जो उस पिछले सर्वर के हस्तांतरण का उपभोग करता है ...

लेकिन जब मैं http://codex.wordpress.org/Theme_Unit_Test से "यूनिट टेस्ट" डाउनलोड करता हूं तो यह समस्या मौजूद नहीं होती है। कुछ छवियों में अभी भी "मीडिया आयात करने में विफल" है, लेकिन यह केवल 30 छवियों में से 5 की तरह है। उनके पास अपने एक्सएमएल में अपने स्वयं के सर्वर के URL हैं लेकिन किसी तरह [टूल्स> आयात] अपने मीडिया को डाउनलोड करने और इन URL को नए स्थानों से बदलने का प्रबंधन करता है (यह अब हॉटलिंक नहीं है)।

"मीडिया आयात करने में विफल" के बिना इसे ठीक से काम करने के लिए क्या चाल है? क्यों "यूनिट टेस्ट" में कुछ "मीडिया आयात करने में विफल" संदेश भी हैं?


सर्वर के रूप में जहां आप आयात करते हैं उन्हें पुराने स्थान से प्राप्त करने की आवश्यकता होती है, आपको न केवल यह जांचना चाहिए कि क्या फाइलें पुराने सर्वर पर हैं, बल्कि यह भी कि नया सर्वर उन्हें ला सकता है या नहीं। शायद कुछ आउटबाउंड अनुरोधों को सीमित करता है। क्या आपने इसे किसी अन्य सर्वर या लोकलहोस्ट पर आयात करने की कोशिश की है? मुझे डर है कि यह एक बहुत ही स्थानीय मुद्दा हो सकता है।
क्राफ्टर

1
वर्डप्रेस 4.3.1 (संभवतः पहले) के रूप में आप इसे परिभाषित कर सकते हैं IMPORT_DEBUGऔर इसे true"मीडिया आयात करने में विफल" के बजाय सार्थक प्रतिक्रिया प्राप्त करने के लिए सेट कर सकते हैं । मैं कल्पना नहीं कर सकता कि यह डिफ़ॉल्ट व्यवहार क्यों नहीं है। अगर मौसम सही है तो आपकी समस्या को कम करने में मदद मिल सकती है।
मार्क

@ मैं किस फ़ाइल में IMPORT_DEBUGविकल्प सेट कर सकता हूं
किमलाइव

2
@kimliv: आप स्थापित अपने WordPress की जड़ में WP-config.php में इस रहना चाहता हूँ: define ( 'IMPORT_DEBUG', true );
मार्क

बम्पिंग के लिए खेद है, एक ही मुद्दा था और जिस मूल साइट से मैंने आयात किया था उसमें एसएसएल काम नहीं कर रहा था और xmlयूआरएल चालू थे https, xmlफाइलों को संपादित httpsकरने में httpमदद करने के लिए ।
शमूएल एलह

जवाबों:


12

जब मैं एक वर्डप्रेस ब्लॉग को एक सिंगल वर्डप्रेस इंस्टॉलेशन से एक मल्टीसाइट इंस्टॉलेशन के लिए अलग-अलग डोमेन नामों के साथ एक ही आईपी पर ले गया, तो मुझे एक समान समस्या थी।
मुझे पता चला कि समस्या वह wp_http_validate_urlफ़ंक्शन है जो URL को ड्रॉप करता है यदि स्रोत आईपी गंतव्य आईपी के समान है।
आप इसे wp_http_validate_urlरोकने के लिए एक फ़िल्टर जोड़ सकते हैं और मेल खाते स्रोत और गंतव्य IP की अनुमति दे सकते हैं:

add_filter( 'http_request_host_is_external', '__return_true' );

कृपया इस उत्तर को फ़िल्टर हुक के विस्तृत विवरण के लिए देखें और आयात के बाद आपको इसे क्यों हटाया जाए: /wordpress//a/123313/75573


मैंने अपने चित्रों के साथ अपनी पोस्ट को आयात करने की कोशिश में 5 घंटे के करीब बिताया और इसने इसे हल किया।
जॉनी

मुझे यकीन नहीं है कि मैं समझता हूँ कि इस संपादन को कहाँ जाना है। क्या कोई और समझा सकता है?
क्लेयरलीक्लेयर .msft

आप इसे function.php में छोड़ सकते हैं या इसे Plugin में डाल सकते हैं। बाद में इसे आवश्यकतानुसार चालू और बंद करना आसान बनाता है।
मेरल

1

जब आपने अपनी निर्यात फ़ाइल बनाई, तो क्या यह एक लाइव सर्वर या लोकलहोस्ट पर थी? क्या वह वेब पेज अभी भी एक्सेस करने योग्य है? यदि मीडिया आयात विफल हो जाता है, तो इसका मतलब है कि छवियां, जैसा कि एक्सएमएल से जुड़ा हुआ है, 404 आ रही हैं।

XML फ़ाइल खोलें और देखें कि चित्र कहाँ इंगित कर रहे हैं। यदि हम थीम यूनिट XML फ़ाइल खोलते हैं, तो हम इस तरह की लाइनें देखेंगे:

<wp:attachment_url>http://wpthemetestdata.files.wordpress.com/2008/06/canola2.jpg</wp:attachment_url>

वह फ़ाइल आयात के लिए बहुत स्पष्ट रूप से उपलब्ध है। आपकी अनुलग्नक_लल फ़ाइलें क्या कहती हैं?


1
मैंने उल्लेख किया "और जो चित्र लोड करने में विफल रहे, उन्हें पिछले सर्वर से हॉटलिंक किया गया है जो उस पिछले सर्वर के हस्तांतरण का उपभोग करता है ..." जो इंगित करता है कि छवियां 404 नहीं लौटती हैं, वे स्थानीयहोस्ट पर नहीं हैं लेकिन फिर भी वे उत्पन्न होते हैं "मीडिया आयात करने में विफल "। मेरा <wp:attachment_url>कहना है example.com/2008/06/image.jpg भी जहाँ example.com हमेशा सुलभ डोमेन है। इसलिए मैं यह सवाल पूछ रहा हूं :) यह स्पष्ट रूप से काम नहीं करता है भले ही छवियां 404 उत्पन्न न करें। यह कभी-कभी wpthemetestdata.files.wordpress.com के साथ भी काम नहीं करता है (30 विफलताओं में से 5 यादृच्छिक चित्र)।
पॉल

सही है, क्षमा करें, मेरा दिमाग रात में इस बिंदु पर थोड़ा जला हुआ है। क्या आपके पास सर्वर पर किसी प्रकार का हॉटलिंक सुरक्षा है?
शाही विचार

1
नहीं, यह सार्वजनिक रूप से सुलभ छवियों के साथ सार्वजनिक रूप से सुलभ सर्वर है, जो भी कोई सुरक्षा नहीं है। लेकिन अगर कुछ सुरक्षा थी, तो भी वर्डप्रेस का सर्वर कभी-कभार यही काम करता है। क्या इसका मतलब यह है कि यह आयातक सिर्फ छोटी गाड़ी है?
पॉल

कि सर्वर में से एक या एक अप्रिय कम समय मान है। मैं तुम्हारे लिए विचारों से बाहर ताजा हूँ। क्या XML लोकलहोस्ट के लिए ठीक से आयात करता है? यदि ऐसा है, तो आप धोखा दे सकते हैं ... स्थानीय स्तर पर आयात करें और फिर WP माइग्रेट DB का उपयोग करें और परिणाम को लाइव करने के लिए क्लोन करें।
शाही विचार

1

मैं wordpress.org से मीडिया आयात करने के साथ-साथ wordpress.com से भी जूझ रहा हूँ। मैं सभी पोस्टों को आयात करने में कामयाब रहा, हालांकि चित्र अभी भी पुरानी साइट से जुड़े थे। मैं लगभग रो रहा था क्योंकि मुझे एहसास हुआ कि एकमात्र समाधान पोस्ट द्वारा 200 से अधिक बड़ी छवियों को मैन्युअल रूप से डाउनलोड और अपलोड करना था (पोस्ट के छोटे भागों का निर्यात / आयात करना या तो काम नहीं करता था)।

कुछ प्लगइन्स का परीक्षण करने के बाद मैंने पाया कि वास्तव में आपके वर्डप्रेस मीडिया को स्वचालित रूप से आयात करता है। मुझे विश्वास नहीं हो रहा था लेकिन यह वास्तव में काम करता है। आपको डाक से जाना होगा लेकिन फिर भी यह मैनुअल डाउनलोड और अपलोड से बेहतर है। यहाँ लिंक है अगर किसी को दिलचस्पी है


1

सुनिश्चित करें कि आपकी साइट "निजी" पर सेट नहीं है।

जब आप अपने Wordpress ब्लॉग को निर्यात करते हैं, तो परिणामी XML फ़ाइल में सभी पाठ्य सामग्री सन्निहित होती है। सभी बाइनरी सामग्री (चित्र, फ़ाइल संलग्नक आदि) को मौजूदा ब्लॉग पर उनके स्थान की ओर इशारा करते हुए URL के रूप में निर्यात किया जाता है। यही कारण है कि जब आप एक निजी वर्डप्रेस ब्लॉग से आयात करते हैं तब भी आप सभी पोस्ट / आदि आयात कर पाएंगे लेकिन सभी चित्र / आदि विफल हो जाएंगे।

यहां आपको वह सेटिंग बदलने की आवश्यकता है जहां क्यूरेंट (2017-06-19) संस्करण है:

यहाँ छवि विवरण दर्ज करें

प्रासंगिक वर्डप्रेस प्रलेखन:

https://en.support.wordpress.com/settings/privacy-settings/

ध्यान दें कि यह आपके Wordpress.com खाते की सेटिंग्स से किया जाना चाहिए, न कि स्वयं ब्लॉग की सेटिंग्स से, जो भ्रम (और हताशा) का एक और संभावित बिंदु है।


1

यह समस्या दूरस्थ / स्थानीय साइट पर कुछ प्लगइन्स का उपयोग करते समय हो सकती है।

आदर्श रूप से, निर्यात या आयात करने से पहले दोनों साइटों पर सभी प्लग इन को अक्षम करें, फिर प्रक्रिया पूरी होने के बाद उन्हें फिर से सक्रिय करें।

यदि आप सभी प्लगइन्स को अक्षम करने से बचने की कोशिश कर रहे हैं, तो कम से कम किसी भी प्लगइन्स को निष्क्रिय करें जो छवियों या छवि हैंडलिंग को प्रभावित करते हैं ... सबसे आम प्रकार संभवतः वे होंगे जो छवि अनुकूलन करते हैं।

मेरे मामले में, मेरे पास EWWW इमेज ऑप्टिमाइज़र (जो मैं अत्यधिक सलाह देता हूं) स्थानीय साइट पर सक्रिय है, और इसने इस त्रुटि का कारण बना। मैंने इसे अक्षम कर दिया, आयात को सफलतापूर्वक चलाया, और इसे पुनः सक्रिय किया।


0

मुझे भी यही समस्या थी और खोज और परीक्षण के घंटों के बाद समस्या यह थी कि "हॉटलिंक प्रोटेक्शन" cPanel में सक्रिय होने के कारण स्रोत सर्वर छवि डाउनलोड को रोक रहा था।


आप सही हे। मेरे मामले में मुझे एहसास हुआ कि मैंने अपने .htaccess में एक हॉटलिंक सुरक्षा लागू की है। अन्य मामले cPanel या Cloudflare हैं।
जॉन डो

0

उन लोगों के लिए जो add_filterएक अलग मॉड्यूल बनाए बिना इसे कैसे एकीकृत करना चाहते हैं या इसका उपयोग नहीं करना चाहते हैं । यहाँ यह करने के लिए एक त्वरित आसान चाल है।

इस फ़ाइल को खोलें

vim ./wp-includes/http.php

लाइन पर जाएं 566और निम्नलिखित कोड ब्लॉक पर टिप्पणी करें।

if ( ! apply_filters( 'http_request_host_is_external', false, $host, $url ) )
  return false;

एक बार जब आप उन दो पंक्तियों को टिप्पणी करते हैं, तो निम्नलिखित पंक्ति में जाएं और जोड़ दें।

return true;

आगे बढ़ो और फ़ाइल को सहेजें और फिर से कोशिश करने के लिए XML फ़ाइल अपलोड करें। अब आप सभी संबंधित सामग्री को डाउनलोड करेंगे। टिप्पणी ब्लॉक और रिटर्न स्टेटमेंट को हटा दें और आप जाने के लिए अच्छे हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.