Yandex, the Russia-based search engine, has a handful of free-to-use tools, if you should ever feel the need, including a structured data validator and sitemap checker. You can never have too many tools… Here is a little list of some of them:
I have never used a programming framework seemingly designed to frustrate the development process as much as Magento 2. You have to constantly clear caches and static files to see your modifications, even when in developer mode.
Having recently started work on learning the ropes with Magento 2, and finding all sorts of oddities, incongruities and banging-head-on-desk-ities, I decided to take a look at the blog of Alan Storm at alanstorm.com.
Here is a quick, albeit very hacky solution to allow you to add hreflang tags to a page or item via the XML custom layout box in the admin.
After renaming a custom Magneto 2 theme folder, to correct a capitalisation mistake, I ran into all sorts of issues, starting with this error:
Required parameter ‘theme_dir’ was not passed
After reading around I removed the entry from the database table “themes” and tried to set any pages or stores set to use that theme to use something else. Then I endlessly got this:
Error – Exception #0 (LogicException): Unable to load theme by specified key: ‘4’
MAGENTO 2 – COMMAND LINE INTERFACE
M2 utilises CLI (command line interface) commands heavily from using composer to install modules and keep things updated to clearing the cache, switching in and out of production mode and that sort of thing. This is very new for a Magento 1 developer like myself so it is time to start documenting all of this. Here is a list of the all the standard bin/magento commands, plus a few extra bits and pieces that have proved useful.
The checkout issue of not being able to proceed past entering the initial address is a real sod to sort out. There seems to be a variety of possible causes almost all of which leave no easy trail of errors or, in some cases, no errors at all. I am posting my latest discovery here after migrating a site a new server to find that I was unable to progress past stage 2 of the one-page-checkout process. Spoiler alert: it was the CSP!
So, one day, I noticed one of my servers was sending a ton of emails out to dodgy looking ….@mail.ru or ….@list.ru addresses. UH OH!
At first I thought the mail server on my webserver had been compromised. On further investigation I managed to see to that the contents of these mails were account registration validation emails. Looking in the Magento admin (Customers>Manage Customers) I saw them…thousands of new customer registrations – with Russian copy in the name fields and, on the whole [something]@mail.ru or [something]@list.ru addresses but also some with [something]@gmail.com.
To write information to your own custom log file, say to trace errors in a custom module, track odd behaviour or record that a certain event has happened, you use Mage::log()
Mage::log(‘<WHAT TO WRITE IN THE LOG>’, null, ‘FILENAME.log’, true);
If you want to log the output of an array, use print_r but with the second parameter set to true – this converts the output to a string.
e.g. Mage::log(print_r($myArray,true), null, ‘FILENAME.log’, true);
I hope this is helpful. If it has and has saved you some time, feel free to buy me a beer.
OK, so as lovely having ones browser update automatically to the latest version (see that IE you annoying thing) the recent Chrome update (currently at 69.0.3497.81 – fine incrementing there lads) did something rather strange. Aside from the oddly curvy address bar and tabs (hey this ain’t no MAC) the peeps at Google have decided to remove/hide the www. part of URLs in the address bar.
So www.thelazywebdev.co.uk will be displayed in the Chrome address bar as
Apparently this is the same for m. subdomains but I don’t have of those to test.
Anyway…for me this is REALLY ANNOYING as I have local development copies of sites without www. but that look similar to their live counterparts. Besides, in many situations the sub domain IS important.
Fortunately this odd functionality can be reset back to normal using one of the chrome settings flags. Enter this as your URL in chrome:
and you can change it. Yes! Grumble over. I wonder how many updates away we are from this being reset.