المقدمة

SPIP هو نظام له حدود. فهناك اشياء ينفذها جيداً واشياء اخرى لا يستطيع تنفيذها. فعلى سبيل المثال، حاول انشاء موقع متخصص بالسينما ويحتوي وصلات من كل الاسماء (الممثلون والمخرج والفريق التقني على شكل بطاقات موقع Internet Movie Database) نحو افلام اخرى شاركوا فيها وسيظهر لك جلياً ان SPIP لم يُصمم من اجل ذلك! في المقابل، ليس اسهل من انشاء موقع نشر بسيط البنية مثل uZine وادارته.

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

امام محدودية النظام الظاهرة، هناك بعض مسؤولي المواقع (الشجعان) الذين يغوصون في برمجيات SPIP الداخلية لتكييفه مع حاجاتهم الخاصة. ومع ان هذا التصرف الذي يتماشى مع «المصادر المفتوحة» محمود الا ان هؤلاء يحرمون انفسهم من امكان متابعة تطور النظام العادي ويحتاجون الى خبرة كبيرة في لغة PHP.

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

الى من يتوجه هذا التدريب؟

يتوجه هذا التدريب الى مطوري المواقع الراغبين في تخطي بعض حدود SPIP الظاهرية. لذلك يتحتم عليهم ان يكونوا قد تعمقوا في كيفية عمل الصفحات النموذجية والحلقات التي تتحكم بالواجهة العمومية للموقع.

واذا كنت تبتدئ مع SPIP، يستحسن البدء من القسم SPIP خطوة خطوة الذي يتوجه الى المطورين الراغبين في تعلّم تشغيل الصفحات النموذجية.

واذا كنت تتقن استخدام الصفحات النموذجية، ننصحك بالابقاء على الدليل المرجعي في متناول يدك.

اي اصدار من SPIP؟

تستخدم الامثلة الواردة هنا وظائف موجودة منذ الاصدار SPIP 1.3. ومنها ما يمكن تحقيقه بواسطة اصدارات سابقة الا ان استخدام الاصدار 1.3 او ما بعد يوفر قدراً اكبر من المرونة.

ما هي المعرفة التقنية الاضافية الضرورية؟

هذا التدريب تدريجي. انه يعرض بناء صفحات نموذجية كاملة باعتماد الخطوة خطوة. فعدى فهم كيفية تشغيل الصفحات النموذجية (ونظام الحلقات)، يجب اتقان علامات HTML. على اننا قصدنا استخدام علامات بسيطة ولكن اذا حتى الآن، لم تستخدم لبناء صفحات مواقع الا برامج تصميم رسومية، فقد تلاقي بعض الصعوبة.

لن نتطرق هنا الى استخدام PHP في الصفحات النموذجية وبالتالي فإن اتقان هذه اللغة ليس ضروري.

المحتمات

 عدم المساس ببنية SPIP نفسه. فلن نعدّل ابداً برمجيات النظام ولا جداول قاعدة البيانات التي يستخدمها. ويكفل ذلك توافق الوظائف التي نقدمها هنا مع التطور المستقبلي للنظام وبقاء واجهة المجال الخاص ثابتة وواضحة.

 انشاء موقع يحافظ على تماسك اسلوب التصفح. فأحد الاهداف هنا هو انشاء اسلوب تصفح اغنى مما تقدمه الصفحات النموذجية القياسية. وفي المقابل، لا يجب ان يصبح هذا الاسلوب مبهماً وغامضاً بالنسبة للزائر. (ستلاحظ اننا لم نطوّر الرسوم في صفحاتنا. فمن الجهة الجمالية ستكون الواجهة التي سنحصل عليها بعد الانتهاء من التدريب قبيحة... في المقابل فإن الروابط بين العناصر البنيوية في الموقع ستكون موجودة).

 انشاء موقع يكون تحديثه سهلاً. فلا يضطر الذين يديرون الموقع من المجال الخاص الى اضاعة ساعات عدة في اضافة مقال. فالمطلوب الاستفادة من الوظائف الآلية المرتبطة بالمواقع الديناميكية.

