Page 3 - Monthly Archives: 2020
- 1 min read
If you need to update by Magefan, please follow the steps below.
Note: the updating instructions depend on the method the Multi Blog extension was installed with.
Update using composer
If the multi blog module was installed via the composer (check if vendor/magefan/module-secondblog folder exists), then you need to run these simple CLI commands in Magento 2 directory:
composer remove magefan/module-secondblogcomposer require magefan/module-secondblog ^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 want your website to be down during deployment, try these .
Update using archive and FTP
If the multi blog module was installed via FTP (check if app/code/Magefan/SecondBlog folder exists), then follow these commands:
1. Download the latest version of multi blog extension archive from magefan.com.
2. Extract archive.
3. Make the backup copy of the app/code/Magefan/SecondBlogihor
- 1 min read
You can install by Magefan, using composer or archive installation methods.
Installation via composer (recommended)
Please navigate to your Magefan Account > Downloads > Install via Composer to get the composer installation instructions.
Installation using archive and FTP
Download Multi Blog Extension ZIP-Archive from magefan.com website (not GitHub or other sources).
Extract files.
Copy app folder from the archive to your Magento 2 folder.
In a command line, using "cd", navigate to your Magento 2 root directory.
Run CLI commands:
php bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deploy
Note: if you don't want your website to be down during deployment, try these .
- 4 min read
While everyone so desperately tries to make their way up to the top of SERP following the they pay little or no attention to one of the main things page speed could be improved with - Image Optimization.
If you , you will notice that images take a lot of your website loading time.
So, in order to get more traffic, you need to take care of plenty of things including images.
Many websites use outdated unoptimized images which definitely are not contributing to the website speed improvement since they take some time to load. It's been said that if the page takes longer than 3 seconds to load the majority of people are going to leave.
In case you really want to attract more customers with a fast-performing website you need to optimize your images.
We've prepared the top 3 tips for Magento 2 Image Optimization.
Tip 1 - WebP Images
PNG and JPG image formats are outdated and big in size. It makes them load longer and slow down your website performance correspondingly. Fortunatelyihor
- 2 min read
"There has been an error processing your request" is one of the most messages you can receive when working with Magento 2. Here is an example of this message:
What are the most common reasons for "There has been an error processing your request" message to appear?
Installation of the new Magento 2 theme or extension.
Updating Magento 2 or Magento 2 extension.
Changes in the template code.
Setting configuration.
Overloading of the server memory.
So, if any of the above-mentioned points are due you will see the default Magento error message "There has been an error processing your request". After that exception printing is disabled by default for security reasons.
Though you see this message you don't know what error is there to be fixed. In order to fix it, you need to find out the source of the problem first.
Fix "There has been an error processing your request" issue
Take the following steps to fix "There has been an error processing your request" issue in Magentoihor
- 1 min read
extension allows you to and move JS code to the bottom of the page automatically. That way you increase the website loading speed and eliminate render-blocking.
However, sometimes you don't need to move all JavaScripts to the bottom since there are some that aren't recommended to be moved there.
In this guide you'll learn how you can do that.
How to Defer Some JS Loading Automatically?
Navigate to Stores > Configuration > Magefan Extensions > Rocket Javascript and find the Ignore Deferred JavaScript With section. Then specify the strings you don't want to be moved to the bottom, each in a new line.
The extension will add data-rocketjavascript="false" attribute to them automatically so they will be ignored.
How to Defer Some JS Loading Manually?
In case you don't want to move some JavaScript to the bottom you just need to add the attribute data-rocketjavascript="false" to the <script> tag directly in your code:
Example:
Let's say you had the JavaScript tag like this:
<script> alert('Iihor
- 4 min read
The 1st place in Google SERP is a dream place every website is working hard on getting to. As plenty of studies show you'd probably click on the first 3 results Google gives for your query with little or no regard to the rest. Being at the top 3 is great, but still, the 1st place gives you far more authority and credibility. You have to be really good so that Google has the reason to put you there, right?
Your website or webpage success on Google is based on SEO, so everyone desperately wants to learn how to improve it. Consequently, those who've ever learned about SEO know how many things it is influencing and how many things you have to take care of in order to improve it on your website.
So, in order to outrun the competitors to improve your website SEO you have to:
Work hard on creating unique and useful products.
Do your research to target top-ranking and long-tail keywords.
Create informative and engaging content.
Pay a lot of attention to the MetaData.
Buildihor
- 3 min read
Basic Linux Commands
pwd - displays information about the current location in the file system (the path of the directory (folder) you are in);
dir, ls - shows a list of files and folders in the current directory;
cd - (change the current directory) allows you to move to another folder;
Example:
cd ../ - will move to a folder on a higher level;cd foo - will go to the child folder "foo";cd /var - will go to the "var" folder located in the root of the file system;
touch fine_name - create a new file named "fine_name";
mkdir dir_name - create a new folder "dir_name" in the current directory;
rm file_name - delete the file "file_name";
rm -r dir_name - delete the folder "dir_name";
cp origin_name new_name - copy files and folders;
mv old_name new_name - move files and folders;
ln -s origin_name link_name - create a symbolic link;
Search by Content
To search for a file by content, use this command:
grep -rnw 'path' -e 'some text'
Use the l modifier to display onlyihor
- 1 min read
If you already use for your HTML <img> tags and want to enable WebP for the CSS background as well, the proper way is to use multiple backgrounds in the CSS styling.
For example, you have an element with .png CSS background:
.minicart-wrapper .action.showcart.desktop .fa-shopping-cart:before { background: url(../images/icon-cart.png) no-repeat;}
To switch it to the WebP, you need to convert PNG/JPG/GIF image to WebP image manually using one of the free tools on the Internet. Save it in the same folder and use CSS like this:
body.webp-supported .minicart-wrapper .action.showcart.desktop .fa-shopping-cart:before { background: url(../images/icon-cart.webp) no-repeat;}body.no-webp .minicart-wrapper .action.showcart.desktop .fa-shopping-cart:before { background: url(../images/icon-cart.png) no-repeat;}
In this case, all browsers will get WebP images, except for ones that do not support WebP. They will load the .png image.
Note: if you use Magento 2 with "no-webp" & "webp-supported"ihor
- 3 min read
It is proven that information is perceived better by watching videos than reading a long one-piece text. Magento websites are not an exception. So, it's your cue to consider adding videos to your content, too.
There are multiple options to add YouTube videos in Magento. Starting from the default means and moving on to the advanced tools with , you can find the best solution for your needs.
Today, we'll cover both options to make your journey easier. Their features and performance metrics vary, so there's a lot to unveil.
Ready to get started?
How to Add YouTube Video in Magento?
You can use the WYSIWYG editor or page builder for content management. Fortunately, both of them offer a media tool to add audiovisual elements.
So, to add a video in Magento:
1. Navigate to the place where you'd like to insert a video and click on the Insert/edit media icon on the editor's toolbar.
2. Enter the video's link in the Source folder and specify its Width and Height in the General tab.
3. Switchihor
- 3 min read
Hello there, Magento fans!We sincerely hope you're safe, healthy, and ready to learn about some news and updates we've have prepared for you in April.
There were Magento 2.3.5 compatibility changes added to the extension and updated WYSIWYG advanced editor. In order to prevent potential conflicts, there was added a notification notice about the other blog extensions enabled on your website.
From now on, the blog comments publication date is displayed based on the store timezone. Moreover, comment count update bug is now fixed so once any comment is deleted the comment count will be updated correspondingly. The error appearing on the blog search is now fixed as well. You will also be able to add the category _id parameter in the Blog RSS Feed URL in order to include articles only from the specific categories.
There were made Blog GraphQL Improvements and updated YouTube widget for edition.
extension that converts your images from the out-dated .png and .jpg formatsihor
- 3 min read
Recently we got an "data-vocabulary.org schema deprecated and not supported by Google anymore. Please migrate to using schema.org types." error validating one of our website pages. The same error we got in Google Search Console.
This "data-vocabulary.org schema deprecated" error is related to the breadcrumbs structure data. We used "data-vocabulary.org/Breadcrumb" schema for the structured data, but Google supports it no longer.
You may also receive this error starting from April 6, 2020, in case you haven't converted your structured data scheme from data-vocabulary.org to schema.org.
Before we get to the point of how to fix the "data-vocabulary.org schema deprecated" error, let's make a few things clear.
What is Structured Data?
It is a specific HTML or JSON code on the web-page that helps search engine robots to analyze the page easier and structure the content for better understanding. When your page has a lot of elements it is hard for searchihor
- 1 min read
If you use Magento 2 and get an error like this:
Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:error:14095126:SSL routines:ssl3_read_n:unexpected eof while reading in vendor/google/recaptcha/src/ReCaptcha/RequestMethod/Post.php on line 72Trace:<pre>#1 file_get_contents() called at [vendor/google/recaptcha/src/ReCaptcha/RequestMethod/Post.php:72]#2 ReCaptcha\RequestMethod\Post->submit() called at [vendor/google/recaptcha/src/ReCaptcha/ReCaptcha.php:156]#3 ReCaptcha\ReCaptcha->verify() called at [app/code/MSP/ReCaptcha/Model/Validate.php:79]#4 MSP\ReCaptcha\Model\Validate->validate() called at [app/code/MSP/ReCaptcha/Observer/ReCaptchaObserver.php:93]#5 MSP\ReCaptcha\Observer\ReCaptchaObserver->execute() called at [vendor/magento/framework/Event/Invoker/InvokerDefault.php:72]#6 Magento\Framework\Event\Invoker\InvokerDefault->_callObserverMethod() called at [vendor/magento/framework/Event/Invoker/InvokerDefault.php:60]...
when trying to login to theihor
- 3 min read
Hello there, Magento fans!Are you eager to learn about some news and updates we've have prepared for you in March?
Quite a lot of new features have been implemented to the this month.
There was added the automatic page cache cleanup for product pages with related blog posts that were changed. Blog Post Related Products now use the default catalog related products template and Blog AMP related product template was improved (Magento 2 Blog AMP v2.0.2 is released). In addition to auto 301 redirect to non-slash URLs there was added an option to 301 redirect to blog URL with "/".
Those who are using the Blog v2.9.2 and noticed that blog tags disappear after you resave the blog post be sure that was fixed together with the Invalid input date-time format error. Undefined index in $allTags error was fixed.
Blog GraphQL for Magento 2.3.4 errors were fixes (Magento 2 Blog GraphQL v2.0.2 release).
Magento 2 Blog is now Compatible with the v2.0.2.
From now on the users of Magento 2 Dynamicihor
- 1 min read
To apply lazy load for images in your Knockout template, first, make sure that extension is installed.
Then insert an image into the HTML template (my-template.html) like this:
<img data-bind="attr: {src: $parent.getPixelUrl(), 'data-original': thumbnail, alt: code_article, loading: 'lazy', width: '165', height: '165' }"/>
Example:
<div class="options-block" data-bind="foreach: getOptionBlocks(), afterRender: initLazyLoad()"> <div class="option-item" data-bind="attr: {'data-sku': sku}"> <div class="image-block"> <img data-bind="attr: {src: $parent.getPixelUrl(), 'data-original': thumbnail, alt: code_article, loading: 'lazy', width: '165', height: '165' }"/> </div> </div> </div>
Your view JS file should look like:
define([ 'jquery', 'uiComponent', 'ko',], function ($, Component, ko) { 'use strict'; return Component.extend({ defaults: { template: 'Vendor_ExtensionName/my-template' }ihor
- 1 min read
In v2.9.3 we added the feature that many customers requested about, it is "use the default catalog related products template" instead of custom blog related product template. This helps to display related products on the blog post page in the theme design automatically. The commit related to this change can be found at GitHub.
Unfortunately, there are thousands of themes for Magento 2, and some of them have specific JS and CSS (e.g. Porto Theme). That is why if you use Blog extension v2.9.3 or greater and the related products block does not look good, please try to do next:
1. Create a new file in your theme directory:
app/design/frontend/ThemeVendor/themename/Magefan_Blog/layout/blog_post_view.xml
2. Add this code into it:
<?xml version="1.0"?><page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"> <body> <referenceBlock name="blog.post.relatedproducts" > <arguments> <argumentihor
- 1 min read
Social media is a powerful platform that generates tons of information throughout the world every day. That is why such networks as Facebook and Twitter are commonly used for marketing purposes by a lot of stores. It allows them to attract more attention to their content and correspondingly drive more traffic to their websites with the help of Open Graph tags.
However, sometimes it happens that aren't working as they are supposed to. Instead of a great featured image and newly written title and description, you see the outdated information or don't see anything at all.
If you're wondering what could possibly cause Facebook to pull out the wrong OG data instead of the up-to-date one the answer is pretty simple. Facebook Open Graph Cache.
So, in order to make sure Facebook shows the proper Open Graph Information you just need to clear the Facebook cache.
Follow these steps to clear Facebook Open Graph Cache:
1. Navigate to the Facebook Sharing Debugger, paste the URL to the pageihor
- 4 min read
Hello there Magento fans!Are you eager to learn about some news and updates we've have prepared for you this month?
To start with, there was made am important security fix for extension. Get more details on this in the article about .Besides, from now on login as a customer option is disabled in case customer's company is not verified in Magento B2B. As for the Magento cloud users weren't able to login as customers due to the missing product key field, now it is fixed.
There were released 2 new extensions this month, which we're proud of. Website speed is extremely important when it comes to SEO. Since one of the main reasons for poor website performance usually is the number of pictures on the website there is a need to optimize them. The best solution for this is WebP, next-gen image format that is significantly smaller in size than JPG and PNG. That's how we've decided to develop the extension that would help you to automatically convert images to the new WebP formatihor
- 1 min read
Today (Feb 12, 2020) we have been notified about a potential security issue in our thanks to Daniel Sloof's tweet.
Reviewing the code and communicating with Derrick Heesbeen, Lewis Voncken from experius.nl there was found the security issue.
Note that, no confirmed attacks related to this issue have occurred to date, however, malicious actors potentially were able to login to a customer account in a tiny timeframe after the admin user pressed the "Login As a Customer" button in the admin panel and before admin user was redirected to the storefront and actually logged in.
Timing is really important to reproduce this issue. The security issue may occur on all Login as Customer versions until v2.2.3 during just a few seconds after the pressing of the "Login As a Customer" button.
We encourage everyone who uses Login As Customer extension v2.0.0 - v2.2.2 to update the extension at least to v2.2.3 or apply this quick fix.
At Magefan we always pay attentionihor
- 1 min read
If you decided to remove , please follow the steps below. You can contact our team for a free consultation in case you have any issues with Magefan's extension.
Remove Extension Files
1. If you can find the extension files in the folder
app/code/Magefan/Translationapp/code/Magefan/TranslationPlusapp/code/Magefan/TranslationExtra
then remove this folder.
2. If the extension was installed via the composer and its files located in the folder
vendor/magefan/module-translation
then run composer CLI command to remove it
composer remove magefan/module-translation*
Once extension files have been removed, run these Magento CLI commands:
php bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deploy
Note: if you don't want your website to be down during deployment, try these .
Remove Extension Data (optional)
Attention! This will clean all translation log and extension configurations.
1. Just in case please make a full backup (dump) of your Magento 2ihor
- 1 min read
If you need to update by Magefan, please follow the steps below.
Note: the updating instructions depend on the method the Translation extension was installed with.
Update using composer
If the translation module was installed via the composer (check if vendor/magefan/module-translation folder exists), then you need to run these simple CLI commands in Magento 2 directory:
composer remove magefan/module-NAMEcomposer require magefan/module-NAME ^x.x.x# replace NAME with:# translation - for translation extension# translation-plus - for # 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
If you want to upgrade to Plus, check this guide on how to .
Update using archive and FTP
If the translation module was installed via FTP (check if app/code/Magefan/Translation folder exists), then follow these commands:
1. Download the latest version of the translation extension archive from magefan.comihor
- 1 min read
You can install by Magefan, using composer or archive installation methods.
Installation via composer (recommended)
Please navigate to your Magefan Account > Downloads > Install via Composer to get the composer installation instructions.
Installation using archive and FTP
Download Translation Extension ZIP-Archive from magefan.com website (not GitHub or other sources).
Extract files.
Copy app and lib folders from the archive to your Magento 2 folder.
In a command line, using "cd", navigate to your Magento 2 root directory.
Run CLI commands:
php bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deploy
Note: if you don't want your website to be down during deployment, try these .
