Warning: Your browser is very out-of-date. You should upgrade to a better browser.

2021

June 2021 Upcoming changes to eBay's PayPal Payments Over the course of 2021 eBay will be incrementally changing how it works with sellers. Changes include updates to the fee structure, how fees are... May 2021 What does Shopify do? Shopify is an ecommerce platform that hosts your website for selling products and services. It helps organize the layout of your store's appearance through different... May 2021 Choose a better browser Updated for 2020 A run down of the most popular web browsers including Firefox, Chrome, Edge and Opera as well some alternate options if you'd like something different.... April 2021 Notes: Magento 2 Directory Structure Magento 1 A brief reminder of the Magento 1 folder structure: app/code followed by either /core for core files /community for third party extensions /local... March 2021 Magento 2.4.2 The latest version of Magento has been released - Magento version 2.4.2 is the usual mix of security updates, performance and some improvements to the... March 2021 PHP cURL Requests with JSON or XML The following post will explain how to use PHP/cURL to retrieve data in JSON or XML and process it for using in your PHP application... February 2021 Global Payments: Strong Customer Authentication (SCA) and 3D Secure 2 The roll out of 3D Secure 2 has been a long drawn-out process not helped by the COVID–19 pandemic. Part of the update has included... January 2021 Shopify: Create a Discount Code A quick guide to help set-up a discount code in a Shopify store. First login to your Shopify store admin area and click on Discounts...

2020

November 2020 What is Magento Open Source? Previously known as Magento Community Edition, Magento Open Source is the ecommerce platform. Adobe which acquired Magento in 2018 has confirmed the open source edition... October 2020 WordPress - Rename the Posts section in Admin The PHP script below can be added to the WordPress Theme functions.php file. It will rename the standard “posts” section to “stories”. Replace ‘stories’/’story’ with... September 2020 Moving on from Magento: OpenMage and Mage One While many companies have already upgraded to Magento 2 or moved on to alternative ecommerce platforms like Shopify, many smaller companies or larger companies with... August 2020 Notes on Transferring a WordPress site to AWS Some notes on transferring an existing WordPress site to Amazon Web Services and some common issues. MySQL Import Fail If the import fails on import... April 2020 Coronavirus: Ecommerce in a Pandemic Online sellers need to keep on top of the impact COVID—19 is and will continue to have on retailers. The links below are some thoughts... March 2020 Coronavirus: Managing your Magento ecommerce store in Lockdown The UK has now entered lockdown with everyone being told to stay at home. The spread of coronavirus (COVID—19) continues to increase day by day... March 2020 Magento 2: Show address fields on the user registration form This post shows you how to add the customer address fields to the customer registration page. It uses the existing setShowAddressFields method for displaying the... February 2020 Security: DNS over HTTPS Whenever you visit a website, even if you are using a site with SSL, the DNS query that converts the web address into an IP... February 2020 Website Optimisation with Pingdom Speed Test There are plenty of website speed tests out there, some are better than others. Pingdom is one of these tools, this post explains how to... February 2020 Choose Magento ecommerce in Belfast, Northern Ireland If you are a business in Belfast or Northern Ireland who is looking to expand your presence online, Magento is a great platform to take... January 2020 Best web browsers for security A few alternative browser options for those looking to protect themselves against analytics, tracking, surveillance, and even censorship. Mozilla Firefox Iridium Ungoogled Chrome Tor Browser...

2019

