SPIP 1.9.1

ظهر الإصدار 1.9.1 من SPIP!

وهذه هي أهم التحسينات التي دخلت على هذا الاصدار

المجال الخاص

يدمج المجال الخاص بشكل أعمق تقنية التحديث غير المتزامنة (AJAX/AHAH) لجزء من الصفحة. وأصبحت استمارات وصف الصور والمستندات أكثر مرونة كما تم تسريع دوران الصور وإضافة المفاتيح والمؤلفين والربط بالترجمات.

نظام من القوالب

القوالب هي صفحات نموذجية صغيرة يمكنها الاندماج بسهولة في صفحات نموذجية عادية كما يمكنها خاصة الاندماج في مادة المقالات (او الاخبار الخ.)

وتعتبر هذه القوالب امتداداً طبيعياً لاختصاري <img1|left> و<doc1|center>. على كل، تتم ادارة هذين الاختصارين بواسطة الصفحات النموذجية الصغيرة. ويمكن تحديد هذه الصفحات في المجلد الفرعي modeles/ في مجلد الصفحات النموذجية او مجلد الملحقات.

وعدا عن اختصاري المستندات والصور، يمكن للقوالب الموجودة في dist/modeles/ إدارة عرض وصلات التصفح وعلامة #LESAUTEURS ووصلات الترجمة.

يوضع المقال «استخدام القوالب» هذه القوالب بشكل أكثر تفصيلاً.

