Magento 2 catalog_product_get_final_price event not working for configurable product












1















I have to set the product price to a custom value depends up on the customer. So I have written an event catalog_product_get_final_price and in the observer I have set the custom price for the product. But this is working only for "Simple Product" (visibility both). When I view the configurable product nothing is happened. Even I have write a die() in the observer and it is working when I view the Simple product but not for the configurable product. That means when I view the configurable product, the event is not triggering.



How can I set the simple product's price to a custom value using event? I need this for the "listing" and "view page"










share|improve this question














bumped to the homepage by Community 21 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.











  • 1





    Show your observer code what you have tried?

    – Priyank
    May 25 '17 at 5:27
















1















I have to set the product price to a custom value depends up on the customer. So I have written an event catalog_product_get_final_price and in the observer I have set the custom price for the product. But this is working only for "Simple Product" (visibility both). When I view the configurable product nothing is happened. Even I have write a die() in the observer and it is working when I view the Simple product but not for the configurable product. That means when I view the configurable product, the event is not triggering.



How can I set the simple product's price to a custom value using event? I need this for the "listing" and "view page"










share|improve this question














bumped to the homepage by Community 21 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.











  • 1





    Show your observer code what you have tried?

    – Priyank
    May 25 '17 at 5:27














1












1








1


1






I have to set the product price to a custom value depends up on the customer. So I have written an event catalog_product_get_final_price and in the observer I have set the custom price for the product. But this is working only for "Simple Product" (visibility both). When I view the configurable product nothing is happened. Even I have write a die() in the observer and it is working when I view the Simple product but not for the configurable product. That means when I view the configurable product, the event is not triggering.



How can I set the simple product's price to a custom value using event? I need this for the "listing" and "view page"










share|improve this question














I have to set the product price to a custom value depends up on the customer. So I have written an event catalog_product_get_final_price and in the observer I have set the custom price for the product. But this is working only for "Simple Product" (visibility both). When I view the configurable product nothing is happened. Even I have write a die() in the observer and it is working when I view the Simple product but not for the configurable product. That means when I view the configurable product, the event is not triggering.



How can I set the simple product's price to a custom value using event? I need this for the "listing" and "view page"







magento2






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Jan 6 '17 at 10:14









Varun JyothiVarun Jyothi

10018




10018





bumped to the homepage by Community 21 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







bumped to the homepage by Community 21 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.










  • 1





    Show your observer code what you have tried?

    – Priyank
    May 25 '17 at 5:27














  • 1





    Show your observer code what you have tried?

    – Priyank
    May 25 '17 at 5:27








1




1





Show your observer code what you have tried?

– Priyank
May 25 '17 at 5:27





Show your observer code what you have tried?

– Priyank
May 25 '17 at 5:27










1 Answer
1






active

oldest

votes


















0














First, you should tried your event on a default magento Instance.



If it will work then there might be some other module that have overridden final price using plugin, or event.



if it won't work on default magento then there probanly are some issues in your observer code.



Observer.code should like this:



<?php

namespace [Vendorname][Modulename]Observer;

use MagentoFrameworkEventObserverInterface;
use MagentoFrameworkEventObserver as EventObserver;

class ProcesschangeFinalPriceObserver implements ObserverInterface
{


public function execute(MagentoFrameworkEventObserver $observer)
{
$product = $observer->getEvent()->getProduct();
$pId = $product->getId();
$storeId = $product->getStoreId();
$finalPrice = 100;
$product->setPrice($finalPrice);
$product->setFinalPrice($finalPrice); // set final price here
return $this;
}
}





share|improve this answer


























  • I have done as mention but it is not working

    – zed Blackbeard
    Nov 16 '17 at 11:50











  • It is working fine for simple product not for configurable products

    – zed Blackbeard
    Nov 16 '17 at 12:52











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "479"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f153498%2fmagento-2-catalog-product-get-final-price-event-not-working-for-configurable-pro%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














First, you should tried your event on a default magento Instance.



If it will work then there might be some other module that have overridden final price using plugin, or event.



if it won't work on default magento then there probanly are some issues in your observer code.



Observer.code should like this:



<?php

namespace [Vendorname][Modulename]Observer;

use MagentoFrameworkEventObserverInterface;
use MagentoFrameworkEventObserver as EventObserver;

class ProcesschangeFinalPriceObserver implements ObserverInterface
{


public function execute(MagentoFrameworkEventObserver $observer)
{
$product = $observer->getEvent()->getProduct();
$pId = $product->getId();
$storeId = $product->getStoreId();
$finalPrice = 100;
$product->setPrice($finalPrice);
$product->setFinalPrice($finalPrice); // set final price here
return $this;
}
}





share|improve this answer


























  • I have done as mention but it is not working

    – zed Blackbeard
    Nov 16 '17 at 11:50











  • It is working fine for simple product not for configurable products

    – zed Blackbeard
    Nov 16 '17 at 12:52
















0














First, you should tried your event on a default magento Instance.



If it will work then there might be some other module that have overridden final price using plugin, or event.



if it won't work on default magento then there probanly are some issues in your observer code.



Observer.code should like this:



<?php

namespace [Vendorname][Modulename]Observer;

use MagentoFrameworkEventObserverInterface;
use MagentoFrameworkEventObserver as EventObserver;

class ProcesschangeFinalPriceObserver implements ObserverInterface
{


public function execute(MagentoFrameworkEventObserver $observer)
{
$product = $observer->getEvent()->getProduct();
$pId = $product->getId();
$storeId = $product->getStoreId();
$finalPrice = 100;
$product->setPrice($finalPrice);
$product->setFinalPrice($finalPrice); // set final price here
return $this;
}
}





share|improve this answer


























  • I have done as mention but it is not working

    – zed Blackbeard
    Nov 16 '17 at 11:50











  • It is working fine for simple product not for configurable products

    – zed Blackbeard
    Nov 16 '17 at 12:52














0












0








0







First, you should tried your event on a default magento Instance.



If it will work then there might be some other module that have overridden final price using plugin, or event.



if it won't work on default magento then there probanly are some issues in your observer code.



Observer.code should like this:



<?php

namespace [Vendorname][Modulename]Observer;

use MagentoFrameworkEventObserverInterface;
use MagentoFrameworkEventObserver as EventObserver;

class ProcesschangeFinalPriceObserver implements ObserverInterface
{


public function execute(MagentoFrameworkEventObserver $observer)
{
$product = $observer->getEvent()->getProduct();
$pId = $product->getId();
$storeId = $product->getStoreId();
$finalPrice = 100;
$product->setPrice($finalPrice);
$product->setFinalPrice($finalPrice); // set final price here
return $this;
}
}





share|improve this answer















First, you should tried your event on a default magento Instance.



If it will work then there might be some other module that have overridden final price using plugin, or event.



if it won't work on default magento then there probanly are some issues in your observer code.



Observer.code should like this:



<?php

namespace [Vendorname][Modulename]Observer;

use MagentoFrameworkEventObserverInterface;
use MagentoFrameworkEventObserver as EventObserver;

class ProcesschangeFinalPriceObserver implements ObserverInterface
{


public function execute(MagentoFrameworkEventObserver $observer)
{
$product = $observer->getEvent()->getProduct();
$pId = $product->getId();
$storeId = $product->getStoreId();
$finalPrice = 100;
$product->setPrice($finalPrice);
$product->setFinalPrice($finalPrice); // set final price here
return $this;
}
}






share|improve this answer














share|improve this answer



share|improve this answer








edited Aug 20 '17 at 8:08









Zefiryn

4,59321727




4,59321727










answered May 25 '17 at 16:13









Amit BeraAmit Bera

58.9k1575175




58.9k1575175













  • I have done as mention but it is not working

    – zed Blackbeard
    Nov 16 '17 at 11:50











  • It is working fine for simple product not for configurable products

    – zed Blackbeard
    Nov 16 '17 at 12:52



















  • I have done as mention but it is not working

    – zed Blackbeard
    Nov 16 '17 at 11:50











  • It is working fine for simple product not for configurable products

    – zed Blackbeard
    Nov 16 '17 at 12:52

















I have done as mention but it is not working

– zed Blackbeard
Nov 16 '17 at 11:50





I have done as mention but it is not working

– zed Blackbeard
Nov 16 '17 at 11:50













It is working fine for simple product not for configurable products

– zed Blackbeard
Nov 16 '17 at 12:52





It is working fine for simple product not for configurable products

– zed Blackbeard
Nov 16 '17 at 12:52


















draft saved

draft discarded




















































Thanks for contributing an answer to Magento Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f153498%2fmagento-2-catalog-product-get-final-price-event-not-working-for-configurable-pro%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

What other Star Trek series did the main TNG cast show up in?

Berlina muro

Berlina aerponto