December 2019 Spammers: Project Honeypot I’m not a big fan of Spam especially when it comes from what otherwise looks to be a reputable company. Spam fills emails inboxes with... November 2019 WordPress Security - Nginx Hardening Techniques for hardening WordPress Sites running on an Nginx server to enhance security. Limit Access to Admin Panel Limit XMLRPC Access This will lock down... November 2019 WordPress Security - Hardening Introduction and Plugins This post is designed to give an overview of some of the techniques for hardening or securing WordPress from malicious attacks and hacking. Security in... November 2019 Simple jQuery Cookie Pop-up This is a simple EU cookie notification pop-up for legacy websites. All that’s required is jQuery. Add the following HTML, jQuery script and apply some... November 2019 Automatically Deploy website from Github This walk through will allow you to set-up a website to automatically deploy on a remote server whenever updates are pushed to the GitHub repository.... October 2019 Magento 2.3.3 The latest version of Magento has been released - Magento version 2.3.3 is all about security and performance. Security Support has been added to Magento... October 2019 Setting up WordPress on Amazon Web Services (AWS) EC2 Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale... October 2019 Choosing the right ecommerce platform Choosing the right ecommerce platform is an important decision for any business looking to sell their products online. The three options below are tried-and-tested ecommerce... October 2019 Jekyll: Post Loop in Liquid Templates Jekyll uses the Liquid templating language to process templates. This post provides a basic example to show the five latest blog posts and highlight the... October 2019 [Notes] WordPress + React Docker Starter Kit I’ve been experimenting with a Headless WordPress + React Starter Kit from Postlight. It’s an automated toolset to create a powerful web publishing tool. Headerless... June 2019 Remove outdated content from Google Search Results From time to time unwanted pages can appear in Google Search Results. Could be a temporary page, old content or even a test page that’s... May 2019 Magento 1: End of life Magento 1’s expected end of life is fast approaching. Many, many merchants are still up and running on the system need to think about what... April 2019 Magento 2 Configurable Product Import Magento 2 allows configurable products to be imported through the CMS. Unlike Magento 1 where Magmi generally did all the hard work when it came... April 2019 Magento Code: Magento 2 Cache Refresh Script This is a stand alone script which can be called to refresh the cache in Magento 2 The script hooks into Bootstrap to generate a... April 2019 Magento Code: Magento 2 Indexer Script This is a stand alone script which can be called to reindex a Magento 2 Site The script will create a unique instance of the... March 2019 Magento 1 to Magento 2 Migration Process (Part 1) While the Magento 1 platform is still active and supported there’s less urgency to switch-up to Magento 2. There are bennefits to upgrading to Magento... March 2019 Magento 1 Ongoing Support and End of life Some thoughts on the expected demise of Magento 1. Magento 1 - Official End Date The official end date of the Magento 1 project was... February 2019 Jekyll This site is now running on Github Pages using Jekyll. Where WordPress was a content management system Jekyll is a static site generator. It reads... January 2019 Introduction to Ubuntu MATE As a PHP developers most of my time is spent working with Linux servers. When Microsoft introduced the Linux Sub-system for Windows I jumped at...

2018

December 2018 Magento Belfast Magento eCommerce was released on March 31, 2008, by Varien and developed on Zend Framework, it's a feature-rich ecommerce platform that provides merchants with unprecedented... June 2018 Magento2 – Show/hide layered navigation on category pages Magento Admin Panel > Catalog > Categories Click into the category you want to update and then expand the “Design”. To remove a layered navigation... June 2018 Start/Stop XAMPP on Ubuntu using Terminal To start XAMPP run the following and the command will return a list of running services: sudo /opt/lampp/lampp start To stop XAMPP run the command... June 2018 Magento2 CLI: Set Ubuntu PHP Version to match LAMPP/XAMPP The Magento2 Comand Line Interface (CLI) needs to use the same version of PHP as your local web environment. You can check this by setting... May 2018 Enable Magento2 Command-Line Interface (CLI) on Linux For both development, ongoing management and scheduled tasks Magento’s Command Line Interface is able to do it all. To enable CLI for Magento to you’ll... April 2018 JavaScript and CSS framework independent cookie pop-up notification for legacy websites. Simple no-nonsense JavaScript and CSS cookie pop-up notification for legacy websites. Will work regardless of JavaScript or CSS framework used. Reusable cookie pop-up March 2018 The latest update to PHP7 is here… 7.2.0 This month PHP released the latest update PHP7.2.0. While PHP 7.2 is an improvement, it is not groundbreaking as the jump from PHP5.6 to PHP7.0.... February 2018 Shopify: Setting up a multipurpose CMSed liquid homepage section Setting up a multipurpose CMSed liquid homepage section for Shopify. The below schema includes two sets of data A YouTube Video display A list of... February 2018 Shopify: List product variations on collection pages The code below will allow you to display a set of product variations on a Shopify product collection pages. Set this code in the collections... February 2018 CMS blocks disappear after version 1.9.2.2 upgrade or SUPEE-6788 patch Magento veresion 1.9.2.2 and patch SUPEE-6788 both introduce a new security featuer to Magento. Blocks on the front-end have to be enabled or whitelisted before... February 2018 Magento Code: Seasonal sales link A lot of sites have a seasonal sale which needs turned on and promoted at different times during the year . This code takes the... January 2018 Running Ubuntu on Windows **One of my favourite aspects of Windows 10 has been the Linux subsystem for Windows. ** I’ve been using it since launch partly because it... January 2018 Why is WordPress so popular? WordPress is a free and open source software used by millions of people around the world to create websites and blogs. The most popular features... January 2018 GDPR: What is the EU General Data Protection Regulation? The General Data Protection Regulation (GDPR) will have an impact on how organisations handle the personal information that they look after. GDPR is a regulation...