علامات جديدة

  • #SPIP_VERSION يعرض رقم إصدار SPIP.
  • #INSERT_HEAD: علامة يتم وضعها في فقرة الترويسة (<head>...</head>) في الصفحات النموذجية لتتيح للملحقات إضافة أوراق أنماط أو أوامر جافاسكريبت آلياً.
  • #INCLURE: علامة جديدة لإدراجات ثابتة غير ديناميكية.
    تذكير: تؤدي الكتابة <INCLURE{fond=..}> الى إدراج صفحات لدى كل زيارة للصفحة المستوعِبة حتى ولو كانت هذه الصفحات في الذاكرة المخبأة.
    ولكن مع العلامة الجديدة [(#INCLURE{fond=...})]، يتم الإدراج خلال معالجة الصفحة النموذجية المستوعِبة وتخزين النتيجة في الذاكرة المخبأة. هكذا لم يعد من الممكن التحكم بحياة ($delais او #CACHE{}) قصيرة للصفحة النموذجية المدرجة. في المقابل يصبح من الممكن تطبيق مرشحات على الصفحة النموذجية المدرجة: [(#INCLURE{fond=lettre}|version_texte)].
  • أصبح التصفح يخضع لنموذج (أنظر لاحقاً) مما يتيح تخصيصه من خلال نموذج شخصي. هكذا:
    • تعطي #PAGINATION{page} أرقام صفحات (1، 2، 3، 4،...) بدلاً من أرقام عناصر (0، 10، 20، 30،...).
    • يمكن أيضاً تجربة #PAGINATION{page_precedent_suivant} و#PAGINATION{precedent_suivant} للانتقال الى الصفحة السابقة والصفحة التالية.
    • إدخال علامة #SQUELETTE التي تعرض مسار الصفحة النموذجية الحالية.

المرشحات

تحسين image_masque:

  • يمكن حالياً تحديد الموقع الأفقي او العمودي لقناع الصورة بواسطة:
    • text-align=center (او left او right).
    • vertical-align=middle (او top او bottom).
  • أصبح من الممكن اختيار كيفية خلط صورتين، على طريقة برامج مثل Gimp. افتراضياً واذا لم نحدد اي وضعية نحصل على: mode=masque وهي الوضعية المعروفة سابقاً.
    اما الوضعيات الجديدة فهي:
    • mode=normal تأتي الصورة الأولى فوق الثانية
    • mode=eclaircir يتم وضع النقاط الأفتح فقط من الصورة الأولى على الثانية
    • mode=obscurcir يتم وضع النقاط الأغمق فقط من الصورة الأولى على الثانية
    • mode=produit يتم اختيار وضعية «الضرب» بين نقاط الاصل ونقاط القناع. وهكذا تقوم النقاط السوداء بجعل الصورة سوداء اما النقاط البيضاء فتبقي الصورة كما هي.
    • mode=difference تتم التعبئة بنتيجة الفرق بين نقاط الصورتين.

توسيع استخدام مرشحات الصورة لتشمل النصوص:
يمكن تطبيق كل مرشحات الصور على ملف صورة او علامة <img src='..' ../> او نص كامل (عندها تطبق المرشحات على كل صورة يتم العثور عليها في النص). صار من الممكن اذن، استخدام [(#TEXTE|image_sepia)].

تم إدخال مرشحات أخرى سيتم عرضها في وقت لاحق.

الاستخدام المتطور

المجلد /formulaires:
يجب الآن وضع الاستمارات الشخصية (ملفات HTML) في المجلد الفرعي /formulaires داخل مجلد الصفحات النموذجية (او الملحقات). اما ملفات php الخاصة بالاستمارات فيمكن تخصيصها في مجلد /balise داخل مجلد الصفحات النموذجية (او الملحقات).

معالجة صفحة نموذجية من داخل المجال الخاص
يمكن لمطوري الملحقات استخدام دالة recuperer_fond التي تتيح حساب صفحة نموذجية حتى بواسطة مقطع برمجي من داخل المجال الخاص. وهذه هي الوظيفة التي يستخدمها نظام النماذج وعلامة #INCLURE.

المتغيرات في الصفحة النموذجية
ظهرت علامات جديدة تتيح تنفيذ عمليات حسابية داخل الصفحات النموذجية وتخزين نتائجها في «متغير» يمكن استخدامه في ما بعد في الصفحة نفسها: #SET{my_var, value} و#GET{my_var}.

إعادة تحميل جزئية للصفحة (اختباري):
يمكن لكل حلقة انشاء جزء من صفحة نموذجية يتم تحميله ديناميكياً بشكل غير متزامن في المتصفح (ahah). يكفي لذلك استخدام معيار {fragment} على الحلقة المطلوبة. يصبح كل محتوى الحلقة (القسم قبل والقسم الرئيسي والقسم بعد والقسم البديل) داخل علامة div تخضع لنمط fragment وتملك هوية (id) فريدة: <div id="fragment_html_1c4f894574d730e016e980d91fa678ca_articles" class="fragment"> ...

فإذا نادينا عنوان URL مرفقاً بالمتغير الإضافي var_fragment الذي يحمل قيمة هي هوية علامة div خاصة بنمط fragment (مثلاً: &var_fragment=fragment_html_1c4f894574d730e016e980d91fa678ca_articles)، لن يسترجع الخادم الا هذا الجزء fragment من الصفحة النموذجية. هكذا يصبح من السهل تحميل جزء من الصفحة النموذجية فقط باستخدام جافاسكريبت (AJAX/AHAH).

ملاحظة:
هذه الوظيفة لا تزال في طور الاختبار ولا شك انها سوف تتطور في الاصدارات القادمة. نشجع على تجربتها والعودة الينا بملاحظاتكم او بمساهماتكم لتحسينها.

وضعية tidy:
لم تعد وضعية XHTML Tidy (انظر Tidy : Correction XHTML 1.0 - لا يزال بالفرنسية) داخلة افتراضياً في توزيع SPIP، انما تحولت الى ملحق وذلك لثلاثة اسباب:

  • تعتمد هذه الوظيفة على نداء برنامج ثنائي (binary) لا يكون دائماً متاحاً لدى المضيفين. فضلاً عن ان وضيتها php_tidy لا تعمل بشكل سليم تماماً حتى الآن.
  • أصبح محرك SPIP ينتج افتراضياً علامات XHTML اكثر متانة مما يقلل من أهمية نظام tidy.
  • يقدم مصحح أخطاء SPIP (لدى اضافة &var_mode=debug في عنوان URL) وضعية تصديق تشير الى العلامات غير السليمة وأوامر الصفحة النموذجية التي انتجتها (يجب إضافة $xhtml='spip_sax'; في ملف mes_options.php للحصول على هذه الوظيفة).

توثيق البرمجيات:
تم وضع توثيق لبرمجيات SPIP على العنوان http://doc.spip.org
- تم توثيق كل دالة بشكل آلي وتعمل وصلات هايبرتكست في الاتجاهين (من الاوامر الى توثيقها وبالعكس).
- يتم تحديث الموقع يومياً حسب التعديلات التي تدخل على برمجيات الاصدار قيد التطوير (SVN).

تصحيح

تم تصحيح العديد من الأخطاء (خاصة في ما يتعلق بالترخيص والذاكرة المخبأة للصور النصية وقائمة اللغات). لمزيد من التفاصيل، الرجاء مراجعة موقع التطوير على العنوان http://trac.rezo.net/trac/spip/report/6.

***

اذا قمت بتحديث موقعك من إصدار قديم من SPIP، ننصحك بقراءة المقال SPIP ١.٩.

للقراءة أيضاً:
— كيف تتم ترقية SPIP؟
— الانتقال إلى SPIP 1.9

وكالعادة في حال حاجتك للمساعدة يمكنك الحصول عليها من خلال لائحة spip-ar@rezo.net او في منتدى SPIP.

مؤلف جورج نُشر في: تم التحديث: 26/10/12

الترجمات: عربي, català, English, Español, français, italiano