تصدير واستيراد الصور في ميدياويكي
سؤال
كيف يمكنني تصدير واستيراد الصور من وإلى ميدياويكي؟
المحلول
وليس هناك طريقة تلقائية لتصدير الصور مثل تصدير صفحات، لديك لتصحيح الضغط عليها، واختر "حفظ الصورة". للحصول على التاريخ من الصفحة صورة، استخدم الخاصة: الصفحة تصدير
لاستيراد الصور استخدام الخاصة: تحميل الصفحة في الويكي. إذا كان لديك الكثير منهم، يمكنك استخدام النصي استيراد الصور ملاحظة: لديك عموما أن يكون في المجموعة مدير نظام لتحميل الصور.
نصائح أخرى
الحلول الطرفية
يمكن لمسؤول MediaWiki، في محطة الخادم، تنفيذ ذلك مهام الصيانة باستخدام البرامج النصية للصيانة نطاق.تعمل إصدارات Mediawiki الجديدة على تشغيل جميع البرامج النصية القياسية في المهام الموضحة أدناه، ولكن الإصدارات القديمة تحتوي على بعض الأخطاء أو لا تحتوي على جميع البرامج النصية الحديثة:افحص ال رقم الإصدار بواسطة grep wgVersion includes/DefaultSettings.php
.
ملحوظة:جميع النصوص المذكورة (أدناه) لها أيضًا --help
الخيار، على سبيل المثال php maintenance/importImages.php --help
مجلد الصور الأصلي
يقوم المستخدمون بتحميل الملفات من خلال صفحة Special:Upload؛يمكن للمسؤولين تكوين أنواع الملفات المسموح بها من خلال القائمة البيضاء للملحقات.بمجرد تحميلها، يتم تخزين الملفات في مجلد على نظام الملفات، ويتم تخزين الصور المصغرة في دليل الإبهام المخصص.
ميدياويكي images
يمكن ضغط المجلد به zip -r ~/Mediafiles.zip images
الأمر، ولكن هذا الرمز البريدي ليس جيدًا جدًا:
هناك الكثير من الملفات الزائفة:"الملفات المحذوفة" و"الملفات القديمة" (وليست ملفات حاضِر) بأسماء الملفات مثل
20160627184943!MyFig.png
, والصور المصغرة مثلMyFig.png/120px-MyFig.jpg
.ل تبادل البيانات أو على المدى الطويل الحفاظ برضو فهو باطل...ال قبيح
images/?/??/*
تنسيق المجلد ليست مناسبة، كالعادة "جميع ملفات الصور في مجلد واحد فقط".
تصدير/استيراد الصور
"للتصدير والاستيراد" جميع الصور الحالية في مجلد واحد في محطة خادم MediaWiki، هناك إجراء واحد خطوة بخطوة.
الخطوة 1: إنشاء مقالب الصورة باستخدام dumpUploads (مع --local
أو --shared
الخيارات عند الحاجة إلى الحفظ)، مما يؤدي إلى إنشاء ملف رسالة قصيرة قائمة بجميع أسماء ملفات الصور المستخدمة.
mkdir /tmp/workingBackupMediaFiles
php maintenance/dumpUploads.php \
| sed 's~mwstore://local-backend/local-public~./images~' \
| xargs cp -t /tmp/workingBackupMediaFiles
zip -r ~/Mediafiles.zip /tmp/workingBackupMediaFiles
rm -r /tmp/workingBackupMediaFiles
ينتج عن الأمر ملف مضغوط قياسي لمجلد النسخ الاحتياطي للصورة، Mediafiles.zip
في الدليل الجذر للمستخدم الخاص بك (~/
).
ملحوظة:إذا لم تكن قلقًا بشأن هيكل المجلد القبيح, ، هناك طريقة أكثر مباشرة
php maintenance/dumpUploads.php \
| sed 's~mwstore://local-backend/local-public~./images~' \
| zip ~/Mediafiles.zip -@
وفقًا لإصدار Mediawiki --base=./
الخيار سوف يعمل بشكل جيد ويمكنك إزالة sed
أمر الأنبوب.
الخطوة 2: بحاجة الى نسخة احتياطية؟تركيب نسخة من الصور؟...تحتاج فقط Mediafiles.zip
, ، و ال تم تثبيت ميدياويكي, ، بدون محتويات...إذا كان موقع Wiki يحتوي على محتويات، فتحقق من المشاكل المتعلقة بتعارضات أسماء الملفات (!).هناك مشكلة أخرى وهي تكوين تنسيقات الملفات والأذونات، التي يجب أن تكون هي نفسها أو أوسع في Wiki الجديد، انظر دليل: تكوين تحميلات الملفات.
الخطوه 3: استعادة مقالب (إلى الويكي الجديدة)، مع أدوات الصيانة.لنفترض أنك استخدمت الخطوة 1 للتصدير والاحتفاظ في ملف مضغوط،
unzip ~/Mediafiles.zip -d /tmp/workingBackupMediaFiles
php maintenance/importImages.php /tmp/workingBackupMediaFiles
rm -r /tmp/workingBackupMediaFiles
php maintenance/update.php
php maintenance/rebuildall.php
هذا كل شيء.تحقق من التنقل في موقع Wiki الجديد الخاص بك خاص:ملفات جديدة.
التصدير أو الحفظ كاملاً
لتصدير "جميع الصور وجميع المقالات" من MediaWiki القديم الخاص بك، أو للحصول على نسخة احتياطية كاملة أو الحفاظ على المحتوى.أضف بعض الإجراءات في كل خطوة:
الخطوة 1: ...انظر أعلاه الخطوة 1...ولإنشاء مقالب محتوى النص من الويكي القديمة
php dumpBackup.php --full | gzip | ~/dumpContent.xml.gz
ملحوظة:بدلاً من --full
يمكنك استخدام ال --current
خيار.
الخطوة 2: ...انت تحتاج dumpContent.xml.zip
و Mediafiles.zip
...من الويكي القديمة.لنفترض أن كلا الملفين المضغوطين في ملف ~
مجلد.
الخطوه 3: يجري في ويكي الجديد الخاص بك
unzip ~/Mediafiles.zip -d /tmp/workingBackupMediaFiles
gunzip -c ~/dumpContent.xml.gz
| php maintenance/importDump.php --no-updates \
--image-base-path=/tmp/workingBackupMediaFiles
rm -r /tmp/workingBackupMediaFiles
php maintenance/update.php
php maintenance/rebuildall.php
هذا كل شيء.تحقق أيضا خاص:جميع الصفحات من الويكي الجديدة.
هناك عدد قليل من أدوات التحميل الجماعي المتاحة.
المشترك - www.djini.de/software/commonist/
كلاهما يعمل على سطح المكتب ويمكن تهيئتهما للتحميل إلى موقع الويكي المحلي الخاص بك (يتم تكوينهما لـ Wikipedia وWikimedia commons بشكل افتراضي).إذا كنت خائفًا من تحرير محتوى ملف .jar، أقترح عليك البدء باستخدام Commonplace.
يوجد امتداد آخر مفيد لـ Mediawiki نفسه.
تحميل متعدد - http://www.mediawiki.org/wiki/Extension:MultiUpload
يسمح لك هذا الامتداد بإسقاط الصور في مجلد وتحميلها كلها مرة واحدة.وهو يدعم التعليقات التوضيحية لكل ملف إذا لزم الأمر ويقوم بتنظيف المجلد بمجرد الانتهاء من ذلك.على الجانب السلبي، يتطلب الأمر فتح مجلد مشترك على جانب الخادم.
شائع - commons.wikimedia.org/wiki/Commons:Tools/Commonplace
كانت متاحة، لكنها كانت كذلك تم إهمالها اعتبارًا من يناير13, 2010.
- تصدير الكل:
يمكنك الحصول على جميع الصفحات وجميع الصور من موقع ويب MediaWiki باستخدام [API]، حتى لو لم تكن مالك الويب (بالطبع عندما لا يقوم المالك بتعطيل هذه الوظيفة):
الخطوة 1:باستخدام API للحصول على كل عنوان الصفحات و جميع الصور رابط.يمكنك كتابة بعض التعليمات البرمجية للقيام بذلك تلقائيًا.
الخطوة 2:بعد ذلك تستخدم [Special:Export] لتصدير جميع الصفحات التي تحمل العناوين التي حصلت عليها واستخدامها wget
للحصول على جميع الصور التي لديك روابط (مثل هذا wget -i img-list.txt
).
- استيراد الكل:
الخطوة 1:استيراد الصفحات باستخدام [Special:Import]
الخطوة 2:قم باستيراد الصور باستخدام [Manual:ImportImages.php].
وهذا الأمل يساعد قليلا: http://www.mediawiki.org/wiki /Manual:ImportImages.php