how to display different description for each virtual product which was create with configurable...

How will losing mobility of one hand affect my career as a programmer?

Bob has never been a M before

Is there enough fresh water in the world to eradicate the drinking water crisis?

In Star Trek IV, why did the Bounty go back to a time when whales were already rare?

Java - What do constructor type arguments mean when placed *before* the type?

Female=gender counterpart?

Lightning Web Component - do I need to track changes for every single input field in a form

Books on the History of math research at European universities

Reply ‘no position’ while the job posting is still there (‘HiWi’ position in Germany)

Pronouncing Homer as in modern Greek

Is exact Kanji stroke length important?

Who must act to prevent Brexit on March 29th?

What will be the benefits of Brexit?

Is there a problem with hiding "forgot password" until it's needed?

Greatest common substring

Why isn't KTEX's runway designation 10/28 instead of 9/27?

What to do when my ideas aren't chosen, when I strongly disagree with the chosen solution?

A workplace installs custom certificates on personal devices, can this be used to decrypt HTTPS traffic?

Visiting the UK as unmarried couple

How to deal with or prevent idle in the test team?

Installing PowerShell on 32-bit Kali OS fails

A known event to a history junkie

For airliners, what prevents wing strikes on landing in bad weather?

Is it okay / does it make sense for another player to join a running game of Munchkin?



how to display different description for each virtual product which was create with configurable products?


Different Template for Configurable ProductsMagento group prices for simple products associated with configurable productsCreate a product with different colors (associated products) where each color shares stock with all other colorsHow to link two different products to each otherDo I have to create a new attribute set for each configurable product?Create product for each color on catalog, but all link to one configurablehow to set different prices to a magento configurable product in assoiciated product?How to handle same item with multiple prices based on condition without configurable products?Invalid entity_type specified Magento2Configurable products variants -> Show price different with color swatches (M2)













4















In Magento 2 , when we create configurable product its child product also created, we can provide different description for child products too.




> 1. How to access description of each child product on product page?
> 2. can we make it throw on change of fields , like if we changes color on product
page, so it will show description of that color child product?



Any help will thank full.










share|improve this question
















bumped to the homepage by Community 8 mins ago


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
















  • Try this bsscommerce.com/…

    – MageX
    Nov 24 '17 at 10:19
















4















In Magento 2 , when we create configurable product its child product also created, we can provide different description for child products too.




> 1. How to access description of each child product on product page?
> 2. can we make it throw on change of fields , like if we changes color on product
page, so it will show description of that color child product?



Any help will thank full.










share|improve this question
















bumped to the homepage by Community 8 mins ago


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
















  • Try this bsscommerce.com/…

    – MageX
    Nov 24 '17 at 10:19














4












4








4








In Magento 2 , when we create configurable product its child product also created, we can provide different description for child products too.




> 1. How to access description of each child product on product page?
> 2. can we make it throw on change of fields , like if we changes color on product
page, so it will show description of that color child product?



Any help will thank full.










share|improve this question
















In Magento 2 , when we create configurable product its child product also created, we can provide different description for child products too.




> 1. How to access description of each child product on product page?
> 2. can we make it throw on change of fields , like if we changes color on product
page, so it will show description of that color child product?



Any help will thank full.







magento2 product admin configurable-product






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 23 '17 at 10:29









ABHISHEK TRIPATHI

1,9721726




1,9721726










asked Nov 23 '17 at 10:24









Ganesh Ganesh

518




518





bumped to the homepage by Community 8 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 8 mins ago


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















  • Try this bsscommerce.com/…

    – MageX
    Nov 24 '17 at 10:19



















  • Try this bsscommerce.com/…

    – MageX
    Nov 24 '17 at 10:19

















Try this bsscommerce.com/…

– MageX
Nov 24 '17 at 10:19





Try this bsscommerce.com/…

– MageX
Nov 24 '17 at 10:19










1 Answer
1






active

oldest

votes


















0














I got the answer : im using magento 2.0.4



i used 'appdesignfrontendVenusthemefasonyMagento_ConfigurableProducttemplatesproductviewtypeoptionsconfigurable.phtml' file to get work done.




