سؤال

مع التيار فانيليا ماجنتو 1.9.1 (CE) أو 1.14.1/1.14.2 (EE) ما هو أولاً حدث يمكن ملاحظته؟

  • للواجهة الأمامية (عبر /index.php;عندما تم تشغيل برنامج التثبيت بالفعل)
  • بالنسبة للواجهة الأمامية، عندما لم يتم تشغيل برنامج التثبيت بعد (إذا كان يحدث فرقًا)
  • للمشرف
  • في كرون
  • في خدمة الويب API 1
  • في خدمة الويب API 2

(قد يبحث هذا السؤال عن حقائق خالصة، ولكن الأكثر إثارة للاهتمام في نطاق Magento 1 هو كيفية العثور على هذه الأحداث في الكود)


في عملية اكتشاف المزيد، قمت بجمع بعض موارد الويب:

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

المحلول

ومن الممكن ملاحظة هذه الأحداث بنفسك على النحو التالي:

/app/Mage.php تعديل dispatchEvent() وظيفة على النحو التالي:

/**
 * Dispatch event
 *
 * Calls all observer callbacks registered for this event
 * and multiple observers matching event name pattern
 *
 * @param string $name
 * @param array $data
 * @return Mage_Core_Model_App
 */
public static function dispatchEvent($name, array $data = array())
{
    Mage::log($name, null, 'events.log', true); //add this line
    Varien_Profiler::start('DISPATCH EVENT:'.$name);
    $result = self::app()->dispatchEvent($name, $data);
    Varien_Profiler::stop('DISPATCH EVENT:'.$name);
    return $result;
}

الآن عند تشغيل الصفحة، ستلاحظ ذلك /var/log/events.log يسجل كل حدث، بالترتيب، عند تحميل أي صفحة ترغب في مراقبتها.

تأكد من تنفيذ ذلك في بيئة مرحلية حيث تكون أنت الشخص الوحيد الذي يستخدم الموقع، للتأكد من أنك تقوم بتسجيل الأحداث الصحيحة.

قم بتنظيف ملف السجل بعد مراقبة كل صفحة على حدة بحيث يكون أول حدث يتم تسجيله هو أول حدث يتم تشغيله دائمًا.

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