سؤال

أنا أقرأ من خلال تطوير Drupal Pro الآن، كما يستخدم مثال على الصفحة 82 الوظيفة التالية:

function menufun_menu_link_alter(&$item, $menu){  
  if ($item['link_path'] == 'logout'){  
    $item['link_title'] = 'Sign off';  
  }
}

أفهم أنه يمكنني معرفة ما المعلمات "hook_menu_link_alter" يأخذ من خلال النظر في api.drupal.org. ما لا أفهمه هو كيف من المفترض أن أعرف ما هو العنصر الذي يحتوي عليه بالفعل. في هذا المثال، تم استخدام عنصر 8 دولارات ['Link_Path'] ['Link_title'] - كلاهما يستخدم كلاهما - كيف كان يعرف أنهم موجودون؟

أنا لست مهتما فقط بهذا المثال المحدد، بالطبع. أريد أن أكون قادرا على القيام بذلك لأي وظيفة نظرت إليه في Drupal.

شكرا مقدما للمساعدة!

هل كانت مفيدة؟

المحلول

إذا ذهبت إلى api.drupal.org ونظرت hook_menu_link_alter, ، ستحصل على هذه الصفحة:

http://api.drupal.org/api/function/hook_menu_link_alter/6.

والتي تتضمن الملاحظة التالية:

"$item مجموعة التعاونية تحديد رابط القائمة كما تم تمريرها إلى menu_link_save()."

إذا كنت تتبع الرابط إلى menu_link_save الصفحة، سوف تكون هنا:

http://api.drupal.org/api/function/menu_link_save/6.

التي محتويات $item المعلمة مدرجة بوضوح تحت حدود.

نصائح أخرى

إذا كنت تستخدم وحدة DEVEL التي أحب رميها

dsm($item)

في هناك لمعرفة ما يصل عنصر $ حاليا. يطبع مجموعة متنوعة تفاعلية / كائنات تفاعلية.

منحك لا يزال يتعين عليك الذهاب إلى API للبحث عن كل الاحتمالات، لأن هذا يوضح فقط ما هو محدد حاليا. ولكن عادة ما يحتوي على ما يكفي للحصول على ما أبحث عنه.

استخدام مستندات API أو عرض المتغيرات هي أدوات جيدة للحصول على معلومات. كلاهما لديهما مزاياهم، باستخدام DEVEL مفيد في الغالب عند تصحيح الأخطاء وترغب في معرفة ما يحدث. جزء كبير من كونه مطور دروبال جيد لا يعرف كل شيء، ولكنه قادر على تعقب المعلومات ذات الصلة. في بعض الأحيان، يمكن أن يكون من المفيد أيضا أن ننظر إلى التعليمات البرمجية أو التعليمات البرمجية من قبل الآخرين. رؤية كيف يمكن لأشياء الآخرين أن تساعد في بعض الأحيان كثيرا عندما تريد أن تفعل شيئا مشابها. يمكن أن تكون Google أيضا أداة جيدة أو مناقشة مشكلة مع بعضها. هناك العديد من الجوازات، عليك فقط أن تتعلم كيفية استخدام هذه الأدوات واستخدام ما يناسبك. بعد قضاء المزيد من الوقت في Api.Drupal.org، يمكنك الحصول على أفضل لاستخراج المعلومات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top