كيف يجب استخدام هذا التدريب؟

هذا التدريب تدريجي والبرمجيات التي نقدمها كاملة: فلن تجد «اجزاء برمجة» لا يُعرف من اين اتت لكي تنسخها كما هي. على العكس سيتم بناء البرمجيات الكاملة للصفحات النموذجية اول بأول مع تتابع المقالات. والاسلوب المتبع هنا هو بناء صفحات نموذجية اكثر فأكثر تعقيداً مع تفسير واف لكل مرحلة.

ننصحك، اذاً باتباع ترتيب المقالات في هذا التدريب وبإنشاء الملفات في الوقت نفسه الذي تقرأ فيه التفسيرات وبإدخال التنوعات التي نعطيها كأمثلة تباعاً.

ستجد هذه الامثلة اكثر وضوحاً اذا قمت بإنشاء الصفحات التي نتحدث عنها بنفسك. فستبدو البرمجة اسهل لأنك لدى ادخال كل عنصر جديد، سترى النتيجة مباشرة.

تدرج هذا التدريب

 تشدد المقالات الاولى (من «هدف اللعبة» الى «كتابة مقالات») على اهمية التفكير ملياً ببنية الموقع وتحديد مكونات المقالات قبل الشروع ببناء موقع معقد. من الناحية التقنية، هذا الجزء هو في متناول جميع مستخدمي SPIP (وبالتالي يمكنك قراءته حتى لو لم يكن لديك اية فكرة عن كيفية عمل الصفحات النموذجية).

قد يبدو لك هذا الجزء سهلاً اكثر من اللزوم (فليس هناك اية معالجة تقنية)، الا انه يعرّفك على مفهوم المفاتيح واستخدامها كأداة لتنظيم الموقع. وبالاخص، تساعد في التشديد على ان بنية الموقع تكسب اهمية فائقة عند الانطلاق في تصميم موقع كبير. واذا تم اهمال هذه المرحلة (وكثيراً ما يتم اهمالها)، نحصل على مواقع تعصى على التحكم بها اضافة الى عرضها لأسلوب تعامل غير واضح مع الزائر (من المستبعد ظهور هذه المشاكل حين يكون الموقع لا يحتوي بعد الا عدد قليل من المقالات). اخير، نشدد (بقوة) على ان الخيارات التقنية (برمجة الصفحات النموذجية واستخدام المفاتيح) تعتمد مباشرة على الخيارات التحريرية (هذه بداهة في انظمة النشر).

 اما المقالات التالية (من «اول اصدار من صفحات المقالات» الى «الموقع بالكامل»)، فتعرض انشاء الصفحات النموذجية خطوة خطوة. من هنا يجب التمتع بقدر لا بأس به من المعرفة في نظام حلقات SPIP. اما الصعاب، في هذه المرحلة، فتظهر على الصعيد المنطقي وليس على صعيد البرمجة. وقد قصدنا تصميم الصفحات النموذجية على مراحل متتالية: في البداية، صفحات بسيطة جداً، ثم نعود اليها ونضيف بعض التعقيدات في بنية الحلقات.

ستجد في هذا القسم بعض النصائح المنطقية في ادارة الحلقات. وسوف ترى، بالاخص، كيف تُستخدم المفاتيح كعناصر لتنظيم التصفح في الموقع.

 نحصل في آخر هذا التدريب على موقع كامل وعملي (بشرط تطوير واجهة رسومية اكثر اتقاناً). على ان المقال الاخير («الموقع بالكامل») سوف يعطيك بعض الافكار حول مزيد من التقنيات التي يمكنك تطبيقها في موقعك باستغلال المبادئ المطروحة هنا.

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

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