Questions tagged «helper»

表示有关Magento模块助手的问题

5
实例化助手在Magento 2
Magento 2的最新版本已经消除了Mage该类。这意味着我们已经丢失了该Mage::helper方法。 在Magento 2中是否存在用于实例化助手的替代技术(助手工厂?)?还是我们应该使用新的对象管理器类,并使用get(vs. create)将帮助程序实例化为单例/缓存对象。

2
在模块中创建自定义帮助程序类
我test_helper创建了一个名为的新模块,并希望在此模块中创建一个帮助器类,以便可以添加自定义函数以在整个站点中调用。 但是,我似乎找不到有关如何执行此操作的任何示例。我假设我必须在config中创建一些额外的xml,并在扩展基本帮助程序的位置添加另一个文件,但是我没有运气找到要构建的示例。


5
如何在.phtml文件中调用辅助方法
尝试在magento 2中进行开发。但是,我没有找到如何在template(.phtml)文件中调用Helper方法的方法。 我想要替换以下代码: $this->helper('modulename/helpername')->methodname(); 如果有人知道,请帮助我。
16 magento2  phtml  helper 

3
Magento:致命错误:在第546行的…/ app / Mage.php中找不到类'Mage_Giftcards_Helper_Data'
我已经安装了一个模块扩展,它引发致命错误 管理员中的“致命错误:在第546行的.... / app / Mage.php中找不到类'Mage_Giftcards_Helper_Data'”。 我推荐了这个链接/programming//a/9191286/2919940和这个链接/magento//a/7133/3693 但是我有 <global> <helpers> <giftcards> <class>Webtex_Giftcards_Helper</class> </giftcards> </helpers> </global> 在我config.xml和我这堂课上 class Webtex_Giftcards_Helper_Data extends Mage_Core_Helper_Data{ // my methods } 在/app/code/local/Webtex/Giftcards/Helper/Data.php路径声明。 我已禁用编译器,并通过创建空var/cache目录来清除缓存。 我发现到处config.xml应该定义帮助器类,而Data.php应该声明该帮助器类。 但就我而言,我都有他们两个,这是什么原因导致此错误?我也在新的magento安装上测试了该模块, Magento版本是1.7.0.2 请提供此错误的帮助?如果类名冲突,我们该如何调试? 谢谢

1
Magento工厂方法中的全类名
在Magento 1中,如果我在工厂方法中使用完整的Magento类名,则可以实例化一个对象 //trying full class name instead of catalog/product $object = Mage::getModel('Mage_Catalog_Model_Product'); 但是,对于助手来说,这是行不通的。如果你试试 Mage::helper('Mage_Core_Helper_Url'); 你得到 Warning: include(Mage/Mage/Core/Helper/Url/Helper/Data.php): failed to open stream: No such file or directory in /path/to/magentolib/Varien/Autoload.php on line 93 #0 /path/to/magentolib/Varien/Autoload.php(93): mageCoreErrorHandler(2, 'include(Mage/Ma...', '/path/to/magent...', 93, Array) #1 /path/to/magentolib/Varien/Autoload.php(93): Varien_Autoload::autoload() #2 [internal function]: Varien_Autoload->autoload('Mage_Mage_Core_...') #3 /path/to/magentoapp/Mage.php(547): spl_autoload_call('Mage_Mage_Core_...') #4 /path/to/magentoapp/code/local/Sebastianjuffar/Commercebug/controllers/IndexController.php(11): …
11 model  helper  factory 

2
Magento 2:正确使用助手
我开始看到越来越多的人声明帮助程序类,以便能够在模板文件中使用以下内容: $this->helper('Path/To/Helper/Class')->customMethod(); 这种代码使人们避免不直接使用对象管理器的限制,但是我倾向于在那些帮助器中看到应该是块代码的代码。 所以这是我的问题: 在助手类中应该写些什么? 在哪些情况下在模板中使用辅助方法是否有意义?

4
助手与模型?我应该使用哪个?
我正在使用magento中的Instagram API。如果他们在Instagram上关注我们的商店,我会为instagram的关注者提供优惠券。 我正在使用curl使用PHP对instagram进行API调用。目前,我将API调用包装在自定义模块中的辅助函数中。我是否应该将这些调用包装在模型中的函数中? 例如。我正在对Instagram进行API调用,以确定当前用户是否关注我的帐户。因此,在控制器中,我正在调用助手函数,该函数将关注状态返回给控制器。然后在我的控制器中,如有必要,我将更新我的模型。 将这些API调用放入辅助函数中,对吗?什么时候使用助手而不是模型? <?php class Company_SocialCoupons_InstagramController extends Mage_Core_Controller_Front_Action { public function followAction() { $status = Mage::helper('socialcoupons/instagram')->getFollow(); if ($status == 'follows') { // 1. ADD DATA TO MY DATABASE using my custom model // - Ex. Mage::getModel('socialcoupons/instagram')->setInstagramId(*IGID*), etc. // 2. CREATE COUPON // 3. EMAIL COUPON TO CUSTOMER } …

5
SodiumChachaIetf :: decrypt()必须为字符串类型,布尔值
我确实将Magento 1迁移到Magento 2.3.0一切都很好,但是当我创建客户双方(前台和管理员)的表单时,我都遇到了与解密相关的错误,即使单击保存时我也无法编辑客户,但发生了同样的错误。 下面的错误是: 致命错误:未捕获的TypeError:Magento \ Framework \ Encryption \ Adapter \ SodiumChachaIetf :: decrypt()的返回值必须为字符串类型,在public_html / vendor / magento / framework / Encryption / Adapter / SodiumChachaIetf.php:68中返回的布尔值堆栈跟踪:#0 public_html / vendor / magento / framework / Encryption / Encryptor.php(358):Magento \ Framework \ Encryption \ Adapter \ SodiumChachaIetf-> decrypt('“ \ x10 \ …

1
如何在我的模块中添加自定义帮助器?
如何在Magento 2模块中创建新的Helper或重写/重写Core Helper? 我尝试将依赖项添加到module.xml“自定义模块”中,但它根本不会加载Helper类。 下面是我的module.xml; <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"> <module name="Company1_Module1" schema_version="1.0.0" setup_version="1.0.0"> <sequence>Magento_Directory</sequence> </module> </config>

2
Magento 2的构造函数中大量的DI类被烦恼-有更好的方法吗?
这时,我很讨厌在我的模块中像下面一样编写类似的构造函数。 public function __construct( \Magento\Framework\Model\Context $context, \Magento\Framework\Registry $registry, /* ... */ \Foo\Bar\Model\Baz $baz, /* ... */ \Magento\Framework\Model\ResourceModel\AbstractResource $resource = null, \Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null, array $data = [] ) { $this->registry = $registry; /* ... */ $this->baz = $baz; /* ... */ /* some awesome stuff */ } 在许多很多情况下,我在模块中都需要相同类的实例。 所以我在问自己,是否可以使用一个或两个提供必要类的中央帮助程序类而不是在每个构造函数中都定义它们,这是一种可接受的方法。 …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.