{"id":3854,"date":"2022-09-20T00:05:00","date_gmt":"2022-09-20T03:05:00","guid":{"rendered":"https:\/\/www.magenteiro.com\/blog\/?p=3854"},"modified":"2022-09-19T22:01:59","modified_gmt":"2022-09-20T01:01:59","slug":"atributo-de-promocao-personalizado","status":"publish","type":"post","link":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/","title":{"rendered":"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o"},"content":{"rendered":"\n<p>Neste tutorial veremos <strong>como criar uma condi\u00e7\u00e3o de promo\u00e7\u00e3o personalizada<\/strong> no Magento. Como sabemos, o Magento possui <a href=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/promocoes-carrinho-vs-catalogo\/\">diversos tipos de promo\u00e7\u00f5es<\/a>, pre\u00e7os especiais, etc.<\/p>\n\n\n\n<p>Essas promo\u00e7\u00f5es nos permitem criar regras de (quase) infinitos tipos. Voc\u00ea pode criar promo\u00e7\u00f5es com base em categorias, grupo de clientes, quantidade de itens no carrinho, atributos de produto, e muito mais. E voc\u00ea ainda pode combinar estas condi\u00e7\u00f5es entre si.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" width=\"1588\" height=\"506\" src=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote.jpg\" alt=\"Regras de promo\u00e7\u00e3o de carrinho\" class=\"wp-image-3855\" srcset=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote.jpg 1588w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-250x80.jpg 250w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-700x223.jpg 700w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-768x245.jpg 768w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-1536x489.jpg 1536w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-760x242.jpg 760w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-500x159.jpg 500w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/promo-quote-120x38.jpg 120w\" sizes=\"(max-width: 1588px) 100vw, 1588px\" \/><\/figure>\n\n\n\n<h2 id=\"h-outras-condicoes\">Outras condi\u00e7\u00f5es<\/h2>\n\n\n\n<p>Embora seja extremamente raro, pode haver casos onde o atributo que voc\u00ea deseja utilizar n\u00e3o exista. E ainda, que n\u00e3o haja outra forma de se contornar a necessidade com <a href=\"https:\/\/www.magenteiro.com\/magento2admin?utm_source=magenteiro&amp;utm_medium=blog&amp;utm_campaign=customPromo\">recursos existentes do Magento<\/a>.<\/p>\n\n\n\n<p>Falando nisso, recentemente precisei criar um m\u00f3dulo que me permitisse utilizar uma vari\u00e1vel do servidor (<code>$_SERVER<\/code>) como atributo de promo\u00e7\u00e3o.<\/p>\n\n\n\n<p>Para minha surpresa, a implementa\u00e7\u00e3o disso foi mais f\u00e1cil do que eu esperava. Veja s\u00f3&#8230;<\/p>\n\n\n\n<h2 id=\"h-adicionando-uma-condicao-de-promocao-personalizada\">Adicionando uma condi\u00e7\u00e3o de promo\u00e7\u00e3o personalizada<\/h2>\n\n\n\n<p>No exemplo a seguir, criarei um m\u00f3dulo que adicionar\u00e1 uma propriedade personalizada que poder\u00e1 ser usada nas promo\u00e7\u00f5es de carrinho.<\/p>\n\n\n\n<p>Esta propriedade ir\u00e1 ler o valor de <code>$_SERVER['HTTP_CF_IPCOUNTRY']<\/code>, que \u00e9 uma <a href=\"https:\/\/developers.cloudflare.com\/fundamentals\/get-started\/reference\/http-request-headers\/#cf-ipcountry\">propriedade enviada pelo Cloudflare para identificar o pa\u00eds de origem do visitante<\/a>, e disponibilizar\u00e1 ela nas regras.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" src=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/custom-promoquote.jpg\" alt=\"Promo\u00e7\u00e3o personalizada adicionada (atributo personalizado de promo\u00e7\u00e3o)\" class=\"wp-image-3856\" width=\"345\" height=\"124\" srcset=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/custom-promoquote.jpg 648w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/custom-promoquote-250x90.jpg 250w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/custom-promoquote-500x179.jpg 500w, https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/custom-promoquote-120x43.jpg 120w\" sizes=\"(max-width: 345px) 100vw, 345px\" \/><\/figure>\n\n\n\n<h3 id=\"h-passo-1-criar-um-modulo-base\">Passo 1: criar um m\u00f3dulo base<\/h3>\n\n\n\n<p>O primeiro passo \u00e9 <a href=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/desenvolvimento-m2\/como-criar-um-modulo-para-magento-2\/\">criar um m\u00f3dulo base para Magento 2.<\/a> Se voc\u00ea n\u00e3o sabe como fazer isso, leia o artigo mencionado ou fa\u00e7a meu <a href=\"https:\/\/www.magenteiro.com\/magento2?utm_source=magenteiro&amp;utm_medium=blog&amp;utm_campaign=customPromo\">curso de cria\u00e7\u00e3o de m\u00f3dulos para Magento 2<\/a>.<\/p>\n\n\n\n<p>Para o exemplo abaixo, criarei um m\u00f3dulo chamado <code>Magenteiro_IpCountryCartRule<\/code>. Todos os caminhos abaixo se referenciam \u00e0 pasta raiz do m\u00f3dulo criado.<\/p>\n\n\n\n<h3 id=\"h-passo-2-implemente-a-condicao\">Passo 2: implemente a condi\u00e7\u00e3o<\/h3>\n\n\n\n<p>Para implementar uma condi\u00e7\u00e3o personalizada, n\u00f3s estendemos a classe <code>Magento\\Rule\\Model\\Condition\\AbstractCondition<\/code> e implementamos alguns de seus m\u00e9todos. Veja no exemplo:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"Model\/Rule\/Condition\/IpCountry.php\" data-enlighter-group=\"mm2\">&lt;?php\ndeclare(strict_types=1);\n\nnamespace Magenteiro\\IpCountryCartRule\\Model\\Rule\\Condition;\n\nuse Magento\\Rule\\Model\\Condition\\AbstractCondition;\n\nclass IpCountry extends AbstractCondition\n{\n    \/** @var \\Magento\\Checkout\\Model\\Session  *\/\n    protected $_checkoutSession;\n\n    public function __construct(\n        \\Magento\\Rule\\Model\\Condition\\Context $context,\n        \\Magento\\Checkout\\Model\\Session $checkoutSession,\n        array $data = []\n    ) {\n        parent::__construct($context, $data);\n        $this->_checkoutSession = $checkoutSession;\n    }\n\n    public function loadAttributeOptions()\n    {\n        $this->setAttributeOption([\n            'ipcountry' => __('User Country by Ip')\n        ]);\n\n        return $this;\n    }\n\n    public function getInputType()\n    {\n        return 'select';  \/\/ tipo de entrada do admin\n    }\n\n    public function getValueElementType()\n    {\n        return 'text';\n    }\n\n    public function validate(\\Magento\\Framework\\Model\\AbstractModel $model)\n    {\n        $ipCountry = $_SERVER['HTTP_CF_IPCOUNTRY'] ?? null;\n        $model->setData('ipcountry', $ipCountry);  \/\/ valor a ser validado\n\n        return parent::validate($model); \/\/verifica se valor a ser validado \u00e9 o mesmo configurado na regra e retorna true se a regra tem que ser aplicada\n    }\n}<\/pre>\n\n\n\n<h3 id=\"h-passo-3-criacao-de-um-observer\">Passo 3: Cria\u00e7\u00e3o de um Observer<\/h3>\n\n\n\n<p>Usaremos um Observer para o evento <code>salesrule_rule_condition_combine<\/code> que \u00e9 disparado em <code>Magento\\SalesRule\\Model\\Rule\\Condition\\Combine::getNewChildSelectOptions<\/code>. Fazemos isso para adicionar a op\u00e7\u00e3o que acabamos de criar \u00e0 lista de atributos dispon\u00edveis na cria\u00e7\u00e3o de regras promocionais.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"xml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"etc\/events.xml\" data-enlighter-group=\"mm3\">&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?>\n&lt;config xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"urn:magento:framework:Event\/etc\/events.xsd\">\n    &lt;event name=\"salesrule_rule_condition_combine\">\n        &lt;observer name=\"magenteiro_useripcountry\" instance=\"Magenteiro\\IpCountryCartRule\\Observer\\UserIpCountry\"\/>\n    &lt;\/event>\n&lt;\/config><\/pre>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"Observer\/UserIpCountry.php\" data-enlighter-group=\"mm4\">&lt;?php\ndeclare(strict_types=1);\n\nnamespace Magenteiro\\IpCountryCartRule\\Observer;\n\nuse Magento\\Framework\\Event\\ObserverInterface;\n\nclass UserIpCountry implements ObserverInterface\n{\n    public function execute(\\Magento\\Framework\\Event\\Observer $observer)\n    {\n        $additional = $observer->getAdditional();\n        $conditions = (array) $additional->getConditions();\n\n        $conditions = array_merge_recursive($conditions, [\n            $this->getCustomerCountryCondition()\n        ]);\n\n        $additional->setConditions($conditions);\n        return $this;\n    }\n\n    private function getCustomerCountryCondition()\n    {\n        return [\n            'label'=> __('User Country (by Ip)'),\n            'value'=> \\Magenteiro\\IpCountryCartRule\\Model\\Rule\\Condition\\IpCountry::class\n        ];\n    }\n}<\/pre>\n\n\n\n<h3 id=\"h-passo-4-injete-o-argumento-data-na-classe-da-condicao\">Passo 4: Injete o argumento $data na classe da condi\u00e7\u00e3o<\/h3>\n\n\n\n<p>Por fim, <a href=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/dependency-injection-no-magento2\/\" title=\"Entenda como inje\u00e7\u00e3o de depend\u00eancias funciona no Magento\">injete a propriedade<\/a> <code>form_name<\/code> no array <code>$data<\/code> que \u00e9 passado para a classe que criamos.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"etc\/di.xml\" data-enlighter-group=\"mm5\">&lt;?xml version=\"1.0\"?>\n&lt;config xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"urn:magento:framework:ObjectManager\/etc\/config.xsd\">\n    &lt;type name=\"Magenteiro\\IpCountryCartRule\\Model\\Rule\\Condition\\IpCountry\">\n        &lt;arguments>\n            &lt;argument name=\"data\" xsi:type=\"array\">\n                &lt;item name=\"form_name\" xsi:type=\"string\">sales_rule_form&lt;\/item>\n            &lt;\/argument>\n        &lt;\/arguments>\n    &lt;\/type>\n&lt;\/config><\/pre>\n\n\n\n<p>Pronto! Basta ativar o m\u00f3dulo, limpar os caches e voc\u00ea ter\u00e1 uma nova propriedade promocional para utilizar em sua loja.<\/p>\n\n\n\n<p>Se preferir, baixe o m\u00f3dulo final preenchendo o formul\u00e1rio abaixo.<\/p>\n\n\n\n<script type=\"text\/javascript\" src=\"\/\/mkt.magenteiro.com\/form\/generate.js?id=65\"><\/script>\n\n\n\n<p>E se voc\u00ea gostou deste artigo, deixe um coment\u00e1rio abaixo. Fique \u00e0 vontade para sugerir outros ou mesmo <a href=\"https:\/\/magenteiro.com\/contato\">escrever o pr\u00f3ximo<\/a>.<\/p>\n\n\n\n<p>Por fim, caso precise veja este <a href=\"https:\/\/magecomp.com\/blog\/create-custom-sales-rule-condition-magento-2\/\" target=\"_blank\" rel=\"noreferrer noopener\">outro exemplo de cria\u00e7\u00e3o de atributos promocionais<\/a> (em Ingl\u00eas).<\/p>\n","protected":false},"excerpt":{"rendered":"Neste tutorial veremos como criar uma condi\u00e7\u00e3o de promo\u00e7\u00e3o personalizada no Magento. Como sabemos, o Magento possui diversos tipos de [&hellip;]","protected":false},"author":1,"featured_media":3858,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[27,25],"tags":[118,3,112,41,37,60],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v19.0 (Yoast SEO v19.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o<\/title>\n<meta name=\"description\" content=\"Veja como criar um atributo personalizado que pode ser usado em promo\u00e7\u00f5es de carrinho no Magento 2. Um tutorial simples e r\u00e1pido.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o\" \/>\n<meta property=\"og:description\" content=\"Veja como criar um atributo personalizado que pode ser usado em promo\u00e7\u00f5es de carrinho no Magento 2. Um tutorial simples e r\u00e1pido.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\" \/>\n<meta property=\"og:site_name\" content=\"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/magenteiro\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-20T03:05:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-20T01:01:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/atributo-de-promocao-carrinho-opt.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Ricardo Martins\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@magenteiro\" \/>\n<meta name=\"twitter:site\" content=\"@magenteiro\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ricardo Martins\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#organization\",\"name\":\"Magenteiro\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/\",\"sameAs\":[\"https:\/\/www.instagram.com\/magenteiro\",\"https:\/\/www.linkedin.com\/company\/magenteiro\",\"https:\/\/www.youtube.com\/magenteiro\",\"https:\/\/facebook.com\/magenteiro\",\"https:\/\/twitter.com\/magenteiro\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png\",\"contentUrl\":\"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png\",\"width\":787,\"height\":149,\"caption\":\"Magenteiro\"},\"image\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#website\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/\",\"name\":\"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1\",\"description\":\"Artigos t\u00e9cnicos, tutoriais e muitos v\u00eddeos e cursos sobre Magento. Aqui voc\u00ea encontra dicas para lojistas e desenvolvedores feitos por quem entende do assunto.\",\"publisher\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.magenteiro.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\",\"url\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\",\"name\":\"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o\",\"isPartOf\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#website\"},\"datePublished\":\"2022-09-20T03:05:00+00:00\",\"dateModified\":\"2022-09-20T01:01:59+00:00\",\"description\":\"Veja como criar um atributo personalizado que pode ser usado em promo\u00e7\u00f5es de carrinho no Magento 2. Um tutorial simples e r\u00e1pido.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.magenteiro.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o\"}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\"},\"author\":{\"name\":\"Ricardo Martins\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150\"},\"headline\":\"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o\",\"datePublished\":\"2022-09-20T03:05:00+00:00\",\"dateModified\":\"2022-09-20T01:01:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/\"},\"wordCount\":437,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#organization\"},\"keywords\":[\"Avan\u00e7ado\",\"desenvolvimento\",\"freebies\",\"Magento 2\",\"m\u00f3dulos\",\"Tutoriais Magento\"],\"articleSection\":[\"Desenvolvimento\",\"Magento 2\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150\",\"name\":\"Ricardo Martins\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g\",\"caption\":\"Ricardo Martins\"},\"description\":\"\u00c9 desenvolvedor web h\u00e1 16 anos e um dos primeiros certificados pela Magento no Brasil. Instrutor de mais de 11 cursos Magento (os principais no magenteiro.com\/cursos) com mais de 14 mil alunos de 105 pa\u00edses, \u00e9 tamb\u00e9m criador do m\u00f3dulo PagSeguro Transparente, usado em mais de 12 mil lojas.\",\"sameAs\":[\"https:\/\/www.magenteiro.com\/\"],\"url\":\"https:\/\/www.magenteiro.com\/blog\/author\/ricardomartins\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o","description":"Veja como criar um atributo personalizado que pode ser usado em promo\u00e7\u00f5es de carrinho no Magento 2. Um tutorial simples e r\u00e1pido.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/","og_locale":"pt_BR","og_type":"article","og_title":"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o","og_description":"Veja como criar um atributo personalizado que pode ser usado em promo\u00e7\u00f5es de carrinho no Magento 2. Um tutorial simples e r\u00e1pido.","og_url":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/","og_site_name":"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1","article_publisher":"https:\/\/facebook.com\/magenteiro","article_published_time":"2022-09-20T03:05:00+00:00","article_modified_time":"2022-09-20T01:01:59+00:00","og_image":[{"width":960,"height":480,"url":"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2022\/09\/atributo-de-promocao-carrinho-opt.jpg","type":"image\/jpeg"}],"author":"Ricardo Martins","twitter_card":"summary_large_image","twitter_creator":"@magenteiro","twitter_site":"@magenteiro","twitter_misc":{"Written by":"Ricardo Martins","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/www.magenteiro.com\/blog\/#organization","name":"Magenteiro","url":"https:\/\/www.magenteiro.com\/blog\/","sameAs":["https:\/\/www.instagram.com\/magenteiro","https:\/\/www.linkedin.com\/company\/magenteiro","https:\/\/www.youtube.com\/magenteiro","https:\/\/facebook.com\/magenteiro","https:\/\/twitter.com\/magenteiro"],"logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png","contentUrl":"https:\/\/www.magenteiro.com\/blog\/wp-content\/uploads\/2017\/04\/logo-white.png","width":787,"height":149,"caption":"Magenteiro"},"image":{"@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"WebSite","@id":"https:\/\/www.magenteiro.com\/blog\/#website","url":"https:\/\/www.magenteiro.com\/blog\/","name":"Magenteiro | V\u00eddeos, Artigos, e Cursos Magento 2 e Magento 1","description":"Artigos t\u00e9cnicos, tutoriais e muitos v\u00eddeos e cursos sobre Magento. Aqui voc\u00ea encontra dicas para lojistas e desenvolvedores feitos por quem entende do assunto.","publisher":{"@id":"https:\/\/www.magenteiro.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.magenteiro.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/","url":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/","name":"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o","isPartOf":{"@id":"https:\/\/www.magenteiro.com\/blog\/#website"},"datePublished":"2022-09-20T03:05:00+00:00","dateModified":"2022-09-20T01:01:59+00:00","description":"Veja como criar um atributo personalizado que pode ser usado em promo\u00e7\u00f5es de carrinho no Magento 2. Um tutorial simples e r\u00e1pido.","breadcrumb":{"@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.magenteiro.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o"}]},{"@type":"Article","@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#article","isPartOf":{"@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/"},"author":{"name":"Ricardo Martins","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150"},"headline":"Promo\u00e7\u00e3o personalizada: como criar um atributo de promo\u00e7\u00e3o","datePublished":"2022-09-20T03:05:00+00:00","dateModified":"2022-09-20T01:01:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/"},"wordCount":437,"commentCount":0,"publisher":{"@id":"https:\/\/www.magenteiro.com\/blog\/#organization"},"keywords":["Avan\u00e7ado","desenvolvimento","freebies","Magento 2","m\u00f3dulos","Tutoriais Magento"],"articleSection":["Desenvolvimento","Magento 2"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.magenteiro.com\/blog\/magento-2\/atributo-de-promocao-personalizado\/#respond"]}]},{"@type":"Person","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/e90c4bb268e5f2dad10d7c9760d4f150","name":"Ricardo Martins","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.magenteiro.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ae5800c87c4e0f6a4a6b7a3d66aae138?s=96&d=mm&r=g","caption":"Ricardo Martins"},"description":"\u00c9 desenvolvedor web h\u00e1 16 anos e um dos primeiros certificados pela Magento no Brasil. Instrutor de mais de 11 cursos Magento (os principais no magenteiro.com\/cursos) com mais de 14 mil alunos de 105 pa\u00edses, \u00e9 tamb\u00e9m criador do m\u00f3dulo PagSeguro Transparente, usado em mais de 12 mil lojas.","sameAs":["https:\/\/www.magenteiro.com\/"],"url":"https:\/\/www.magenteiro.com\/blog\/author\/ricardomartins\/"}]}},"_links":{"self":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts\/3854"}],"collection":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/comments?post=3854"}],"version-history":[{"count":5,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts\/3854\/revisions"}],"predecessor-version":[{"id":3874,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/posts\/3854\/revisions\/3874"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/media\/3858"}],"wp:attachment":[{"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/media?parent=3854"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/categories?post=3854"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.magenteiro.com\/blog\/wp-json\/wp\/v2\/tags?post=3854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}