---
title: Cum folosesc un Around Plugin în Magento 2?
description: "Plugin-urile (interceptorii) permit modificarea comportamentului metodelor publice fără a schimba clasa originală. Există trei tipuri: **before**, **after** și **around**. > **Bună practică:** Magento recomandă **evitarea** plugin-urilor *around* — sunt costisitoare ca performanță și pot rupe funcționalitatea. Folosește *before*/*after* ori de…"
url: "https://www.hostx.ro/kb/cum-utilizez-around-plugin-in-magento-2/"
updated: "2026-07-26"
category: Programare / Aplicații / Magento
tags:
  - debugging
  - Magento 2
  - performanță
  - plugin
---

# Cum folosesc un Around Plugin în Magento 2?

Plugin-urile (interceptorii) permit modificarea comportamentului metodelor publice fără a schimba clasa originală. Există trei tipuri: **before**, **after** și **around**.

> **Bună practică:** Magento recomandă **evitarea** plugin-urilor *around* — sunt costisitoare ca performanță și pot rupe funcționalitatea. Folosește *before*/*after* ori de câte ori este posibil. Around se justifică doar când trebuie să controlezi execuția metodei originale (o poți omite sau condiționa).

Un plugin around primește ca al doilea parametru un callable `$proceed` care rulează metoda originală. Numele metodei este `around` + numele metodei țintă cu prima literă mare:

```
namespace VendorModulePlugin;

class ProductSavePlugin
{
    public function aroundSave(
        MagentoCatalogModelProduct $subject,
        callable $proceed
    ) {
        // logică înainte
        $result = $proceed();   // rulează metoda originală
        // logică după
        return $result;
    }
}
```

Plugin-ul se declară în `etc/di.xml` cu un `sortOrder` (valoare mai mică = executat mai devreme). Detalii în [documentația oficială](https://developer.adobe.com/commerce/php/development/components/plugins/).
