متغيرات التخصيص

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

اين يجب تحديد هذه المتغيرات؟

ليس من الضروري الغوص في برمجيات SPIP نفسه لتحديد هذه المتغيرات.

 لكامل الموقع

اذا كنت تريد تحديد هذه المتغيرات لكامل الموقع، يمكنك القيام بذلك من خلال تعريفها كمتغيرات شاملة وبصيغة املائية مختلفة في ملف اسمه mes_fonctions.php (او mes_fonctions.php3 في الاصدارات السابقة) يوضع في اصل الموقع. (يجب انشاء هذا الملف واحاطة وصف المتغيرات بعلامتي <?php و?>، انظر الامثلة ادناه).

 لكل نوع من الصفحات النموذجية

يمكنك ايضاً تحديد هذه المتغيرات حسب الصفحة النموذجية. من اجل ذلك يجب ادخالها في بداية ملف PHP الذي ينادي الصفحة النموذجية (مثلاً article.php3 او rubrique.php3...). سوف تُدرج بشكل طبيعي الى جانب المتغيرات الاجبارية $fond و$delais. راجع الامثلة.

متغيرات النصوص

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

 $debut_intertitre يحدد علامة HTML التي يتم وضعها قبل عناوين الفقرات (التي تخضع للاختصار }}}. في الوضع العادي تكون قيمته:

$debut_intertitre = “\n<h3 class=\”spip\”>\n”;

 $fin_intertitre يحدد علامة HTML التي يتم وضعها بعد عناوين الفقرات (اي الاختصار {{{) وقيمته العادية هي:

$fin_intertitre = “</h3>\n”;

 $ouvre_ref هو علامة فتح نداء حاشية؛ وهو افتراضياً مسافة ثابتة يتبعها معقف فاتح («[»).

 $ferme_ref هو علامة اقفال نداء حاشية؛ وهو افتراضياً معقف غالق («]»).

 $ouvre_note هو علامة فتح الحاشية (كما تظهر في #NOTES)؛ وهو افتراضياً معقف فاتح.

 $ferme_note هو علامة اغلاق الحاشية؛ وهو افتراضياً معقف غالق.

يمكن اختيار بدائل لهذه الرموز كالهلالين مثلاً او استخدام علامتي HTML للفتح <sup> والاغلاق </sup>.

 الملف puce.gif والمتغير $puce. عندما تبدأ سطراً جديداً بخط صغير («-»)، يستبدله SPIP بكرة صغير رسومية. وتأتي هذه الكرة من الملف puce.gif الموجود في اصل الموقع؛ وبالتالي يمكنك تعديل هذا الملف باستدال الرسم الافتراضي برسم آخر. كما يمكنك تحديد اختيار الكرة بواسطة متغير $puce لاختيار ملف رسومي آخر مثلاً:

$puce = “<img src=’mybullet.gif’ alt=’-’ align=’top’ border=’0’>”;

او اذا قررت اختيار عنصر HTML غير رسومي:

$puce = “<li>”;

متغيرات المنتديات العامة

هناك متغيرات تتيح تحديد تصرف المنتديات العامة بواسطة المفاتيح.

ملاحظة: لا تستخدم هذه المتغيرات الا اذا قمت بإنشاء منتديات عامة حيث يمكن للزوار اختيار مفاتيح. فاستخدامها اذاً محدد بدقة (وليس بديهياً...).

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

$afficher_texte = “non”;

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

يأتي متغير $afficher_groupe على شكل مصفوفة (array) ويتم بناؤه هكذا:

$afficher_groupe[] = 3;
$afficher_groupe[] = 5;

حيث يفرض عرض المجموعتين 3 و5 فقط.

$afficher_groupe[] = 0;

يمنع استخدام المفاتيح في المنتدى (لأنه لا توجد مجموعة مفاتيح تحمل الرقم صفر).

اذا لم نذكر اي شيء (اي لا نستخدم متغير $afficher_groupe)، يتم استخدام كل مجمعات المفاتيح التي تم تحديدها في المجال الخاص على انها متوافرة لزوار الموقع العمومي.

عدم عرض أزرار الادارة

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

[SPIP 1.7] يتيح متغير flag_preserver منع عرض هذه الأزرار.

$flag_preserver = true;

بمكن الاطلاع على استخدام هذا المتغير في ملف backend.php3 مثلاً.

مجلد الصفحات النموذجية

اذا اردت تخزين صفحاتك النموذجية في مجلد معين (لاختبار عدة نكهات من الصفحات النموذجية التي قد تعثر عليها على شيكة انترنت، مثلاً، او لأنك تحب الترتيب...) يمكن تحديد متغير $dossier_squelettes في ملف mes_fonctions.php</code في اصل الموقع او (وهذا افضل) في ملف <code>ecrire/mes_options.php.

<?php
    $GLOBALS[‘dossier_squelettes’] = ‘design’;
?>

حينذاك، يجلب SPIP الصفحات النموذجية من المجلد design/ (الذي تكون قد انشأته في اصل الموقع) قبل ان يبحث في مكان آخر. واذا قمت باستخدام <INCLURE(xxx.php)> (وهو ترجمة لأمر include) ايضاً، يقوم SPIP بجلب ملف xxx.php اولاً في design/ واذا لم يكن هناك يبحث عنه في اصل الموقع.

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

هذا المتغير يتيح تحديد مجلد او اكثر حيث SPIP سيبحث عن الصفحات النموذجية اولاً:

<?php
    $GLOBALS['dossier_squelettes'] = 'my_template1:my_templatel2';
?>

امثلة

 لتعديل المتغيرات لنوع واحد من الصفحات النموذجية (لصفحة الاقسام مثلاً)، يكفي تحديد هذه المتغيرات في الملف الذي ينادي الصفحة النموذجية. فللأقسام مثلاً، يمكن تحديد القيم مباشرة في rubrique.php3:

<?php
    $fond = “rubrique”;
    $delais = 2 * 3600;
    $logos_space = 20;
    include (“inc-public.php3”);
?>

هنا قمنا بتغيير قيمة المسافة حول رمز الأقسام.


 لتعديل قيم المتغيرات في كامل الموقع، يمكن تحديدها في ملف mes_fonctions.php3.

يجدر التنبيه الى انه اذا قررنا تحديد قيم في هذا الملف يجب استخدام الصيغة $GLOBALS[‘xxx’] لكل من المتغيرات المطلوب تعديلها. فلتحديد قيمة $debut_intertitre مثلاً، نستخدم الصيغة $GLOBALS[‘debut_intertitre’].

هناك اعتبارات امان تقرض استخدام هذه الصيغة.

<?php
    $GLOBALS[‘debut_intertitre’] = “<h3 class=’my_style_h3’>”;
    $GLOBALS[‘fin_intertitre’] = “</h3>”;

    $GLOBALS[‘ouvre_ref’] = ‘&nbsp;(‘;
    $GLOBALS[‘ferme_ref’] = ‘)’;
    $GLOBALS[‘ouvre_note’] = ‘(‘;
    $GLOBALS[‘ferme_note’] = ‘) ‘;

    $GLOBALS[‘logos_space’] = 0;
?>

مؤلف George نُشر في: تم التحديث: 21/03/23

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