The current Adobe Live Search implementation doesn't support custom content/layout of Quick Search Autocomplete results. We need more information on autocomplete results like regular price, discount, label etc.
... View more
The current Adobe Live Search implementation doesn't currently support adding translations. The only current way to add translations to the Search Popover "View All" and "Suggestions" labeling is to use CSS (as provided as a temp solution by the Adobe Support team). This is not an accessible friendly approach. The desire would be to replace the text within the label. Being able to translate within the i18n CSV files where most translations are defined would be best.
... View more
See more ideas labeled with:
Create a shipping cart price rule which gives a discount and the discount amount is the same as the TAX amount. For example, if the total tax is $12 for the current customer's cart, then the shopping cart rule should add $12 discount to the cart. The business logic is, for some products, assume tax is 8%, as per government rules we can not do anything with tax and we can not give any discount in the tax. So here what we want to do is we want to provide a discount to the customer and that discount amount is the same as their current cart total.
... View more
See more ideas labeled with:
When managing attribute and attribute set data via the REST API, all the endpoints required to create a complete attribute set with attribute groups and attributes assigned to that set and those groups are present and available. However, the reverse is not true. There is an endpoint missing in retrieving all of this data for an already existing attribute set. Specifically, the attribute group that each attribute in an attribute set belongs to. Attributes for an attribute set are retrieved by set and do not contain the attribute group they are present in either. This is largely obstructive to the process of fully and bi-directionally integrating the attribute set system with an external source. In short, include the ID of the attribute group that an attribute belongs to in the returned JSON when listing attributes in an attribute set using the REST API. (Or otherwise include an endpoint that would make this information available).
... View more
Currently in 2.4+, the process of applying category rules requires a manual save of each category. This is extremely time consuming for a store that has a lot of categories and also could severely impact the cache if done during business hours. These rules should be applied automatically or at least on a schedule. A bonus would be to do this in a cache-preserving way.
... View more
See more ideas labeled with:
Hi Team We would request to Please update all three-parameter as per your suggestion and set the maximum limit for them. process_control_timeout pm.process_idle_timeout request_terminate_timeout Thank you.
... View more
See more ideas labeled with:
The ability to change the backorder message that is public facing when a visitor is not logging into the site should be a standard out of the box capability. You can change the message for logged in customer's but not for guest visitors per IsProductSalableConditionBackOrderNotifyCustomerCondition.php
... View more
See more ideas labeled with:
The issue that in Mini-cart item display single (Unit) item price , as native Magento behaviour . Want to display item price row total (Unit Price x Qty ) in mini-cart when change the qty of the product it gets added into cart . Please check below screen-short. https://www.awesomescreenshot.com/image/24827408?key=7fb4dcbf111bb8f3ec10ea9a00a4f971
... View more
See more ideas labeled with:
Hi Team, I tried something as below. So I have enabled the reward points for the order placement process. Right now the reward points are redeemable on the full amount of the order (Grand Total) and I want to allow redeem reward points only on the Subtotal, not on Grand Total. So here my goal is to customers should pay shipping charges on order time and for that, I have modified the below file. File: vendor/magento/module-reward/Model/Total/Quote/Reward.php (File overridden in the custom plugin) public function collect(
\Magento\Quote\Model\Quote $quote,
\Magento\Quote\Api\Data\ShippingAssignmentInterface $shippingAssignment,
\Magento\Quote\Model\Quote\Address\Total $total
) {
if (!$this->_rewardData->isEnabledOnFront($quote->getStore()->getWebsiteId())) {
return $this;
}
$total->setRewardPointsBalance(0)->setRewardCurrencyAmount(0)->setBaseRewardCurrencyAmount(0);
if ($total->getBaseSubtotal() >= 0 && $quote->getCustomer()->getId() && $quote->getUseRewardPoints()) {
/* @var $reward \Magento\Reward\Model\Reward */
$reward = $quote->getRewardInstance();
if (!$reward || !$reward->getId()) {
$customer = $quote->getCustomer();
$reward = $this->_rewardFactory->create()->setCustomer($customer);
$reward->setCustomerId($quote->getCustomer()->getId());
$reward->setWebsiteId($quote->getStore()->getWebsiteId());
$reward->loadByCustomer();
}
$pointsLeft = $reward->getPointsBalance() - $quote->getRewardPointsBalance();
$rewardCurrencyAmountLeft = $this->priceCurrency->convert(
$reward->getCurrencyAmount(),
$quote->getStore()
) - $quote->getRewardCurrencyAmount();
$baseRewardCurrencyAmountLeft = $reward->getCurrencyAmount() - $quote->getBaseRewardCurrencyAmount();
if ($baseRewardCurrencyAmountLeft >= $total->getBaseSubtotal()) {
$pointsBalanceUsed = $reward->getPointsEquivalent($total->getBaseSubtotal());
$pointsCurrencyAmountUsed = $total->getSubtotal();
$basePointsCurrencyAmountUsed = $total->getBaseSubtotal();
$total->setGrandTotal($total->getShippingAmount());
$total->setBaseGrandTotal($total->getBaseShippingAmount());
} else {
$pointsBalanceUsed = $reward->getPointsEquivalent($baseRewardCurrencyAmountLeft);
if ($pointsBalanceUsed > $pointsLeft) {
$pointsBalanceUsed = $pointsLeft;
}
$pointsCurrencyAmountUsed = $rewardCurrencyAmountLeft;
$basePointsCurrencyAmountUsed = $baseRewardCurrencyAmountLeft;
$subtotal = $total->getSubtotal() + $total->getShippingAmount();
$baseSubtotal = $total->getBaseSubtotal() + $total->getBaseShippingAmount();
$total->setGrandTotal($subtotal - $pointsCurrencyAmountUsed);
$total->setBaseGrandTotal($baseSubtotal - $basePointsCurrencyAmountUsed);
}
$quote->setRewardPointsBalance(round($quote->getRewardPointsBalance() + $pointsBalanceUsed));
$quote->setRewardCurrencyAmount($quote->getRewardCurrencyAmount() + $pointsCurrencyAmountUsed);
$quote->setBaseRewardCurrencyAmount($quote->getBaseRewardCurrencyAmount() + $basePointsCurrencyAmountUsed);
$total->setRewardPointsBalance(round($pointsBalanceUsed));
$total->setRewardCurrencyAmount($pointsCurrencyAmountUsed);
$total->setBaseRewardCurrencyAmount($basePointsCurrencyAmountUsed);
}
return $this;
} In above function I have replaced $total->getBaseGrandTotal() with $total->getBaseSubtotal() and $total->getGrandTotal() with $total->getSubtotal(). So the above code worked for me on the simple checkout but when I have tried the same thing on the multi-checkout process then it's giving me an error The requested Payment Method is not available. https://i.stack.imgur.com/tzwvv.png Note: File override is pending and Need to add one config option for reward points redeemable or not on shipping. Thanks
... View more
Dear team, At the moment without a required configuration, a single use coupon can be applied many times. Simple check to see if there is missing config: There's no "sales.rule.update.coupon.usage" consumer listed in the app/etc/env.php file. $ grep -i usage app/etc/env.php $ To fix this issue, the steps from this doc has to be implemented: https://devdocs.magento.com/guides/v2.4/config-guide/mq/manage-message-queues.html Instead of having this issue which affects many users, can this bug be fixed by adding the setup (fix) as default as a patch or added to future releases of Adobe Commerce?
... View more
If Swagger definitions for all the Magento endpoints such as Orders and Sales available it would be easy for making integrations and could be very useful for developers
... View more
Using the Magento Commerce B2B module the Company name field is currently limited to only 40 characters in the database table company_entity which can be problematic for some companies. While the Legal Company Name allows for 80 characters we still have customers complaining that they can't fit their full company name in the Company Name field as they would like. By contrast, the company field in customer_address_entity table allows for 255 characters. It would be very helpful to increase the character limit on company.company_name to allow companies with longer names to enter their name without abbreviations etc.
... View more
See more ideas labeled with:
A solution to sort attribute options, for example alphabetically, would be great. The drag & drop function does not meet our needs for the sorting. For example, if you have hundreds of colors (options) in the color attribute or brands in the brand attribute, it becomes very inefficient to use the drag & drop sorting functionality. Is there a possibility to add sorting based on option position or alphabetically for all attributes? It used to be standard in Magento 1.
... View more
See more ideas labeled with:
It would be very helpful to have a search/filter AND sorting option (by position number) available in the area "Products in Category / Visual Merchandiser". Right now there is sorting in the main view (but no filtering) and searching/filtering in the window that opens with „add product“ (but no sorting). If you have to re-sort products in a large category, say 400+, the options available are not very efficient. For example: If you want to sort a product from the back of a large category to the middle, you have to: Go to catalog > categories Click on a certain category (i.e. one with 400 or more products where you can see it best) Go to products in this category Try to move a product from a position rather in the back to a position in the middle. Here comes the difficulty. There are two options, neither of them very convenient for a big category. Option 1: Search for the new position number, then search for the product by browsing through all the 400+ products to find it. Then type in the position (the drag & drop can of course also be used, but if you want to place the 686th product to position 30 it is not very handy). Then save. Option 2: Go to "add product", search/filter by product name, remember the position number of the product (say, 686). Close the window. Go to the page with the position number the product has. Then use the position field or drag & drop to place the product. If you have to do this for more than one product it takes a lot of time. What could help tremendously is an option to filter AND sort in one step. In Magento 1 there used to be the option to add products, search/filter AND sort at the same time / in the same window. It would be very helpful if there was a sorting option within the "add product" window. Or if there was a add and search-/filter-option in the "products in this category"-section. The latter could be used (very efficiently) in Magento 1.
... View more
When you need to sell your products to multiple countries (especially in Europe), you want to have dedicated Storeviews which are fixing the complex parameters of Locales, Currency, Allowed Shipping Destination, TAX, etc. But Magento doesn't allow to funnel the Registered customers to some dedicated storeview, specially designed for matching their core parameters. And there is not extension existing currently in order to force a customer into its own dedicated storeview, at moment of login. The idea here is about bringing into Magento 2 roadmap, the ability to force a registered customer to a specific Storeview at the moment of Login, and allow Admin to manage this functionality. This is also to allow Admin to fix the Allowed countries at StoreView level (vs.only at Storelevel today), in order to force the customer to select the StoreView of its country of Residence/Registration. Such feature would be very useful for all merchants who has a market perimeter beyond one country (it would mean a lot of merchants). It would also be customer friendly and avoid Account creation errors made by the customer. If you need more details, please comment.
... View more
See more ideas labeled with:
It is not possible to increase the disk space of the build container permanently. This is required once you have more than 20 locales to be built while static content generation while the cloud deployment process, and on transfer step you will face errors like these: gzip: /app/pub/static/adminhtml/vendor/backend/fr_CH/jquery/ui-modules/resizable.js.gz: No space left on device
... This is caused due to the too low size of the build container (8Gb). The temporary solution from Magento Cloud engineers was to adjust cloud configs (cloud support has access there only) for increasing space from 8Gb to 16Gb. However, quote: this will likely be downgraded back to 8GB at some point. , because these configs are placed under a version control system and these changes are just left there as modifications. So can be rest to default state once the new version of configs/codebase of cloud configs will come in. Please add the possibility to change the build container disk space permanently. Thank you.
... View more
See more ideas labeled with:
The new Media gallery introduced in the 2.4.2x series doesn't allow you to enter a hyphen or underscore when naming a newly created folder. It displays this error when you try: "Please use only letters (a-z or A-Z) or numbers (0-9) in this field. No spaces or other characters are allowed." Steps to Reproduce: Go to Content Menu -> Media Manager Click on a folder WYSIWYG folder to expand sub folders Select a folder to create a sub folder in. e.g. "WYSIYWG" Click Create Folder button Enter in "test-folder" or "test_folder" Click Confirm Error message appears. I'm proposing Magento make a configuration file or something similar that would allow the user to whitelist characters to be allowed in a folder name. Previous versions of the gallery allowed users to put hyphens and underscores in folder names. Hyphens and underscores are commonly used in folder naming conventions. I see no security risk in allowing these specific characters. Would love to see this implemented as it doesn't seem very difficult.
... View more
See more ideas labeled with:
Summary Google’s Core Web Vitals, as of 2021, penalizes search rank of sites with Largest Contentful Paint (LCP) delays and Cumulative Layout Shifts (CLS), because they decrease user experience. See: https://web.dev/vitals/ for more info on that topic. Magento and the Luma theme (in both Commerce Cloud, and also the Community Edition / Open Source) has LCP and CLS issues. The Magento community edition currently has CLS issues reported, with no planned fixes yet: https://github.com/magento/magento2/issues/32956 https://github.com/magento/magento2/pull/33265/files Since most of Adobe's Magento Commerce customers are probably using the Luma theme, this is probably impacting a large amount of customers. Examples LCP Most of the LCP issues are from big, slow, and/or fluffy JS/CSS files that Magento/Luma uses: styles-m.css: which is a huge 20k Luma stylesheet recaptcha__en.js: which is loading on every single page, even if the login popup is disabled in the header, meaning even when recaptcha does NOT need to be loading on every page, it still loads on every page. font-awesome.js knockoutJS jquery requireJS underscoreJS CLS The Luma theme in Magento Commerce Cloud has several Cumulative Layout Shift issues when viewed on mobile which occur site-wide, and some are specific to the product details page itself. When viewed in DevTools > Performance tab while viewing in a mobile viewport, you can see the site loading, and then it flashes, the menus/search disappear, the logo shifts, and then everything comes back. That shiftaround is what Google penalizes for CLS. Additionally, on the product details page, the dot slider navigation for product images loads async on the page, causing all content beneath it to shift downward, incurring a CLS penality. Steps to Reproduce LCP Go to https://pagespeed.web.dev/ in a browser Enter a Magento store URL, eg this default Luma theme demo: https://magento2demo.firemultimedia.nl/ Click "Analyze" When the performance analysis is completed, click the "Mobile" tab to view Mobile performance metrics Scroll down to the "Opportunities" area and restrict to see only LCP opportunities, the vast majority of LCP improvement opportunities are core Magento/Luma stuff we have little control over, and are part of the Magento platform itself. CLS Go to https://pagespeed.web.dev/ in a browser Enter a Magento store URL for a product details page, eg https://mysticlabsd8.com/50ct-high-potency-delta-8-gummies/ Click "Analyze" When the performance analysis is completed, click the "Mobile" tab to view Mobile performance metrics Scroll down to the "Opportunities" area and restrict to see only CLS opportunities This section will show you what is shifting, and what CLS penalty each shift is incurring Additionally, for CLS, you can also measure this easier and visually see the layout shifts in Chrome: Open DevTools > Performance Go to a Magento site In DevTools, emulate a mobile viewport Click the refresh button in the performance tab to run a performance scan, and then stop it once the site loads Hover the mouse over the screenshots it takes, as you go from left to right on the timeline, you will see the layout shifts occurring, and the hamburger menu and search icons disappear, and then reappear again later
... View more
See more ideas labeled with:
There is currently no clear identifier for disabled products within the Visual Merchandiser view for categories. Greying them out would be a good way to indicate that a product is currently disabled within the Visual Merchandiser/Tile view. Example from Magento 1:
... View more
See more ideas labeled with:
Hi Guys, It would be nice to allow bundle products to be added to cart as quick order. Currently if we try to do this, it is not working because it displays a message saying "You need to select options". Thanks a lot
... View more
See more ideas labeled with: