2010-08-23 31 views
28

Cách tốt nhất để xác định xem một mô-đun cụ thể có được bật/hoạt động trong Magento không? Tôi đã thử sử dụng class_exists để kiểm tra xem mã của tôi đã được tải và phân tích cú pháp chưa bằng PHP nhưng gần đây tôi đã nhận thấy nó không đáng tin cậy (trả lại true ngay cả khi tôi xóa cấu hình .xml của mô-đun).Xác định xem mô-đun Magento có được bật không

Có chức năng chính nào tôi có thể gọi không?

Trả lời

54

Nếu bạn muốn sử dụng một xây dựng trong chức năng chỉ cần sử dụng

Mage::helper('core')->isModuleEnabled(<module name>); 

Nó được thực hiện trong

Mage_Core_Helper_Abstract 
+4

thực sự bạn nên đề cập đến tên mô-đun có thể bằng: ** MyCompany_MyModule ** – Mohamed23gharbi

+0

Chỉ cần fyi, phương pháp này đã được giới thiệu với Magento trong CE 1.4.1.0, để tương thích phiên bản thấp hơn sử dụng giải pháp 'getModuleConifg''' – augsteyer

36

Đây là một lựa chọn đó là một cách thanh lịch hơn về tìm hiểu tình trạng:

Mage::getConfig()->getModuleConfig('modulename')->is('active', 'true') 
+0

Tôi thực sự thích phương pháp này, nó rất đơn giản nhưng thanh lịch. Cảm ơn! –

+0

Tôi có thể bao gồm đoạn mã này ở đâu? – Chester

0

Đây là phương pháp nhanh mà tôi sử dụng rất nhiều.

Mage::getStoreConfig('modulename/general/active') 

Điều này được dựa trên cài đặt etc/system.xml của bạn.

Các vấn đề liên quan