2017

December 2017 Spammers: Murphy Consulting You’ll have picked up from previous posts, I really don’t like spam. Running a website with a contact form I get a fair bit but... October 2017 Checkout problems upgrading to Magento 1.9.3.4+ Magento version 1.9.3.4 include patch SUPEE-9767 V2 which includes security patching for the checkout process. For your current front-end templates to work with this patch... October 2017 Upgrading Magento 1 through the Magento Connect Downloader If you don’t fancy upgrading Magento 1 through command line, you can upgrade Magneto core using Magento’s in-built Magento Connect Downloader. Load yoursite.com/downloader. Login with... October 2017 Upgrading Magento 1 through command line Alternative: Upgrade Magneto using the Magento Connect Downloader Upgrading Magento is a must to keep your store in top-top condition, protect your customers and your... September 2017 Spammers: Lee Andrew Meranda I’ve been getting spammed by a company called The Compensation Specialist. They are a personal injury outfit. I’m not sure how they got my email... August 2017 How to update your hosts file. Every computer has a file on it which allows the owner to specify where a website is loaded from. A hosts file is a simple... August 2017 Magento Server Transfer – Tried and Tested Method Moving an entire Magento site from one server to another or between hosts can be a daunting task for non-server administrators. I’m going to try... August 2017 Ordering assets in Magento 2 This one will come in useful until Magento 2 sorts itself out. For some reason, Magento 2 has no way to order assets out of... June 2017 Magento Code: Innoexts Currency Pricing Module Price and Special Price Import via SSH Magento Code: Innoexts Currency Pricing Modul Price and Special Price Imports vis SSH Standard Price Import Use the following command: `php /home/var/public/html/magento/shell/Innoexts/CurrencyPricing/Catalog/Product/Price/Compound/Import.php --file-path /var/import/ --file-filename standard_price.csv`... June 2017 PHP: glob glob($string); Return an array of pathnames matching a specific pattern. // Find all CSV files in the /home/var/imports/ directory glob("/home/var/imports/hello-*.csv"); /home/var/imports/hello-world.csv – Returned /home/var/imports/hell-world.csv –... June 2017 Magento Code: Check an import directory for new product CSVs and process using a Magmi profile This script will first scan the var/import directory for all CSV files starting “import-” using the glob() function in PHP. It will return an array... June 2017 Magento: What are Sage Pay Orphan Transactions? This is a regular issue when using Sage Pay with Magento that needs a bit of explaining. Sage Pay transactions started by the customer are stored... May 2017 PHP: header header($string); Used to send a raw HTTP header, often used for page redirects. Must be called before any other output is sent. // Redirect the... May 2017 PHP: str_replace str_replace($search,$replace,$subject) All instances of $search are replaced with $replace in $subject. // Will print to screen: "Why is the sky blue?". echo str_replace("red","blue","Why is the... May 2017 Create a custom URL rewrite/redirect in Magento You can use a custom rewrite to redirect CMS pages, or any other type of page. For example, if you change the URL key of the privacy... May 2017 Magento Code: Include currency switcher in the header or footer with Foundation mark-up It is easy to set-up multi-currencies in Magento. This code  allows you to quickly include a currency drop down or link to  the header or... May 2017 Magento Code: Add a drop down attribute and display it on the product page in custom HTML Magento makes it really easy to expand the usual product attributes through the Admin Panel. While these can be added to the product page in... March 2017 Magento header.phtml basic user account and basket code Some useful shippets for including customer accound and a basic basket/cart product count in the header of Magento. This should be added to header.html in... January 2017 Magento Issue: Unable to sort configurable product attribute drop down options Having encountered this issue a couple of times I though it was time to make a note. This is a fix for an issue in...

