مرحباً،
مشروعي هو بناء مجتمع يركز على ثقافة تاو تي تشينغ. لدي أكثر من 5000 كتاب قديم أحتاج إلى عرضها، وقد قمت بضغطها جميعًا بتنسيق صور AVIF. تحتوي بعض هذه الكتب على ما يصل إلى 2500 صورة AVIF.
سؤالي هو: كيف يمكنني إدراج هذه الصور في منشور واحد على Discourse لتمكين المستخدمين من قراءتها عبر الإنترنت؟
أبحث عن حل، ربما إضافة (plugin)، يمكن أن يوفر الميزات التالية للمستخدمين داخل المنشور:
التقليب بسهولة ذهابًا وإيابًا بين الصور (مثل تقليب الصفحات).
القدرة على الانتقال مباشرة إلى رقم صورة معين.
والأهم من ذلك، يجب تحميل الصور بـ “التحميل الكسول” (lazy-loaded)؛ يجب تحميلها فقط عندما ينتقل المستخدم إليها، وليس دفعة واحدة عند فتح المنشور.
ملفاتي منظمة بترتيب رقمي وهي بتنسيق AVIF. كل كتاب موجود داخل مجلده الخاص. متوسط حجم الصورة هو 150 كيلوبايت، وتتراوح الكتب عادةً بين 300 إلى 1000 صفحة، مع بعض الاستثناءات التي تصل إلى 2500 صفحة.
لماذا لدي هذا المتطلب؟
مجموعتي من الكتب واسعة، وتتجاوز حاليًا 350 جيجابايت. كان ضغطها إلى AVIF ضروريًا لإدارة التخزين.
تنسيقات مثل AVIF و WebP لا يمكن حزمها بسهولة في ملف PDF واحد.
تعبئة الكتب كأرشيفات ZIP أو RAR تمنع القراءة عبر الإنترنت. استخدام تنسيقات الكتب الإلكترونية مثل CBZ سيؤدي إلى حمل زائد على الخادم.
شكراً جزيلاً لمساعدتك!
نادراً ما أقول هذا، لكنني لست متأكدًا من أن Discourse أداة جيدة لمشكلتك.
إذا كنت لا تزال ترغب في ذلك، فربما أقوم بإنشاء موضوع لكل كتاب وربما مشاركة لكل فصل، إذا كان ذلك منطقيًا (ربما لا توجد فصول؟).
بعد ذلك، يمكنك استخدام نص برمجي للاستيراد يقرأ اسم الدليل وينشئ موضوعًا ثم يفعل شيئًا مثل
files.each do |f|
u=uploader.create_upload(1, f.path, f.filename)
raw += uploader.html_for_upload(u, f.filename)
end
ثم ستستخدم هذا النص الخام لإنشاء موضوع.
ستحتاج إلى البحث في دليل نصوص الاستيراد للعثور على بعض الأمثلة لإنشاء مواضيع، ولكن هذه فكرة تقريبية.
وسيؤدي ذلك بعد ذلك إلى وضع جميع الصور في موضوع/مشاركة واحدة. ثم هناك بعض الأدوات التي تتيح لك التمرير عبر مجموعة من الصور، على ما أعتقد. ربما انتبه إليها شخص آخر أكثر مني.
كما ذكرنا، من المحتمل ألا يكون Discourse مفيدًا، على الأقل فيما يتعلق باستضافة مكتبتك. بدلاً من ذلك، قد ترغب في التفكير في استخدام خدمة استضافة صور منفصلة جنبًا إلى جنب مع مثيل Discourse الخاص بك.
فيما يلي قائمة بخدمات معارض الصور المستضافة ذاتيًا والتي قد تأتي مع العديد من الميزات التي قد ترغب فيها: تطبيق ويب جاهز، واجهة سهلة الاستخدام ومتوافقة مع الجوال، ألبومات قائمة على الدلائل، إمكانيات البحث، إلخ.
يمكنك تشغيل خدمة استضافة الصور بشكل منفصل واستخدام عناوين URL منها كإطارات مضمنة (iframes) على Discourse. سيؤدي هذا إلى منع قاعدة بيانات Discourse الخاصة بك من الاضطرار إلى تنزيل جميع الصور، والسماح لخدمة استضافة الصور بالتعامل مع التحميل الكسول. من هناك، يمكنك البدء في التفكير في استخدام مكونات السمات أو الإضافات لصفحات مستقلة للمكتبة، وربط المراجع تلقائيًا من منشورات المستخدم، وما إلى ذلك.
أنا لا أعتقد أن هذه مسألة استضافة، بل مسألة قابلية استخدام عند القراءة. بالنسبة للأشخاص الأكثر أناقة غربية، هذا سؤال مشابه جدًا لعرض القصص المصورة. ولهذا قد تجد منصات مناسبة، لكنني متأكد تمامًا من أن ووردبريس يمكن أن يقدم حلاً.
ثم إن ربط المحتوى والمجتمع/المناقشة بواسطة Discourse أمر تافه تمامًا.
ولكن في نظام Discourse البيئي، يمكن أن يكون شيء مثل ما قدمه Discpage حلاً آخر. ولكنه معطل.
توجد قارئات ملفات قصص مصورة عبر الإنترنت، والتي تقوم بتحميل الملفات عند الطلب:
GitHub - codedread/kthoom: Comic Book Reader in the Browser على سبيل المثال يدعم alwaysOptimizedForStreaming=true والذي يخبر kthoom بعرض الصفحات فور فك ضغطها ويمكن التحميل من عناوين URL مع طلبات النطاق.
هل سينجح ذلك أيضًا إذا أراد المرء تقييد الوصول إلى الكتب حسب مجموعات المستخدمين أو للمستخدمين المسجلين فقط؟
شكراً جزيلاً لكم جميعاً على مساعدتكم!
لقد وجدت حلاً: قمت بنشر خدمة Zfile على خادمي، والتي تعمل كمحرك سحابي خاص، وقمت بتكوينها للسماح بالوصول للمستخدمين المجهولين.
يمكنني التحكم في عدد الملفات المعروضة في كل صفحة وتخصيص عدد الملفات التي يتم تحميلها يدوياً في كل مرة. تم تعيين الأذونات للزوار المجهولين على “معاينة فقط”.
هذا حل العديد من التحديات الرئيسية بالنسبة لي:
إدارة الملفات المعقدة: أصبح من الأسهل بكثير إدارة مئات الآلاف من الصور من خلال واجهة محرك سحابي.
معاينات عند الطلب: افتراضياً، يسرد المحرك الملفات فقط، ويتم إنشاء معاينة فقط عند النقر على ملف. هذا يعمل بشكل مشابه لـ PhotoSwipe. (على الرغم من أن Zfile لديه وضع لمعاينة جميع الصور دفعة واحدة، أعتقد أنه يمكنني تعطيله لاحقاً.)
التكامل مع Discourse: يمكنني الآن إضافة رابط “قراءة عبر الإنترنت” في منشوراتي على Discourse، والذي يفتح واجهة المحرك السحابي عند النقر عليه. يبدو الأمر كالتالي: https://openttc.com/t/topic/8
كفاءة الموارد: يتجنب هذا النهج الاستهلاك غير الضروري للموارد الشائع في المعارض التقليدية أو تطبيقات استضافة الصور. أفضل طريقة لقراءة كتاب هي تحميل صفحة واحدة في كل مرة، على عكس ألبوم الصور حيث تتوقع عدة صور في وقت واحد. تحميل صفحات كتب متعددة في وقت واحد سيكون مربكاً بصرياً أيضاً، حيث تبدو كل صفحة متشابهة جداً.
أستخدم Discourse كصفحة رئيسية لموقعي، وأدير حوالي 5000 كتاب عبر 31 فئة. يمثل كل منشور كتاباً واحداً، ويدير محرك Zfile صفحات المحتوى الفردية لكل كتاب. هذه هي أفضل تجربة مستخدم وجدتها حتى الآن، وهي مريحة نسبياً على أجهزة الكمبيوتر المكتبية والهواتف المحمولة والأجهزة اللوحية. آمل أن يساعد هذا الآخرين الذين قد تكون لديهم احتياجات مماثلة.
ملاحظتان:
Zfile ليس الخيار الوحيد. يبدو أن واجهته تدعم اللغة الصينية بشكل أساسي، وهو أمر مفيد بالنسبة لي. إذا كانت لديكم أي توصيات أفضل، فيرجى إخباري.
إذا أصبح هناك مكون إضافي لتقليب الصفحات ثلاثي الأبعاد (يحاكي تجربة تقليب صفحات الكتاب الحقيقية، مثل تلك المتاحة لـ WordPress) متاحاً لـ Discourse في المستقبل، فيرجى إخباري بذلك أيضاً.
شكراً مرة أخرى!
مشروعك يبدو مثيراً للاهتمام حقاً!
هل جربت تغليف صورك في تنسيق [grid]؟ سيكون موضوع مثل 关于“魏伯陽 周易參同契 Cantong qi. Token for the Agreement...”类别 - 魏伯陽 周易參同契 Cantong qi. Token for the Agreement... - OpenTTC أسهل بكثير في الإدارة.
شخصياً، قمت برقمنة ألبومات الصور وحفظتها في ملفات PDF ورفعتها إلى مواضيع في Discourse. ثم يتيح مكون سمة معاينة PDF المضمنة لأعضائي التمرير خلالها مباشرة في Discourse. الميزة في هذا هي أن الكتب تبقى سليمة.
شكراً جزيلاً لك! سيدي
مؤخرًا، كنت أعمل على التطوير، وأتنقل بين خوادم متعددة. لذلك، قد يكون الرابط openttc.com المشار إليه في هذا المنشور غير مستقر.
بمجرد الانتهاء من عملي الحالي، سأنشر رابطًا محدثًا في هذا الموضوع لعرض نتائج مناقشتنا (تضمين Zfile في منشورات Discourse، والتي قد تكون مفيدة لشخص ما في المستقبل).
في الواقع، بعد الكثير من التفكير، تخلت مؤقتًا عن نهجي السابق.
السبب هو أنه من المزعج جدًا إدارته. إذا أضفت محتوى جديدًا لاحقًا، فسيتعين علي إدارته بشكل منفصل في كل من أنظمة Discourse و Zfile ومزامنتها يدويًا.
أحاول حاليًا تضمين المحتوى مباشرة في المنشورات كملفات PDF. بعض ملفات PDF الفردية يزيد حجمها عن 2 جيجابايت، لذلك لا تزال هناك مجموعة من المشكلات التي يجب التعامل معها ببطء …
شكراً لكم جميعاً على اهتمامكم. هذا المجتمع جميل حقًا!
أتمنى لكم الصحة الجيدة والسعادة لعائلاتكم!
شكراً لك، ونفس الشيء لك ولعائلتك! ![]()
سأقوم بإغلاق هذا الموضوع حيث يبدو أنك تمكنت من العثور على بعض الخيارات الجيدة لحل مشكلتك. إذا واجهت تحديات مرة أخرى في المستقبل، يمكنك إنشاء مواضيع جديدة.