📅  最后修改于: 2023-12-03 15:22:44.509000             🧑  作者: Mango
本文介绍如何在PHP中删除Magento 2默认产品数据选项卡。
Magento 2的产品页面中默认包含一些选项卡,如“详细信息”、“设计”、“产品评论”等。如果您的Magento网站不需要某些选项卡,您可以使用以下PHP代码删除它们。
<?php
namespace [Vendor]\[Module]\Plugin\Catalog\Block\Adminhtml\Product\Edit;
use Magento\Catalog\Block\Adminhtml\Product\Edit\Tabs;
use Magento\Backend\Block\Template\Context;
class RemoveTabs
{
protected $context;
protected $tabs;
public function __construct(
Context $context,
Tabs $tabs
) {
$this->context = $context;
$this->tabs = $tabs;
}
public function afterToHtml(Tabs $subject, $result)
{
$result = preg_replace('#\<!--[^\>]*' . 'tab-label="([^"]*)"[^\>]*\>-->\<\/tab\>#s', '', $result);
return $result;
}
}
上述代码是一个插件,它重写了Magento 2的Tabs
类并删除了默认产品数据选项卡的代码。要使用此插件,请执行以下步骤:
etc/di.xml
文件中添加以下代码:<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Catalog\Block\Adminhtml\Product\Edit\Tabs">
<plugin name="[Vendor]_[Module]::remove_tabs" type="[Vendor]\[Module]\Plugin\Catalog\Block\Adminhtml\Product\Edit\RemoveTabs"/>
</type>
</config>
[Vendor]
和[Module]
替换为您的扩展的名称。Magento\Catalog\Model\Product\Attribute\Backend\Group\TabGroup
类并使用相同的正则表达式来删除其他选项卡。以上是如何删除Magento 2默认产品数据选项卡的方法。请牢记备份您的代码,并确保您了解此更改的影响。