طريقة غير صالحة في /lib/Varien/Object.php بعد التحديث، مما يتسبب في وضع الصيانة

magento.stackexchange https://magento.stackexchange.com//questions/84704

  •  13-12-2019
  •  | 
  •  

سؤال

لقد قمت للتو بتحديث بعض الوحدات والآن يستمر متجر الويب الخاص بي في عرض صفحة الصيانة، في حين لا يوجد ملف Maintenance.flag في المجلد الجذر.

لقد تحققت من /var/log وفي Exception.log يستمر في إظهار هذا الخطأ:

2015-09-30T10:33:15+00:00 ERR (3): 
exception 'Varien_Exception' with message 'Invalid method Itoffshore_Products_Block_Price::callParentToHtml(Array
(
)
)' in /home/users/amanvftp/amanvida.eu/lib/Varien/Object.php:653
Stack trace:
#0 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Catalog/Block/Product/Abstract.php(398): Varien_Object->__call('callParentToHtm...', Array)
#1 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Catalog/Block/Product/Abstract.php(398): Itoffshore_Products_Block_Price->callParentToHtml()
#2 /home/users/amanvftp/amanvida.eu/app/design/frontend/default/aman-mobile/template/catalog/product/view.phtml(62): Mage_Catalog_Block_Product_Abstract->getTierPriceHtml()
#3 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Template.php(241): include('/home/users/ama...')
#4 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Template.php(272): Mage_Core_Block_Template->fetchView('frontend/defaul...')
#5 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Template.php(286): Mage_Core_Block_Template->renderView()
#6 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Abstract.php(919): Mage_Core_Block_Template->_toHtml()
#7 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Text/List.php(43): Mage_Core_Block_Abstract->toHtml()
#8 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Abstract.php(919): Mage_Core_Block_Text_List->_toHtml()
#9 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Abstract.php(637): Mage_Core_Block_Abstract->toHtml()
#10 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Abstract.php(581): Mage_Core_Block_Abstract->_getChildHtml('content', true)
#11 /home/users/amanvftp/amanvida.eu/app/design/frontend/default/aman-mobile/template/page/1column.phtml(59): Mage_Core_Block_Abstract->getChildHtml('content')
#12 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Template.php(241): include('/home/users/ama...')
#13 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Template.php(272): Mage_Core_Block_Template->fetchView('frontend/defaul...')
#14 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Template.php(286): Mage_Core_Block_Template->renderView()
#15 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Block/Abstract.php(919): Mage_Core_Block_Template->_toHtml()
#16 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Model/Layout.php(555): Mage_Core_Block_Abstract->toHtml()
#17 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Controller/Varien/Action.php(390): Mage_Core_Model_Layout->getOutput()
#18 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Catalog/Helper/Product/View.php(147): Mage_Core_Controller_Varien_Action->renderLayout()
#19 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Catalog/controllers/ProductController.php(132): Mage_Catalog_Helper_Product_View->prepareAndRender(332, Object(Mage_Catalog_ProductController), Object(Varien_Object))
#20 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Controller/Varien/Action.php(418): Mage_Catalog_ProductController->viewAction()
#21 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(254): Mage_Core_Controller_Varien_Action->dispatch('view')
#22 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Controller/Varien/Front.php(172): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#23 /home/users/amanvftp/amanvida.eu/app/code/core/Mage/Core/Model/App.php(365): Mage_Core_Controller_Varien_Front->dispatch()
#24 /home/users/amanvftp/amanvida.eu/app/Mage.php(684): Mage_Core_Model_App->run(Array)
#25 /home/users/amanvftp/amanvida.eu/index.php(94): Mage::run('', 'store')
#26 {main}

عندما أتحقق من ملف Object.php، لاحظت بالفعل أن أسلوب callParentToHTML غير موجود.ووفقا للوثائق، فإنه لا ينبغي أن يكون موجودا.

http://doc-magento.com/nav.html?lib/Varien/Object.php.source.html

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

المحلول

طبقات لديك امتداد يسمى Itoffshore_Products تحتوي على هذه الكتلة Itoffshore_Products_Block_Price وهذه الكتلة لا تحتوي على الطريقة callParentToHtml.
أول شيء يمكنك تجربته هو إضافة هذا إلى الكتلة المذكورة أعلاه

protected function callParentToHtml()
{
    return $this->toHtml();
}

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

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