2016

December 2016 Testing YouTube embedded video responsiveness in WordPress It turns out YouTube video uploads have come a long way since I last tried them out. This is a test post with no discernibly... December 2016 Magento product types and what to use them for Magento comes preconfigured with a number of different product types. These range from simple bog-standard products to digital downloads and configurable products with a myriad... December 2016 Anonymous Browsing A few links to help secure your online activities private and secure. In the United Kingdom the Investigatory Powers Act has been signed into law... November 2016 WordPress Code: Completely disable comments using functions.php How to completely disable comments using functions.php The code below will completely disable any commenting and trackback features in WordPress. It is in response to the usual issue whereby you think comments... November 2016 MySQL TRUNCATE command: Quickly and easilty clear out the Magento database This is a simple list of SQL commands which can be used to clear out various parts of the Magento database. It’ll be useful when... November 2016 Session Management and Validation Settings in Magento Configuration Cookie and session management is an important aspect of any ecommerce store. Everything from a customer’s cart, checkout process and recently viewed products is made... November 2016 All-in-one Google Analytics tracking in Magento Simple single script to add Google’s conversion tracking to your Magento ecommerce website. The code should be added into the footer.phtml file within your current template.... November 2016 All-in-one Facebook Pixel Code for Magento ecommerce Simple single script to add Facebook’s Pixel Code tracking to your Magento ecommerce website. The code should be added into the head.phtml file within your... November 2016 Why you should be using Magento for your ecommerce website There are many ecommerce platforms around, many offer a similar experience but time and time again Magento comes to the top of the list. Magento... October 2016 How to use PHP to submit a cURL request with HTTP Post data Straight forward script to POST an array of fields to a given URL. // First, set the URL you want to POST the data to... October 2016 Getting your product information ready for importing to your website Product imports are an inevitable part of any ecommerce project. At some point the information you have on your products wherever it may be stored... October 2016 You win Google: I’m Moving from keith.kg to keithgreer.dev Google’s automatic identification of a website’s intended audience using the top level domains means my .kg domain name has been slowly sliding down the rankings in... September 2016 Add Facebook Pixel Code to Magento Success Page Update: Instead of this, try the All-in-one Facebook Pixel Code method. It’s easier to maintain. Facebook Pixel Code is a new and even more complicated... July 2016 Quickfix: Quickly add a new Magento CMS page template Sometimes it’s necessary to quickly add a template for a page into the Magento content management system. This can be done via a custom extension... July 2016 Magento Code: Bulk add a new product attribute to all store attribute sets This little script is an excellent time saver for adding a new attribute to all of the attribute sets configured in your Magento store. There are a few... April 2016 Magento Code: UK and Ireland counties for region drop-down in addresses Full list of counties for the United Kingdom and Republic of Ireland. Run this SQL against your Magento database to replace the existing region text box... March 2016 Cloudflare: My next step for website optomisation I’ve been working to dramatically reduce page load times on my site. Load times were reduced from 6 seconds to about 3 just by minifying... March 2016 Why use an SSL?.. Number 3: Search Engine Optimisation Series: Why use an SSL? Security · 2. Confidence · 3. SEO Google has, since 2014, been giving sites with a secure certificate installed a boost within their ranking algorithm.... March 2016 Why use an SSL?.. Number 2: User Confidence Series: Why use an SSL? Security · 2. Confidence · 3. SEO As well as providing important security to your users the presence of an SSL certificate also enhances user... March 2016 I can get access to better internet in rural Mid Ulster than in North Belfast I can get access to better internet in rural Mid Ulster (a townland called Tyanee just across the River Bann from the town of Portglenone) than on the... March 2016 Why use an SSL?.. Number 1: Security Series: Why use an SSL? Security · 2. Confidence · 3. SEO The main reason to use an SSL certificate on your website is to secure sensitive information sent across... February 2016 Magento Issue: One Page Checkout appearing to jump to the bottom of the page after address is entered This is a recurring issue with Magento’s standard One Page Checkout. It most often occurs when the template has been updated to include lots of... February 2016 Useful .htaccess Rules: Setting the expires header for browser caching Expires headers let the browser know whether to server a cached version of the page. This can simultaneously help to reduce server load and increase... February 2016 MySQL Database Backup and Restore via Command Line (Copy-and-pasteable) Putting this together because I always end up checking online for the correct bash commands for Linux. These commands rely on your knowing for sure... February 2016 PayPal IPN notification errors with Magento This one has popped up a few times in the past. When PayPal has been set-up and configured to with Magento the store owner receives... February 2016 PHP: Use WordPress blog tags to find related posts A simple script that can be used to pull related-type posts for a WordPress blog post. The related aspect is based on the fist tag... January 2016 Google Chrome getting a new Security Panel for developers Google is set to add a new Security Panel to the Chrome browser to help developers visualise and troubleshoot network connections. The security panel provides... January 2016 PC Gaming Wins

