It may well be that our online catalogue is not updated yet. We have a vast network of ingredients, our supply chain team will be happy to entertain any ingrendient enquiry.
One of the many perks of Magento 2 is the variety of products it allows you to create. Yet, Magento 2 bundle products definitely stand out. It's a unique since it allows customers to customize product attributes available in a bundle.
Many of you would find a huge similarity between bundle and and there is some. However, these two types of products still have some differences you should know about.
If all these concepts confuse you a bit, you've landed on the right page. Today you'll not only learn more details about Magento bundle products but find out how to create them in Magento 2.
Difference Between Magento 2 Bundle Product and Grouped Products
When buying grouped products a customer can remove or add some items to the set (group), but not choose any product option. Magento 2 bundle products work the other way around. Besides, they consist of simple and .
e.g. If you have a grouped product that consists of a sports bag, uniform, and sneakers, customers can easily remove one ofihor
No one likes to see their website broken during the since it scares off the potential customers and causes them to bounce. Not exactly the prospective successful Magento 2 store owners look for.
Fortunately, there is the extension that fixes this and reduces the downtime to zero. It allows you to run the deployment commands with no website breakage. Speaking of which, here is the list of the deployment commands you have to run to reduce the downtime to ZERO.In order to redeploy Magento completely, you have to run
bin/magento magefan:zero-downtime:deploy
If you only want to deploy dependency injection (bin/magento setup:di:compile), then use
bin/magento magefan:zero-downtime:deploy -d
To run the Magento static content (bin/magento setup:static-content:deploy) use
bin/magento magefan:zero-downtime:deploy -s
In case you want to run multiple parameters script, use the following command
bin/magento magefan:zero-downtime:deploy -d -s
If you want to pull data and switch to a specificihor
is the extension that solves your problems with the 503 maintenance pages during deployment time. It prevents your website from breaking and you from losing potential customers even when running the commands. Moreover, the configuration is really simple. So let's get to it.
Zero Downtime Deployment configuration has 4 different sections: General, Instance Files and Folders, Composer and Git within which you can find different options.
Following steps to configure Magento 2 Zero Downtime Deployment extension:
General
1. Navigate to Stores > Configuration > Magefan Extensions > Zero Downtime Deployment.
2. Enable the extension.
3. Select the Static Content Deploy option. You can Deploy Only Enabled Themes or Deploy All Themes.
4. Define how many jobs you want to be processed parallelly during deployment in the Count of Jobs For Parallel Processing Of Static Content Deploy field.
5. Choose whether to Enable all Caches After Deploy since sometimes some of them can be disabled after deploymentihor
Magento 2 grouped product is one of many the platform offers. As you might know, it features a set of different related simple products to increase the chances of customers buying more items.
In this case, every can be purchased either separately or as a group. However, every item is listed as a separate product in a shopping cart.
Since Magento grouped products are relatively easy to create you'll learn all the necessary steps in this guide.
To create Magento grouped products:
1. Navigate to Catalog > Products and choose Grouped Product from the Add Products dropdown.
2. Enable the grouped product and choose the Attribute Set for it.
3. Enter the Product Name, specify the SKU, and set its Stock Status.
Note: you can't set the Price and Quantity since they are set separately for each product of the group.
4. Choose a Category Magento grouped product.
5. Set the Visibility of the grouped product.
6. Enter the date range in the Set Product as New From/To field to determine how long theihor
A configurable product is one of the many the platform offers. It's called Magento configurable product since it allows customers to "configure", choose different options, such as size, colour, or material, to buy a product.
It gives people more flexibility when shopping. No wonder it's the most popular product type in Magento, you definitely need to know how to use.
So in this guide, you'll learn more about configurable products, how they work and how to set them up in your store.
Simple vs Configurable Products: What's the Difference?
People often confuse Magento simple products with configurable ones. That's why, before we get to creating configurable products, we should make this one clear.
Although they look similar at first, simple and configurable products play different roles. Besides, they influence both customer experience and backend management in different ways.
A simple product in Magento 2 is the basic product type. It represents a single item which has its own SKU (Stockihor
Magento 2 simple products are the most basic and essential Magento products. The simple product has no variations. It is sold individually since it has a single SKU. However, it can also be purchased as a part of a , or .
Following steps to create a simple product in Magento 2:
1. Navigate to Catalog > Products and choose Simple Product from the Add Product dropdown.
2. Enable or disable a simple product.
3. Choose the Attribute Set you want this product to have. Magento provides the default attribute set. However, you are able to choose from various other options. Besides you can add a or a .
4. Set the Product Name and SKU.
5. Set the product Price.
There are cases like sales, promotions or any other kind of offers when you need to set an Advanced Pricing for a product.
e.g. you might use it to or for configuring catalog price rules
Set Special Price, a price customer will see during sales or under other conditions.
Choose the Special Price From and To Date.
Set the Cost, the priceihor
If you want to take your store to the next stage and create a store, the first thing you have to cover is localization. Providing customers with content in their local language creates a personalized experience and encourages them to stay.
The Magento 2 translate inline tool is what can help you out with this task. It is available by default and convenient to work with. You can use it for your localization tasks to ensure relevant content is displayed after customers .
Today, we'll closely explore Magento 2 inline translation and determine whether it's worth it. We'll also cover other advanced tools to enhance your translation management.
So, shall we start?
What is Magento 2 Inline Translation?
The Magento 2 translate inline tool is a default Magento localization instrument that enables translation from the frontend. You can just hover over the interface element and add its translation right on the storefront.
It works best with short text elements, such as buttons and labels, andihor
Once you assign attributes to the , each product has a unique set of characteristics. However, when you need to change that you find that Magento doesn't offer any bulk option for that. You need to change the attribute set for each product, one by one. But not if you have the .
So, today you'll learn how to bulk change attribute sets for multiple products just in seconds.
To bulk change product attribute set in Magento 2:
1. Go to Catalog > Products and check all of the products you want to change the attribute set for, or choose the Select All option.
Note: you can and then change the attribute set for all products in a specific category.
2. Select Change Attribute Set from the Actions dropdown menu and choose the attribute set you want to change a current one to.
3. Confirm that you want to Change Attribute Set for selected products.
4. Check changed product attribute sets.
If you prefer to see how to bulk change attribute set in Magento 2, check this short video.
As youihor
Although Magento enables you to create multiple , there is no option to edit their values in bulk. That's why it takes you a while to go from one product page to another and update them. But now if you know how to bulk edit product attributes in Magento.
You do not need to update any files or learn code editing here and now. All you need is — an extension that allows you to bulk edit product attributes directly from the products grid.
To bulk edit product attributes in Magento 2:
1. Go to Catalog > Products and click on one of the products you want to edit to see the editing menu.
2. Tick all products you want to update attributes for and change the attribute value in a corresponding field. Then press Apply.
3. Once you apply new values, you'll see them change as per your edits. However, for them to be saved you need to press the Save Edits button.
That's how you bulk edit product attributes in Magento 2. Just in a few clicks.
If you want to see how this actually works, check thisihor
Originally, there is no filter products by category option in Magento 2 product grid. That is a little inconvenient making your search for specific products of some category when you want to update their information. It is not a big deal when you have a thousand , but what about several thousand?
Correspondingly, the product grid category filter saves a lot of time enabling you to sort products by category in seconds. In this article, you will learn how to filter products by category in the product grid with no code updating.
You simply need the that already has this feature. But the category filter is not the only feature you get with this extension.
Follow these steps to filter products by category in Magento 2 product grid:
1. Navigate to Catalog > Products and press the Filters button.
2. Choose the Category you want to filter products by in the category filter and get all products from that category listed in the grid.
So, what now?
You have filtered the productsihor
Magento 2 blog is the best marketing tool you can use to attract more customers to your store, share some relevant information and gather loyal subscribers who strive to learn more about the experience shared in your blog posts. Content is king and it would be a crime not use it to its full extent to get more traffic.
By managing a blog on your Magento 2 store you create a community of followers. They share your idea and want to receive updates on the topics they are interested in on a regular basis.
Correspondingly, except for sharing your blog posts on social media, you need to consider emailing them to your subscribers. Having hundreds or thousands of blog subscribers it will be impossible to do it manually.
That is why in this article you are going to learn how to email your posts automatically using the Mailchimp, all-in-one Email Marketing Platform.
Before you start configuring your Magento 2 blog posts emails, you obviously need to set up an account on Mailchimp: fill out theihor
Managing a growing business can sometimes be quite challenging. However, by delegating responsibilities to different members of your team, you can make it less stressful.
Magento 2 user roles help with that. They allow you to grant users access to different sections of your backend. This not only declutters the space but also allows you to protect the admin from any unauthorised changes and improve .
So, in this guide, you will learn how to create Magento user roles and understand how to leverage them to your benefit.
What Are Magento 2 User Roles?
Magento user roles are permissions to access certain admin sections and functionality, restricted to certain admin users. They allow you to define what parts of your backend a user can view or modify.
This helps to avoid unauthorised changes, streamline the workflow, and protect sensitive data. It is important for delegating tasks, managing teams, and, of course, securing data.
However, let us give you a full picture of why the Magento user rolesihor
This year Magefan is proud to be among the Silver Sponsors of an online MageCONF that will take place on October 24, 2020.
Mageconf 2020 is a must-attend online conference that allows you to dive into the world of unique shared experience presented by Magento expert agencies, service providers and developers, learn about the latest eCommerce trends and innovations.
Register now for free. Don’t miss it!
Since Magento is a complex platform, it might be hard to cover all the sections on your own. You need to create other Magento admin users who will manage products, monitor orders and create email templates, etc.
However, you must grant each user access only to certain areas of your store to ensure high .
So today you'll learn how to create admin users in Magento and .
Magento 2: Create Admin User in the Admin
1. Go to Admin Panel > System > Permissions > All Users and press the Add New User button.
3. Fill out the new user Account Information:
Set the User Name that will be used during login, and specify the First and Last Names.
Enter the user's Email.
Create a Password, and confirm it in the Password Confirmation field.
Choose the interface for the user in the Interface Locale.
Note: we recommend choosing English since Magento has some issues in other locales. If you choose some other language make sure you of your preference.
Active new user in the This account is select box.
4ihor
In case you use one of the Amasty extensions, e.g. Amasty Layered navigation, you may face the issue of the broken blog featured images after the upload.
We have found the issue in Amasty_Shopby extensions, that breaks some other extensions using image upload functionality, including our .
Amasty_Shopby in this file:
app/code/Amasty/Shopby/etc/adminhtml/di.xml
adds the plugin to Magento\Catalog\Model\ImageUploader model.
Judging from the code in the following file:
app/code/Amasty/Shopby/Plugin/Catalog/Model/ImageUploaderPlugin.php
it looks like some fix Amasty added for Magento 2.3.4. and the issue lies in the plugin beforeMoveFileFromTmp.
The original Magento MoveFileFromTmp declaration looks like this:
public function moveFileFromTmp($imageName, $returnRelativePath = false)
and Amasty's plugin missing the second parameter $returnRelativePath:
public function beforeMoveFileFromTmp(\Magento\Catalog\Model\ImageUploader $subject, $path)
So, basically, Amasty's plugin kills the second functionihor
If you face an unexpected 301 or 302 redirect in Magento 2 and you don't know why it happens or what code causes it, you can easily find this out by temporarily editing the following files:
/vendor/magento/framework/HTTP/PhpEnvironment/Response.php
/vendor/magento/framework/Controller/Result/Redirect.php
Open Response.php and add the following line to the beginning of the setRedirect function:
var_dump($url); \Magento\Framework\Debug::backtrace(false, true, false); exit();
Example:
public function setRedirect($url, $code = 302){
var_dump($url); \Magento\Framework\Debug::backtrace(false, true, false); exit(); $this->setHeader('Location', $url, true) ->setHttpResponseCode($code); return $this;}
Now open the second Redirect.php file and add this:
var_dump($this->url); \Magento\Framework\Debug::backtrace(false, true, false); exit();
after each line containing:
$this->url =
Example:
public function setRefererUrl(){ $this->url = $this->redirect->getRefererUrl();ihor
There are situations in Magento 2 when page keeps loading and then you get 500 fatal error, memory limit, or timeout error. This is an infinite loop in the PHP code, when the same code is executed over and over again. It is related to some core Magento issues or, most likely, third party extension.
To debug an infinite loop and find the loop entrance, please follow the steps below:
1. Open the app/bootstrap.php file and add this code right after PHP open tag <?php in the next line
$_SERVER['MAGE_PROFILER'] = 'html';
2. Open the vendor/magento/framework/Profiler.php file and add this code to the beginning of "public static function start($timerName, array $tags = null)" function, e.g.
private static $firsttime = null;
public static function start($timerName, array $tags = null){ if (!self::$firsttime) { self::$firsttime = time(); } if (time() - self::$firsttime > 10) { //10 - is seconds to wait \Magento\Framework\Debug::backtrace(falseihor
In case you work with a lot of different Magento instances as a temporary project you might want to have a nice method to check debug backtrace of some function execution in Magento 2 quickly without installing or enabling additional software on the server, e.g. Xdebug.
In this case, you can use the native Magento backtrace function from \Magento\Framework\Debug class and call it whenever you need:
\Magento\Framework\Debug::backtrace(false, true, false);
As a result, you will get this nice HTML debug-backtrace:
You can also call the exit function to stop further code execution right after the backtrace.
Here is more information about the backtrace method:
/** * Prints or returns a backtrace * * @param bool $return return or print * @param bool $html output in HTML format * @param bool $withArgs add short arguments of methods * @return string|bool */ public static function backtrace($return = false, $html = true, $withArgs = true)
Additional Debug Backtraceihor
Hello there, Magento fans!Summer is hot this year the same as the extension updates we've prepared for you. Are you ready?
will work even better on different Magento instance since we’ve improved the HTML parsing for WebP conversion. Also, from now on you should face no errors during manual webp converting via bin/magento magefan:webp:convert command regardless of your Magento version.
Integrated better compatibility with other lazy load extensions and notification messages about invalid WebP PHP GD library on the extension configuration page will allow you to benefit from improved WebP extension.
Blog extension is a great contribution to your store especially if it is our we continuously work on improving. This month we’ve fixed the errors appearing on Magento 2.4.x.
Besides, datepicker won’t save wrong data if using en_US locale in the admin panel since we’ve fixed that too. If you want to track the Magento 2 Blog extension improvements you check the extension .
ihor
Reasonable pricing is one of the milestones of a successful store. Not only does it improve your revenue, but encourages customers to buy more from you. You can set up special price, or offers discounts for the entire catalogue.
However, today we want to talk more about Magento 2 customer group pricing. It allows you to set different product prices in accordance with their quantity and . Yet, if you haven't had a chance to use this feature in your store, it's time to learn how to do it properly.
In this article, you'll learn more about Magento 2 tier pricing and how to apply it to the items you offer.
Shall we start?
Want to track price changes in your store? Get and display the lowest price over a certain period of time on the front end.
What is Magento 2 Customer Group Pricing?
Magento 2 Customer Group Pricing is the Magento feature that makes it possible to set discounts based on the customer group and product quantity.
In other words, it defines lower prices for different customer groupsihor
Having your online store secure and with fewer bugs is one of the top priorities of each merchant. You can achieve it by updating Magento and .
It's a relatively easy task for the experienced developer. But updating an extension in Magento can be challenging if you perform it for the first time. So it's important to know the precise steps you have to take.
Note: the update instructions usually depend on the method used to .
Update Extension in Magento via Composer
If the extension files are located in the folder vendor/company/module-name, then the extension was installed using the composer. So you need to use the following steps:
1. Open CLI (Command Line Interface).
2. Navigate to Magento 2 root folder.
3. Run the following commands:
composer remove company/module-namecomposer require company/module-name ^x.x.x# replace x.x.x with the version you want to usephp bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deploy
Note: if you don't wantihor