Updating WordPress to 3.7.1 and then some of its 80+ plugins
I need to update The Commons. We have been at 3.5.2 for far too long. With our CELT team, we have decided to update to the security update 3.7.1 because it is a security update but no further. This may have the side effect of breaking some plugins. We will see what we can live with and what fixes, replacements and compromises we have to make on long the way.
Upgrade to 3.7.1
Ho hum, as we are not go up to 3.8.1 which would be as simple as clicking on update I have to manually update using the distributed code. I followed the instructions. Before embarking on this journey I had a look for something that would tell me, for our WMPU install, which plugins are activated network wide and which one are activated on individual sites within the network. To do this I used ‘WPMU Plugin Stats‘. I printed this to paper and to PDF so I can tick things off and make notes.
Before doing the update it is important to deactivate all plugins and to run wp-admin/update.php and update the network before enabling them again according to the record I have made.
Here goes, the re-activate…
- External Group Blogs : bp-groups-externalblogs.php on line 308, bad prepare statement
Updating the plugins…went much better than usual. This gave me the time to look at our missing LDAP Options page. This was fixed by following the instructions for WPMU Ldap Authentication. And to tidy up some tables that were not created when we were having server problems. To fix these I looked for errors in the error logs complaining about not being able to write to tables. These errors would have the affected blog, a number, as a substring e.g. wp_133_visitor_maps_st. This script:
#!/bin/bash mysql -uroot -p ourblog <<HERE CREATE TABLE \`wp_$1_visitor_maps_wo\` ( \`session_id\` varchar(128) NOT NULL DEFAULT '', \`ip_address\` varchar(20) NOT NULL DEFAULT '', \`user_id\` bigint(20) unsigned NOT NULL DEFAULT '0', \`name\` varchar(64) NOT NULL DEFAULT '', \`nickname\` varchar(20) DEFAULT NULL, \`country_name\` varchar(50) DEFAULT NULL, \`country_code\` char(2) DEFAULT NULL, \`city_name\` varchar(50) DEFAULT NULL, \`state_name\` varchar(50) DEFAULT NULL, \`state_code\` char(2) DEFAULT NULL, \`latitude\` decimal(10,4) DEFAULT '0.0000', \`longitude\` decimal(10,4) DEFAULT '0.0000', \`last_page_url\` text NOT NULL, \`http_referer\` varchar(255) DEFAULT NULL, \`user_agent\` varchar(255) NOT NULL DEFAULT '', \`hostname\` varchar(255) DEFAULT NULL, \`provider\` varchar(255) DEFAULT NULL, \`time_entry\` int(10) unsigned NOT NULL DEFAULT '0', \`time_last_click\` int(10) unsigned NOT NULL DEFAULT '0', \`num_visits\` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (\`session_id\`), KEY \`nickname_time_last_click\` (\`nickname\`,\`time_last_click\`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; CREATE TABLE \`wp_$1_visitor_maps_st\` ( \`type\` varchar(14) NOT NULL DEFAULT '', \`count\` mediumint(8) NOT NULL DEFAULT '0', \`time\` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (\`type\`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; HERE
This will represent a big improvement in the service. Now to look at some blogs to see if the updates have worked…