some small code you will need to get job work done




$objectManager = MagentoFrameworkAppObjectManager::getInstance();
$product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');
$description=[];
$_children = $product->getTypeInstance()->getUsedProducts($product);
foreach ($_children as $child){
if($child->getDescription())
{
// $description array hold each child id and description
$description[$child->getID()]=$child->getDescription();
}
}

//In case if you did't added child product description for some product so they will display main product description
$description["product"]=$product->getDescription();

//code for product option change: what was this code

$get=json_decode($block->getJsonConfig($option_txt),true);

$checkOption=[];
foreach ($get['attributes'] as $key => $value) {
if($value['code']=='color')
{
foreach ($value['options'] as $k => $v) {
$checkOption[$v['id']]=$v['products'][0];

}
}
}


//code for product option change end :



//some script to use with select option
<script type="text/javascript">

require(['jquery'],function($){
var checkOption=<?php echo json_encode($checkOption);?>;
var description=<?php echo json_encode($description);?>;
jQuery(document).ready(function() {
$("#attribute90").on('change',function(){
var id= $(this).val();
if(description[checkOption[id]])
{
//get child product description
$('div[id="product.info.description"]').html(description[checkOption[id]]);
}
else{
//if child product dont have description show , main product description
$('div[id="product.info.description"]').html(description["product"]);

}
});

});
});
</script>


full source code of my configurable.phtml file



<?php

$objectManager = MagentoFrameworkAppObjectManager::getInstance();
$product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');

$description=[];

//get all childrens
$_children = $product->getTypeInstance()->getUsedProducts($product);

foreach ($_children as $child){
if($child->getDescription())
{
$description[$child->getID()]=$child->getDescription();
}
}
$description["product"]=$product->getDescription();

?>
<?php if ($_product->isSaleable() && count($_attributes)):?>
<?php foreach ($_attributes as $_attribute):?>
<div class="field configurable required">
<label class="label" for="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>">
<span><?php $label=$block->escapeHtml($_attribute->getProductAttribute()->getStoreLabel());
echo $label;
?></span>
</label>
<div class="control">
<select name="super_attribute[<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>]"
data-validate="{required:true}"
id="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>"
class="super-attribute-select" data-placholder="<?php /* @escapeNotVerified */
echo "$label:";
?>">
<option value="">
</option>
</select>
</div>
</div>
<?php endforeach;


//code for product option change
$get=json_decode($block->getJsonConfig($option_txt),true);

$checkOption=[];
foreach ($get['attributes'] as $key => $value) {
if($value['code']=='color')
{
foreach ($value['options'] as $k => $v) {
$checkOption[$v['id']]=$v['products'][0];

}
}
}
//code for product option change end:


?>
<script type="text/x-magento-init">
{
"#product_addtocart_form": {
"configurable": {
"spConfig": <?php echo json_encode($block->getJsonConfig($option_txt)); ?>
}
}
}
</script>
<?php endif;?>


<script type="text/javascript">

require(['jquery'],function($){
var checkOption=<?php echo json_encode($checkOption);?>;
var description=<?php echo json_encode($description);?>;
jQuery(document).ready(function() {
$("#attribute90").on('change',function(){
var id= $(this).val();
if(description[checkOption[id]])
{
//get child product description
$('div[id="product.info.description"]').html(description[checkOption[id]]);
}
else{
//if child product dont have description show , main product description
$('div[id="product.info.description"]').html(description["product"]);

}
});

});
});
</script>