2015

December 2015 Iceland 2015 A winter expedition around Iceland in December 2015 More posts on Instagram #IcelandMMXV View this post on Instagram #Iceland #IcelandMMXV #icebergs #glacier A post shared... December 2015 Magento 2.0: An introduction to what has changed At long last Magento 2.0 has finally be released into the wild. These are a few of the reasons merchants and developers should consider moving... November 2015 M1 Get your Magento store ready for Black Friday These are a few simple Magento 1 store configuration options that can help your store cope with increased traffic during Black Friday or any sort... November 2015 PHP Storm and making FTP connections with SSL (FTPS) If you’re having issues connecting to a server via FTPS in phpStorm I found that the magic combination for PHP Storm and FTP-SSL connections is…... November 2015 Web Application Security Testing Free and open source web application security test tools. **Burp Suite ** Free and commercial tool. Excellent adjunct to manual testing and has a good... November 2015 Magento: Clear all caches through command line When making certain changes to Magento, such as modifying source files, installing extensions, reverting changes, it is necessary to clear the cache in order for... September 2015 Steven says Slack messenger is awesome My collegue Steven Cotterill at The Tomorrow Lab has outlined just how useful a messenger app can be in a development environment. At the beginning of... August 2015 How to link to a PDF in WordPress WordPress is designed to be simple and easy to use. Adding linking to a downloadable document is no different. Open a post or page and... July 2015 M1 Import Values to Dropdown/Multiple Select Attributes This code is for Magento 1, it won’t work in Magento 2. Sometime when you need to deal with import of lots of values for... July 2015 M1 Batch updater for Magento Product SKUs This is a Magento 1 script, it won’t work for Magento 2. The script will loop through a CSV file and update the SKU on... June 2015 Block access based on Client IP using PHP This is a useful script to add at the start of any PHP file which you want hidden from a specific IP address or addresses.... May 2015 Useful .gitattributes defaults for Beanstalk Git Some useful copy-and-paste lines for the .gitattributes file when using Beanstalk Git. Image and other binary files Upload and store images as binary files, rather... May 2015 Upgrading to Google’s Universal Analytics in Magento The new Google Universal Analytics provides the opportunity for own measurement values and dimensions and allow you to track usage across platforms. Universal Analytics introduces a... May 2015 Add Google Analytics ecommerce:addTransaction to your Magento Store A quick and way way to record transactions to Google Universal Analytics. First add this piece of PHP to your success page at the end... May 2015 Add Static Blocks to CMS Pages in Admin Static Blocks are an easy way to include snippets of code or text on many pages throughout your Magento store. They can be used to... May 2015 Useful Excel Commands for Magento Image Import Magento image import can be pretty flaky with case and spaces in the filename of images being uploaded. =CONCATENATE("/",SUBSTITUTE(LOWER(F2)," ","")) The above code will add... February 2015 Magento Issue: Subtotal and Grand Total prices double at Cart/Checkout stages Have recently encountered an issue with prices in Magento Checkout appearing doubled. There are a number of solutions online which seem to (in various combinations)...

2014