It would save us much time if we can directly add the products to the category from this place o "product in category" Currently we can just choose the category when posting the products.
... View more
See more ideas labeled with:
I am using the UPS shipping module to get shipping prices from UPS with my negotiated rates. When you request the shipping, the values returned include the field GrandTotal. Unfortunately this figure does not include any applicable taxes that are added by UPS. This is quite important if your company is not registered for TAX and cannot claim the tax back and want to pass on this TAX cost to your customer. It would be great if the module had an option to include applicable taxes in the value shown to customer. In the rating request packet, if the field <TaxInformationIndicator/> within the <RatingServiceSelectionRequest><Shipping> tags is set (not set in the module), then the response includes additional information, including what taxes apply to the shipment (this happens even for negotiated rates, even though the API docs implies it doesnt) The response that you get back includes the "GrandTotal" field (ex tax) (Where Magento currently gets the total from) but also includes an additional field "TotalChargesWithTaxes" (If you are shipping to somewhere where TAX is added) If you are shipping to a country where no TAX is applied then the GrandTotal field contains the total shipping amount. If you are shipping to a country where TAX is applied, then GrandTotal still contains the exTAX price, but the TotalChargesWithTaxes field is included with the TAX added on. You would need a bit of logic so if TotalChargesWithTaxes is not set, then get total from GrandTotal, otherwise useTotalChargesWithTaxes.
... View more
See more ideas labeled with:
Please add configuration option to enable and force 2 or 3 character sets in passwords for backoffice users. This option exists for consumer accounts for webusers but not for backoffice users. Requirement for both consumer and backoffice users A mix of uppercase, lowercase, numeric characters Image of configuration screen for website front end users showing configuration to be cloned and made available for backoffice users.
... View more
See more ideas labeled with:
For the simple product, is it possible to add the new Option Type of "Image", so that we can uploads the images for the customers to choose?
... View more
See more ideas labeled with:
As a customer, I would like to sort my wishlist or requisition list items individually so that I can can group products together and organize my lists 1. Magento 2.2 w/B2B extension 2. While on a requisition list with more than one item 3. Dragging my items will change their order within the list 4. On drop, the item position will be saved via ajax 5. On refresh, my item positions will be preserved
... View more
See more ideas labeled with:
In my site, when customers click on a product image, a lightbox opens with the large close-up product images. I sell clothing, and customers like to see model stats for each different model image (model height, weight and sizes of garment being worn). Text in images looks terrible in responsive websites so it would be nice to have a way to add a text description to product photos to describe what's in the photo. But there is no way to show text alongside the images natively in Magento (alt tag is too limited and not functional in all browsers). It would be great to either simply show a text description underneath each photo -OR- a more slick solution would be an on-hover block of text overlaying each photo.
... View more
See more ideas labeled with:
Please remove the title of the Related Products, Up-Sell Products, Cross-Sell Products The appearance looks bad for the mobile when the title of product is displayed.
... View more
See more ideas labeled with:
Please remove the title of the Related Products ,Up-Sell Products ,Cross-Sell Products The appearance looks bad when they are displayed on the mobile.
... View more
See more ideas labeled with:
Idear is a function similar to "duplicated and edit" or "Copy and edit" like in products. But for static blocks and cms pages. It's very annoying if you got a store with multiple languages and you need to copy static blocks and cms pages manually.
... View more
See more ideas labeled with:
Hi, I'm developing a magento 2.1.7 store on my localhost. After logging into my admin and changing the full page cache from the default to the recommended varnish. I cannot login into the admin part of the store. When I try to, I get this error page There has been an error processing your request Exception printing is disabled by default for security reasons. Error log record number: 2076606110 I have no idea what is going on. I can however view the store on my localhost. I just can't login to the admin. Thanks
... View more
See more ideas labeled with:
I need to specify a prefix static string for all URLs of my Products and Categories. Just like Wordpress Woocommerce permalinks. For example all of Categories should have product-category prefix in their URL: Cat One: domain.com/product-category/cat-one Cat Two (child of 'Cat One'): domain.com/product-category/cat-one/cat-two and all of Products should have product URL prefix, no matter what their Category is: Product One: domain.com/product/product-one Product Two: domain.com/product/product-two I tried to do this solution, but It's for 3 years ago and not working in Magento 2. Also this extension is for Magento 1.x as you see. By the way, I'm using Magento 2.1.9 with PHP 7.0.22 and XAMPP 3.2.2. Thanks.
... View more
See more ideas labeled with:
Hello, Ive started developing magento2 and the cli tool is very nice and easy to use. But I was missing some tools for code generation like modules and themes. Everytime you create a module or theme you have to create the same boilerplate registration.php, module.xml and other config files. For example to create a new module: php bin/magento module:create Vendor ModuleName This code could be generated through the CLI tool. A good example is the @angular/cli tool for Angular.
... View more
See more ideas labeled with:
Broadly speaking, there is a few different ways of expressing application state in such a way that it's useful debugging: Logs (implemented in M2 with the excellent psr/log interface) Time series data (also known as metrics). Things like Data Dog, Promethiums, Sensu and so on. Traces; primarily expressed by opentracing.io, but also Zipkin, Lightstep This feature request is to track the implementation of #2; the expression of time series data in the application, as well as the export of this data via whatever mechanism might be setup to receive it. Time series data exposed by an application can provide extremely rapid feedback on an applications performance. This information can be used for a number of useful processes such as: Allowing infrastructure to make decisions around whether to modify the applications runtime environment Debugging the application performance during runtime Alerting when an application violates it's SLO Note: I am doing some work on this with PHP more generally tracked on github. Best place to contrib beyond core support is there. There is currently no simple way to express such time series data in Magento. There are several efforts that have been done to implement this in a third party, vendor specific way including: https://github.com/sitewards/magento-prometheus https://github.com/magento-hackathon/Hackathon_Datadog https://newrelic.com/partner/magento https://github.com/janpapenbrock/magento-statsd However, these suffer form a few drawbacks. In particular, There is no standard API (such as the psr/log api) that can be invoked in third party extensions reliably It locks the users into a hosting infrastructure; undesirable for the continuity of the project. Additionally, there are various metrics that would prove extremely useful when debugging Magento: Cache hit rates (https://github.com/magento/magento2/issues/11151) Cron metrics, such as last execution per job, queue length etc. Indexer status (expressed as 1 or 0) Cache enabled status (expressed as 1 or 0) Cache invalidations issued Orders in various states (processing, shipped etc) Customer logins (aggregate, not per customers) HTTP status codes However, the utilities aren't limited to the above. In particular, third party code often has reason to express it's health (such as the code developed by an agency) to ensure custom logic is functioning correctly, and that a feature is delivering sufficient value to jusify it's cost. General Background It is suggested the implementer have some experience implementing and using application instrumentation. There is a body of knowledge in this area that is immense of it's own right, and not a task that is so simple. Beyond that, the goal of the work should be to checkpoint the data, but defer all processing to the implementing time series databases. It should also have minimal impact on performance. Lastly, high cardinarily data can be expressed through logs or traces, and is perhaps not something that is easily expressed by time series metrics (though honeycomb et. al would beg to differ) Primitives The open source monitoring package Prometheus expresses the primitives: counter gauge histograma summary The author has implemented this in several places, and has found uses for counter and gauge in a repeated way, as well as a limited use for histogram. To begin, the implementation of "guage" and "counter" would be amply sufficient to justify the majority of cases. This is supported by both Prometheus and DataDog, and it's presumed the majority of time series databases. Non Goals It should not be a goal of this work to implement the metrics view in Magento. This can be approached as a separate task, but the primary intent of this work is to express time series data in such a way it can be consumed by third party services. It should not be a goal of this work to track the time associated with the time series data. The sampling is left to the third party application implementations. It should not be a goal of this work to instrument third party applications (redis). They have their own implementations, and should be considered separate services. It's unclear whether instrumenting the PHP runtime itself would be beneficial, though this can likely be handled in the bespoke cases it's required by third party utilisation of the above library. Interface Ideally there should be an interface similar to the psr/log exposed that allows the checkpointing of metrics. Something like: <?php
class Foo
{
private $oMetricRegistry;
/**
* Dependencies automagically wired by DI
*/
public function __construct(
// Singleton injected that stores the metrics. Invariably a global, persists towards the end of the request
\Magento\Framework\Metrics $oMetricRegistry
) {
$this->oMetricRegistry;
// Ensure the metric exists. This operation is an idempotent "create if not exists" type operation.
$this->oMetricRegistry->register(
// metric identifier
'vendor_extension_foo_thing',
// metric type. Can be one of "count" or "gauge"; potentially "histogram".
'count',
// label keys. Labels are mechanisms to slice time series data, supported by both data dog and prometheus
[
'attribute'
]
);
}
public function doThing()
{
// An operation changing the state of the metric. In this case, an increment -- it's a count.
$this->oMetricRegistry->increment(
// The metric identifier
'vendor_extension_foo_thing',
// The label values.
['value']
);
}
} This would allow an extremely simple API to quickly expose the data for ingestion into time series. Storage Ideally, the storage engine should be pluggable, but implement: APCu In Memory (or "null" when considering parity with psr/log) Redis MySQL This would cater the wide range of hosting constraints that Magento can operate with, with a predisposition for not changing exising behaviour (checkpoint to memory but flush at the end of each request) Exposition There are various ways that the data may be exposed. It's suggested the core team deliberately not support any mechanim (except perhaps a native admin panel one, expressed as separate work). Instead, rely on third party / community vendors to provide the required libraries, similar to psr/log. Broader PHP community involvement It is the authors hope that this conversation is extended to the broader PHP community, perhasp through the involvement in FIG. A single interface for time series data would have ramifications for the langauge more generally. Future Work Once implemented, Magento's introspectability could be extended further by implementing traces. Related Reading: http://www.brendangregg.com/usemethod.html https://prometheus.io/docs/introduction/overview/ https://github.com/DataDog/php-datadogstatsd https://github.com/Jimdo/prometheus_client_php
... View more
See more ideas labeled with:
We would like the ability to import a CSV that includes a full redirect map of old URLs to new URLs when a site is being replatformed on Magento. We have found with many clients that they have hundreds of redirects for various pages on the new site that needs to be created. It would be incredibly efficient if we could do a bulk import function with this so we avoid spending hours building server level redirects or entering them one at a time.
... View more
See more ideas labeled with:
I know there are endpoints for both fetching an address by id and deleting one by id. Listed below: (customerAddressRepositoryV1) as listed here http://devdocs.magento.com/swagger/index_20.html#/ 1) To get a address Endpoint: /V1/customers/addresses/{addressId} Method: GET 2) To delete a address Endpoint: /V1/addresses/{addressId} Method: DELETE The issue with either of them is that they are not accessible by customer token. They seem to only work with Admin Token Authentication. If a customer adds multiple addresses and selects a specific one to fetch entire details or delete it, it should be allowed from his customer access. Please suggest.
... View more
See more ideas labeled with:
Create 3 Terms and Conditions for checkout process. By default Magento is listing the terms one after other based on their ID's. As it is now the only way to re-position the terms is editing the database. Please allow this modification in Backend.
... View more
See more ideas labeled with:
When we do a bulk update for product/categories, partial indexers start the data indexing process in the background (when using the index on schedule mode). We need to wait for those indexing process to complete to see the product/category updates on the front-end. For an admin user, there is no way to check the state of the indexing process, ex: % completed, error encountered etc. This is a suggestion to include an admin area to visualize the state of the partial indexing processes, so admin users don't need to contact devs to check the state of the indexers by querying DB.
... View more
See more ideas labeled with:
Given we have to jump through so many hoops regarding caching systems such as Varnish etc to get any kind of decent performance, the least a default installation could do would be to make it automatically optimise with mod_pagespeed. Magento installations are the only sites I run where I have to turn it off completely. The problem seems to be knockout.js. Can only imagine how fast a site with both caching and optimised html would be. More info: https://groups.google.com/forum/#!topic/mod-pagespeed-discuss/FtdyLTVPRLc
... View more
See more ideas labeled with:
Similar to #9582 - we should eliminate the complicated necessary inheritance for creating Imports and Exports that plug-in to DataFlow
... View more
The suggestion is to establish a pattern of adding the following code to deprecated functions: // This is just an example. Write whatever -- something to point people in the right direction.
$sMessage = 'save() has been deprecated in favour of using the usage of repositorties, and the deferral of persistence to the persistence layer. See https://h.dev.magento.com/repositories for further details'
@trigger_error($sMessage, E_USER_DEPRECATED); This can be introduced harmlessly to the stack, and does not actually change any error behaviour, or make the deprecated methods more fragile. However the error handler indicated by set_error_handler() will be called; allowing the surfacing of the deprecated methods. This is useful in a couple of ways: Tests can stub the error handler such that it propagates these error messages and fails tests. This clearly indicates that the code is no longer valid. The error handling function can be modified such that in developer mode these errors are surfaced to the user, and either halt execution or are simply logged to the debug log State of "known violations" can be tracked (perhaps simply with a try_catch in tests, with a skip or the like). This means that any new code must either violate the deprecation intentionally (picked up in review) or fail tests (picked up in CI) This pattern has been previously established by Symfony[2][3] and appears to work as expected there. Such work will allow enforcement of deprecation; something that has proved problematic in the past (particularly in code review where it's not apparent that used functions are deprecated) [1] http://uk.php.net/manual/en/language.operators.errorcontrol.php [2] https://twitter.com/andrewhowdencom/status/900675010641133571 [3] https://github.com/symfony/class-loader/blob/b94aa5c3608cd53444fc4c7a2a506d163eb4a8f3/MapClassLoader.php#L14
... View more
See more ideas labeled with: