WordPress/ClassicPress Plugin Development: Checking If Function Exists In Namespace

WordPress PluginI’ve been developing my own plugins for WordPress and, more reently, ClassicPress. At times it’s been necessary to check if a function exists.

It’s fairly straightforward to do this check:

if (!function_exists('azrcrv_get_breadrumbs')){
	// code here
}

I also use a few plugins developed by other people. One of the ones I’ve been reviewing recently is Estimated Read Time by CodePotent.

John uses namespaces in his plugins which means the check also needs to include the namespace. You can check for this using the following syntax (the highlighted section is the namespace defined in the plugin):

if (function_exists('CodePotent\EstimatedReadTime\process_shortcode')){
	// code here
}

I’m posting this as a reminder to myself as it took me a few minutes of searching before I found the right answer.

How To Downgrade WordPress 5.0.3 to 4.9.9

WordPressI’ve discussed before the problems WordpRess 5 and Gutenberg present me; I’ve avoided upgrading to WordPress 5 and remained on WordPress 4.9.x as I plan my migration to ClassicPress.

Despite remaining on the WordPress 4.9.x branch and telling WordPress, via the config file, to only allow minor upgrades within that branch, the admin dashboard has a large Update Now button which will upgrade you to WordPress 5. Today I had an accident and clicked this button when I intended to click the Update Plugins button.

WordPress dashboard showing Update Now and Update Plugins buttons

Continue reading “How To Downgrade WordPress 5.0.3 to 4.9.9”

Local by Flywheel: Review

Local By FlywheelThis post is part of the series on Local by Flywheel.

Over the course of this series, I’ve installed Local by Flywheel, created and tested the default WordPress site and also accessed the local development site from the Internet.

Overall I have been very impressed with Local by Flywheel. It is a very easy installation, flexible yet simple setup and easy enough to access both internally and externally.

It would be nice, in future, to see ClassicPress available as a default install rather than having to either migrate the default WordPress one or manually replace it with ClassicPress, but that might come with time as ClassicPress grows.

Click to show/hide the Local by Flywheel Series Index

Local by Flywheel: Test Updated Site Works

Local By FlywheelThis post is part of the series on Local by Flywheel.

The change to the wp.config file is the last of the changes needed to complete the migration of the live site into Local by Flywheel.

With the complete, you can access the site and test to make sure that everything has migrated correctly.

Click to show/hide the Local by Flywheel Series Index

Local by Flywheel: Update wp.config

Local By FlywheelThis post is part of the series on Local by Flywheel.

The final step of migrating a live site into Local by Flywheel is to change the wp.config file; this is what tells the WordPres site which database to connect and the credentials to do so.

The settings required for the wp.config file can be found on the Database tab in Local by Flywheel:

Database tab showing connection settings

Continue reading “Local by Flywheel: Update wp.config”

Local by Flywheel: Upload Own Files

Local By FlywheelThis post is part of the series on Local by Flywheel.

With the database restored, the next step is to upload the files from the live site. I used FileZilla to FTP to the site and download the files.

One you have the files downloaded, they need to be copied to the Local by Flywheel version of the site. The fields are accessible using Windows Explorer. The easiest way to get to the folder, is via the Overview tab. On this tab, click the open button (arrow in circle) below the site name:

Site Overview tab showing the open button.

This will launch Windows Explorer to the Local Sites folder; expand the required site >> app >> public; all of the files in here can be deleted and replaced with the ones downloaded from the live site:

Windows Explorer showing the site

As well as uploading files from a live site, you could also upload the files to transfer your site from WordPress to ClassicPress.

Click to show/hide the Local by Flywheel Series Index

Local by Flywheel: Update Links in Database

Local By FlywheelThis post is part of the series on Local by Flywheel.

In the last post of this series, I restored the database from my live blog into Local by Flywheel. The next step is to change the references in the database from my live domain address (http://www.azurecurve.co.uk) to the one local to Local by Flywheel (azurecurve.local).

I did this by running the following SQL query against the database using mySQL Workbench:

/*
Created by Ian Grieve of azurecurve|Ramblings of a Dynamics GP Consultant (http://www.azurecurve.co.uk)
This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int).
*/
UPDATE
	local.azc_options
		SET
			post_content = 
						REPLACE(
								post_content
                                , 'http://www.azurecurve.co.uk'
                                , 'http://azurecurve.local');
UPDATE
	local.azc_posts
		SET
			post_content = 
						REPLACE(
								post_content
                                , 'http://www.azurecurve.co.uk'
                                , 'http://azurecurve.local');

Click to show/hide the Local by Flywheel Series Index

Local by Flywheel: Upload Own Database

Local By FlywheelThis post is part of the series on Local by Flywheel.

To migrate an existing site into Local by Flywheel, the first step is to restore your database. To make the backup, I used the mySQL Workbench, but many tools can be used to make and restore a backup of the database.

The first step is to backup your database from your current web host. Once you have this backup file, you need to restore it to the Local by Flywheel database.

The connection details for this database are available from the Local by Flywheel app on the Database tab:

azurecurve Database page

With these details you can use mySQL Workbench to connect and restore the database.

Click to show/hide the Local by Flywheel Series Index

Local by Flywheel: Migrate Site to Local by Flywheel

Local By FlywheelThis post is part of the series on Local by Flywheel.

Over the last few posts, I’ve installed Local by Flywheel and used it to deploy a WordPress site for local development and testing. However, it is capable of so much more than this.

The WordPress site it creates can be migrated to ClassicPress using the migration plugin so that you can test that fork of WordPress 4.9.8.

You can also load an existing site into Local by Flywheel so that you can develop and test on a replica of your site. Over the next few posts, I am going to cover the steps I used to migrate my blog.

Click to show/hide the Local by Flywheel Series Index

Local by Flywheel: Access Site From External Location

Local By FlywheelThis post is part of the series on Local by Flywheel.

You are able to give access to people externally in order that they can view your site in Local by Flywheel. You do this from the site overview page, by clicking the Enable button at the bottom of the screen:

Site Overview screen

Continue reading “Local by Flywheel: Access Site From External Location”