share|improve this answer























    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%2f202888%2fhow-to-display-different-description-for-each-virtual-product-which-was-create-w%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














    I got the answer : im using magento 2.0.4



    i used 'appdesignfrontendVenusthemefasonyMagento_ConfigurableProducttemplatesproductviewtypeoptionsconfigurable.phtml' file to get work done.




    some small code you will need to get job work done




    $objectManager = MagentoFrameworkAppObjectManager::getInstance();
    $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');
    $description=[];
    $_children = $product->getTypeInstance()->getUsedProducts($product);
    foreach ($_children as $child){
    if($child->getDescription())
    {
    // $description array hold each child id and description
    $description[$child->getID()]=$child->getDescription();
    }
    }

    //In case if you did't added child product description for some product so they will display main product description
    $description["product"]=$product->getDescription();

    //code for product option change: what was this code

    $get=json_decode($block->getJsonConfig($option_txt),true);

    $checkOption=[];
    foreach ($get['attributes'] as $key => $value) {
    if($value['code']=='color')
    {
    foreach ($value['options'] as $k => $v) {
    $checkOption[$v['id']]=$v['products'][0];

    }
    }
    }


    //code for product option change end :



    //some script to use with select option
    <script type="text/javascript">

    require(['jquery'],function($){
    var checkOption=<?php echo json_encode($checkOption);?>;
    var description=<?php echo json_encode($description);?>;
    jQuery(document).ready(function() {
    $("#attribute90").on('change',function(){
    var id= $(this).val();
    if(description[checkOption[id]])
    {
    //get child product description
    $('div[id="product.info.description"]').html(description[checkOption[id]]);
    }
    else{
    //if child product dont have description show , main product description
    $('div[id="product.info.description"]').html(description["product"]);

    }
    });

    });
    });
    </script>


    full source code of my configurable.phtml file



    <?php

    $objectManager = MagentoFrameworkAppObjectManager::getInstance();
    $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');

    $description=[];

    //get all childrens
    $_children = $product->getTypeInstance()->getUsedProducts($product);

    foreach ($_children as $child){
    if($child->getDescription())
    {
    $description[$child->getID()]=$child->getDescription();
    }
    }
    $description["product"]=$product->getDescription();

    ?>
    <?php if ($_product->isSaleable() && count($_attributes)):?>
    <?php foreach ($_attributes as $_attribute):?>
    <div class="field configurable required">
    <label class="label" for="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>">
    <span><?php $label=$block->escapeHtml($_attribute->getProductAttribute()->getStoreLabel());
    echo $label;
    ?></span>
    </label>
    <div class="control">
    <select name="super_attribute[<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>]"
    data-validate="{required:true}"
    id="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>"
    class="super-attribute-select" data-placholder="<?php /* @escapeNotVerified */
    echo "$label:";
    ?>">
    <option value="">
    </option>
    </select>
    </div>
    </div>
    <?php endforeach;


    //code for product option change
    $get=json_decode($block->getJsonConfig($option_txt),true);

    $checkOption=[];
    foreach ($get['attributes'] as $key => $value) {
    if($value['code']=='color')
    {
    foreach ($value['options'] as $k => $v) {
    $checkOption[$v['id']]=$v['products'][0];

    }
    }
    }
    //code for product option change end:


    ?>
    <script type="text/x-magento-init">
    {
    "#product_addtocart_form": {
    "configurable": {
    "spConfig": <?php echo json_encode($block->getJsonConfig($option_txt)); ?>
    }
    }
    }
    </script>
    <?php endif;?>


    <script type="text/javascript">

    require(['jquery'],function($){
    var checkOption=<?php echo json_encode($checkOption);?>;
    var description=<?php echo json_encode($description);?>;
    jQuery(document).ready(function() {
    $("#attribute90").on('change',function(){
    var id= $(this).val();
    if(description[checkOption[id]])
    {
    //get child product description
    $('div[id="product.info.description"]').html(description[checkOption[id]]);
    }
    else{
    //if child product dont have description show , main product description
    $('div[id="product.info.description"]').html(description["product"]);

    }
    });

    });
    });
    </script>





    share|improve this answer




























      0














      I got the answer : im using magento 2.0.4



      i used 'appdesignfrontendVenusthemefasonyMagento_ConfigurableProducttemplatesproductviewtypeoptionsconfigurable.phtml' file to get work done.




      some small code you will need to get job work done




      $objectManager = MagentoFrameworkAppObjectManager::getInstance();
      $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');
      $description=[];
      $_children = $product->getTypeInstance()->getUsedProducts($product);
      foreach ($_children as $child){
      if($child->getDescription())
      {
      // $description array hold each child id and description
      $description[$child->getID()]=$child->getDescription();
      }
      }

      //In case if you did't added child product description for some product so they will display main product description
      $description["product"]=$product->getDescription();

      //code for product option change: what was this code

      $get=json_decode($block->getJsonConfig($option_txt),true);

      $checkOption=[];
      foreach ($get['attributes'] as $key => $value) {
      if($value['code']=='color')
      {
      foreach ($value['options'] as $k => $v) {
      $checkOption[$v['id']]=$v['products'][0];

      }
      }
      }


      //code for product option change end :



      //some script to use with select option
      <script type="text/javascript">

      require(['jquery'],function($){
      var checkOption=<?php echo json_encode($checkOption);?>;
      var description=<?php echo json_encode($description);?>;
      jQuery(document).ready(function() {
      $("#attribute90").on('change',function(){
      var id= $(this).val();
      if(description[checkOption[id]])
      {
      //get child product description
      $('div[id="product.info.description"]').html(description[checkOption[id]]);
      }
      else{
      //if child product dont have description show , main product description
      $('div[id="product.info.description"]').html(description["product"]);

      }
      });

      });
      });
      </script>


      full source code of my configurable.phtml file



      <?php

      $objectManager = MagentoFrameworkAppObjectManager::getInstance();
      $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');

      $description=[];

      //get all childrens
      $_children = $product->getTypeInstance()->getUsedProducts($product);

      foreach ($_children as $child){
      if($child->getDescription())
      {
      $description[$child->getID()]=$child->getDescription();
      }
      }
      $description["product"]=$product->getDescription();

      ?>
      <?php if ($_product->isSaleable() && count($_attributes)):?>
      <?php foreach ($_attributes as $_attribute):?>
      <div class="field configurable required">
      <label class="label" for="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>">
      <span><?php $label=$block->escapeHtml($_attribute->getProductAttribute()->getStoreLabel());
      echo $label;
      ?></span>
      </label>
      <div class="control">
      <select name="super_attribute[<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>]"
      data-validate="{required:true}"
      id="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>"
      class="super-attribute-select" data-placholder="<?php /* @escapeNotVerified */
      echo "$label:";
      ?>">
      <option value="">
      </option>
      </select>
      </div>
      </div>
      <?php endforeach;


      //code for product option change
      $get=json_decode($block->getJsonConfig($option_txt),true);

      $checkOption=[];
      foreach ($get['attributes'] as $key => $value) {
      if($value['code']=='color')
      {
      foreach ($value['options'] as $k => $v) {
      $checkOption[$v['id']]=$v['products'][0];

      }
      }
      }
      //code for product option change end:


      ?>
      <script type="text/x-magento-init">
      {
      "#product_addtocart_form": {
      "configurable": {
      "spConfig": <?php echo json_encode($block->getJsonConfig($option_txt)); ?>
      }
      }
      }
      </script>
      <?php endif;?>


      <script type="text/javascript">

      require(['jquery'],function($){
      var checkOption=<?php echo json_encode($checkOption);?>;
      var description=<?php echo json_encode($description);?>;
      jQuery(document).ready(function() {
      $("#attribute90").on('change',function(){
      var id= $(this).val();
      if(description[checkOption[id]])
      {
      //get child product description
      $('div[id="product.info.description"]').html(description[checkOption[id]]);
      }
      else{
      //if child product dont have description show , main product description
      $('div[id="product.info.description"]').html(description["product"]);

      }
      });

      });
      });
      </script>





      share|improve this answer


























        0












        0








        0







        I got the answer : im using magento 2.0.4



        i used 'appdesignfrontendVenusthemefasonyMagento_ConfigurableProducttemplatesproductviewtypeoptionsconfigurable.phtml' file to get work done.




        some small code you will need to get job work done




        $objectManager = MagentoFrameworkAppObjectManager::getInstance();
        $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');
        $description=[];
        $_children = $product->getTypeInstance()->getUsedProducts($product);
        foreach ($_children as $child){
        if($child->getDescription())
        {
        // $description array hold each child id and description
        $description[$child->getID()]=$child->getDescription();
        }
        }

        //In case if you did't added child product description for some product so they will display main product description
        $description["product"]=$product->getDescription();

        //code for product option change: what was this code

        $get=json_decode($block->getJsonConfig($option_txt),true);

        $checkOption=[];
        foreach ($get['attributes'] as $key => $value) {
        if($value['code']=='color')
        {
        foreach ($value['options'] as $k => $v) {
        $checkOption[$v['id']]=$v['products'][0];

        }
        }
        }


        //code for product option change end :



        //some script to use with select option
        <script type="text/javascript">

        require(['jquery'],function($){
        var checkOption=<?php echo json_encode($checkOption);?>;
        var description=<?php echo json_encode($description);?>;
        jQuery(document).ready(function() {
        $("#attribute90").on('change',function(){
        var id= $(this).val();
        if(description[checkOption[id]])
        {
        //get child product description
        $('div[id="product.info.description"]').html(description[checkOption[id]]);
        }
        else{
        //if child product dont have description show , main product description
        $('div[id="product.info.description"]').html(description["product"]);

        }
        });

        });
        });
        </script>


        full source code of my configurable.phtml file



        <?php

        $objectManager = MagentoFrameworkAppObjectManager::getInstance();
        $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');

        $description=[];

        //get all childrens
        $_children = $product->getTypeInstance()->getUsedProducts($product);

        foreach ($_children as $child){
        if($child->getDescription())
        {
        $description[$child->getID()]=$child->getDescription();
        }
        }
        $description["product"]=$product->getDescription();

        ?>
        <?php if ($_product->isSaleable() && count($_attributes)):?>
        <?php foreach ($_attributes as $_attribute):?>
        <div class="field configurable required">
        <label class="label" for="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>">
        <span><?php $label=$block->escapeHtml($_attribute->getProductAttribute()->getStoreLabel());
        echo $label;
        ?></span>
        </label>
        <div class="control">
        <select name="super_attribute[<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>]"
        data-validate="{required:true}"
        id="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>"
        class="super-attribute-select" data-placholder="<?php /* @escapeNotVerified */
        echo "$label:";
        ?>">
        <option value="">
        </option>
        </select>
        </div>
        </div>
        <?php endforeach;


        //code for product option change
        $get=json_decode($block->getJsonConfig($option_txt),true);

        $checkOption=[];
        foreach ($get['attributes'] as $key => $value) {
        if($value['code']=='color')
        {
        foreach ($value['options'] as $k => $v) {
        $checkOption[$v['id']]=$v['products'][0];

        }
        }
        }
        //code for product option change end:


        ?>
        <script type="text/x-magento-init">
        {
        "#product_addtocart_form": {
        "configurable": {
        "spConfig": <?php echo json_encode($block->getJsonConfig($option_txt)); ?>
        }
        }
        }
        </script>
        <?php endif;?>


        <script type="text/javascript">

        require(['jquery'],function($){
        var checkOption=<?php echo json_encode($checkOption);?>;
        var description=<?php echo json_encode($description);?>;
        jQuery(document).ready(function() {
        $("#attribute90").on('change',function(){
        var id= $(this).val();
        if(description[checkOption[id]])
        {
        //get child product description
        $('div[id="product.info.description"]').html(description[checkOption[id]]);
        }
        else{
        //if child product dont have description show , main product description
        $('div[id="product.info.description"]').html(description["product"]);

        }
        });

        });
        });
        </script>





        share|improve this answer













        I got the answer : im using magento 2.0.4



        i used 'appdesignfrontendVenusthemefasonyMagento_ConfigurableProducttemplatesproductviewtypeoptionsconfigurable.phtml' file to get work done.




        some small code you will need to get job work done




        $objectManager = MagentoFrameworkAppObjectManager::getInstance();
        $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');
        $description=[];
        $_children = $product->getTypeInstance()->getUsedProducts($product);
        foreach ($_children as $child){
        if($child->getDescription())
        {
        // $description array hold each child id and description
        $description[$child->getID()]=$child->getDescription();
        }
        }

        //In case if you did't added child product description for some product so they will display main product description
        $description["product"]=$product->getDescription();

        //code for product option change: what was this code

        $get=json_decode($block->getJsonConfig($option_txt),true);

        $checkOption=[];
        foreach ($get['attributes'] as $key => $value) {
        if($value['code']=='color')
        {
        foreach ($value['options'] as $k => $v) {
        $checkOption[$v['id']]=$v['products'][0];

        }
        }
        }


        //code for product option change end :



        //some script to use with select option
        <script type="text/javascript">

        require(['jquery'],function($){
        var checkOption=<?php echo json_encode($checkOption);?>;
        var description=<?php echo json_encode($description);?>;
        jQuery(document).ready(function() {
        $("#attribute90").on('change',function(){
        var id= $(this).val();
        if(description[checkOption[id]])
        {
        //get child product description
        $('div[id="product.info.description"]').html(description[checkOption[id]]);
        }
        else{
        //if child product dont have description show , main product description
        $('div[id="product.info.description"]').html(description["product"]);

        }
        });

        });
        });
        </script>


        full source code of my configurable.phtml file



        <?php

        $objectManager = MagentoFrameworkAppObjectManager::getInstance();
        $product = $objectManager->get('MagentoFrameworkRegistry')->registry('current_product');

        $description=[];

        //get all childrens
        $_children = $product->getTypeInstance()->getUsedProducts($product);

        foreach ($_children as $child){
        if($child->getDescription())
        {
        $description[$child->getID()]=$child->getDescription();
        }
        }
        $description["product"]=$product->getDescription();

        ?>
        <?php if ($_product->isSaleable() && count($_attributes)):?>
        <?php foreach ($_attributes as $_attribute):?>
        <div class="field configurable required">
        <label class="label" for="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>">
        <span><?php $label=$block->escapeHtml($_attribute->getProductAttribute()->getStoreLabel());
        echo $label;
        ?></span>
        </label>
        <div class="control">
        <select name="super_attribute[<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>]"
        data-validate="{required:true}"
        id="attribute<?php /* @escapeNotVerified */ echo $_attribute->getAttributeId() ?>"
        class="super-attribute-select" data-placholder="<?php /* @escapeNotVerified */
        echo "$label:";
        ?>">
        <option value="">
        </option>
        </select>
        </div>
        </div>
        <?php endforeach;


        //code for product option change
        $get=json_decode($block->getJsonConfig($option_txt),true);

        $checkOption=[];
        foreach ($get['attributes'] as $key => $value) {
        if($value['code']=='color')
        {
        foreach ($value['options'] as $k => $v) {
        $checkOption[$v['id']]=$v['products'][0];

        }
        }
        }
        //code for product option change end:


        ?>
        <script type="text/x-magento-init">
        {
        "#product_addtocart_form": {
        "configurable": {
        "spConfig": <?php echo json_encode($block->getJsonConfig($option_txt)); ?>
        }
        }
        }
        </script>
        <?php endif;?>


        <script type="text/javascript">

        require(['jquery'],function($){
        var checkOption=<?php echo json_encode($checkOption);?>;
        var description=<?php echo json_encode($description);?>;
        jQuery(document).ready(function() {
        $("#attribute90").on('change',function(){
        var id= $(this).val();
        if(description[checkOption[id]])
        {
        //get child product description
        $('div[id="product.info.description"]').html(description[checkOption[id]]);
        }
        else{
        //if child product dont have description show , main product description
        $('div[id="product.info.description"]').html(description["product"]);

        }
        });

        });
        });
        </script>






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 24 '17 at 12:43









        Ganesh Ganesh

        518




        518






























            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%2f202888%2fhow-to-display-different-description-for-each-virtual-product-which-was-create-w%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

            “%fieldName is a required field.”, in Magento2 REST API Call for GET Method Type The Next...

            How to change City field to a dropdown in Checkout step Magento 2Magento 2 : How to change UI field(s)...

            夢乃愛華...