मैंने अभी एक प्लगइन बनाया है जो ऐसा करता है। यह सही नहीं है लेकिन यह अपना काम करता है।
आप इसे मेरे गितुब में पा सकते हैं: https://github.com/pontusab/wp-ftp-media-library
तो आपको पंक्ति 28 पर फ़ाइल के भीतर कुछ चीजों को बदलने की जरूरत है:
/**
* Change this to match your server
* You only need to change the those with (*)
* If marked with (-) its optional
*/
$settings = array(
'host' => 'ip or hostname', // * the ftp-server hostname
'user' => 'username', // * ftp-user
'pass' => 'password', // * ftp-password
'cdn' => 'cdn.example.com', // * This have to be a pointed domain or subdomain to the root of the uploads
'path' => '/', // - ftp-path, default is root (/). Change here and add the dir on the ftp-server,
'base' => $upload_dir['basedir'] // Basedir on local
);
यह प्लगइन क्या है, यह हमारे मामले सर्वर ए में केवल स्थानीय मशीन पर अपलोड करने के लिए / वर्ष / माह से अपलोड संरचना को बदलता है । फिर यह ftp से कनेक्ट करने के लिए php का उपयोग करता है: ftp_connect । जब wp_generate_attachment_metadata चलता है तो फ़ंक्शन फ़ायर हो जाता है। इसके बाद चला लिए कि क्या कोई छवियों Areu देखने के लिए अपलोड फ़ोल्डर में जांच , यदि ऐसा है तो यह के माध्यम से एफ़टीपी सर्वर करने के लिए उन सब को अपलोड करेंगे ftp_put । जब अपलोड पूरा हो जाता है, तो फंक्शन को अनलिंक करने के लिए लोकल मशीन से फाइलें हटा दी जाएंगी ।
फिर प्लगइन छवियों के url को "पब्लिक" आईपी या होस्टनाम में बदल देता है, जिसे FTP-सर्वर को इंगित किया गया है। मैं static.mydomain.com या cdn.mydomai.com जैसी किसी चीज़ का उपयोग करने का सुझाव देता हूं। उन्हें ftp-server (Server B) को इंगित करने की आवश्यकता है यह आपको FTP-सर्वर से छवियों को लोड करने में सक्षम बनाता है।
जैसा कि अन्य सदस्यों का कहना है कि आपको इसके लिए एक ftp- सर्वर का उपयोग करना चाहिए, यह एक असली सीडीएन के साथ बेहतर है, फ्यूज द्वारा माउंट किया गया है या अमेज़ॅन एस 3 जैसा कुछ है।