Tag Archives: WordPress

Camp Out Colorado

CampOutColorado.com is a website I created to review campgrounds and give outdoor enthusiasts tips and tricks to enjoying beautiful Colorado. There are a number of WordPress customizations I have done to this website. 

Campground Data Custom Plugin

For the camping reviews I created a custom campground information plugin. It pulls up-to-date information for campgrounds through a REST API. These help campers see important details as well as know if there are any up to date details they need. 

Camping List Custom Plugin

To help campers be prepared to go camping I have created a number of camping lists for them to reference.

This is implemented through a custom WordPress plugin which stores all the information in a custom MySQL database. These camping lists are broken down into three categories of need. The items in the lists are linked to searches on Amazon so they can easily get the an item them are missing. 

http://www.campoutcolorado.com/camping-lists/general-equipment-camping-list/

Custom Template for Solunar Table

Hunting and fishing are a regular activity with campers in Colorado. I have created a few useful tools for them. One is a solunar calendar to figure out good activity times. This was created as a customized template in WordPress. 

This solunar calendar takes the moon cycle, rise and set times of the moon, as well as the sun and uses an algorithm to calculate good times to go fishing or hunting. It then displays these times, the moon cycle and a number of fish depending on how good the day looks. In the example below the solunar calculations suggest a bad day fishing, so go for a hike instead!

Custom Fish Stocked Plugin and Database

Another one of the tools I have created to help campers enjoy their time in the great out of doors is a fish stocking report with the quality of stocking in the body of water.  This a nice add-on plugin that also enhances the campground details plugin. 

This is updated weekly from the data that the Colorado Division of Wildlife releases. I created some search capability within this dataset so a user can find the area they are looking for.

Within this plugin I added the ability to calculate the quality of fishing at any particular spot depending on the date and frequency of fish stocking. 

The best part is that it ties into the camping details plugin and adds extra information to the details if there is water nearby that the campers can enjoy.  

Technologies Used

  • AJAX
  • Bootstrap
  • cPanel
  • CSS
  • Dreamweaver
  • HTML
  • jQuery
  • JSON
  • MySQL
  • Photoshop
  • PHP
  • REST API
  • WordPress
  • Workbench

I’ve used a wide variety of technology and techniques on this website. Starting at as little more than a camping blog it has become something that has a lot of really cool features and is very useful to anyone who enjoys camping, especially in Colorado. 

http://campoutcolorado.com

SoCO Donor Tracking

This is a private website I created for a political group who needed an easy way to account for contributions, donors, and expenses. This is a very simple website with custom plugins and database work to keep track of all of this information.

Custom Donor Tracking Plugin

This website is powered by a custom WordPress plugin written in PHP. It creates the ability to add custom shortcodes to pages to produce forms and data tables.

Download Report CSV Files

One of the main features requested by the customer was to be able to query contributions in a variety of different ways. Then they needed to be able to download this queried information to use in their reporting. So I created a complex search form so they could filter through all of the information in a variety of different ways. Once they were satisfied with the dataset they could click a button to download the information from the database.

Technology Used

  • AJAX
  • Bootstrap
  • cPanel
  • CSS
  • Dreamweaver
  • HTML
  • jQuery
  • JSON
  • MySQL
  • Photoshop
  • PHP
  • REST API
  • WordPress
  • Workbench

Unfortunately I am unable to share the links to this website as it is a private, login only, website. However, hopefully the information provided shows some of what the project required and how it was delivered.

WordPress Cron Can Kill a Website

I have run into this several times now so I thought I would write a quick article on it. It seems that WordPress’s cron really mess up a website.  Too many cron events will slow down your website. It can even cause timeout errors and out of memory issues.

What is cron?

Cron is basically a system to run programs in the background operation of your website. For a detailed explanation find out more here: Cron Info.

WordPress cron runs every time someone goes to your website. This is great as many plugin creators design software to do all kinds of fun and interesting things with your website. The downside is that these cron tasks can add up if not properly cleaned up. The average WordPress blog creator may not even know this exists. Worse, it can get full of all kinds of useless or out of data cron jobs.

The trouble is all these cron jobs are still queried, and possibly run, every time someone goes to your website. Over time this will certainly slow down your site. Especially if you experiment with many different plugins as many of them will leave residual cron tasks when they are uninstalled.

Check the WordPress Cron

First check your the WordPress cron and see if there is an unreasonable amount of cron jobs.

What’s unreasonable? That can vary greatly but I would say over 50 and you probably have too many. On my latest website with issues there were almost 20,000! Hard to say where they came from, but they needed to be cleared out!

First and foremost always backup your database when doing anything in it.

I prefer to go directly into the database with phpMyAdmin. Run the following SQL query.

This will retrieve the record of your cron jobs. In the option value field you will see something like this.

The only thing you really need to worry about is the very beginning of this entry. It will tell you how many cron jobs are present. In this case, there are 20.

In my case it looked like this.

19722! Yikes. This was pretty much crashing the website. Good news though. It is really easy to fix. Simply delete the cron entry and because of the magic and quality of WordPress the cron will be rebuilt the next time someone goes to your website. Easy as that!

Now you may need to go though and check your plugins, anything that schedules tasks, and verify that they are still scheduled and working. In most cases they will be. If not, set up the task again. These are things like calendars, auto backups, auto posts etc. All of these are done through cron jobs.

There is also a pretty cool plugin you can use to look at your cron jobs in a more UI friendly way.

https://wordpress.org/plugins/wp-crontrol/

Hopefully this helps you clean up and speed up your WordPress site!

Manually Change WordPress Theme to Default in Database

Here is how to manually change the WordPress theme to a default (Twenty Fifteen) in database. Do not use this method if you are not familiar with manually editing your WordPress Database in phpMyAdmin.

The three option_name rows in the database that need to be changed. These are what control which theme is currently active on your WordPress website.

  • template – the “Theme Name” as defined in style.css
  • stylesheet – the actual name of your theme folder
  • current_theme -the actual name of your theme folder

CREATE A BACKUP OF YOUR DATABASE BEFORE YOU BEGIN!

This tutorial on how to manually change WordPress theme to default assumes that the prefix of your database is wp_. If it isn’t, make sure to change the code presented below to match.

SQL to Find WordPress Theme Settings

First, run this to see what the current theme is set in your WordPress website.

Copy this information to somewhere safe. This is so you can quickly revert or change it later if you would like to.

SQL to Change Theme to Default in WordPress

Make sure that you have the default theme for WordPress loaded into /wp-content/themes/. For this example I am using the Twenty Fifteen WordPress default theme.

This works with ANY theme. Just make sure the theme files are loaded into your website.

Run the following code. Change ‘twentyfifteen’ to whatever WordPress theme you are using if not Twenty Fifteen.

Problems Changing WordPress Theme Default Manually

The most common problems are:

  • Typo in SQL
  • Missing Theme Files
  • Cached Page – Purge or Disable Cache

Please let me know if I missed anything or if you have additional tips.

This is a really handy fast trick to use to fix a WordPress website that you cannot access normally. Manually changing WordPress theme to default in the database is a fast and great way to test out and debug your website.

Combine WordPress and phpBB with WP-United

Update 8/1/2014:

Good news! It appears this plugin has been picked back up. This is great as it is really the only thing out there that brings phpbb and wordpress together. I have installed it and am using it on FyxtRPG.com and it is working well. I am not using the more advanced features, just the shared login. But so far so good!

UPDATE:

After some investigation it appears the plugin author for this has not been active in either the WordPress or phpBB communities since March 11, 2013. It does not appear this is supported anymore. It is probably a bad idea to use it now.

 

If you are looking for a way to integrate phpBB with WordPress it seems that WP-United : phpBB WordPress Integration is the way to go. I have only started working with it but it seems to work quite well to bring phpBB into WordPress. It is great to be able to have such a robust forum inside of WordPress.  I will post more when I have a better feeling for it.

For now I am going to post a few of the support files that are needed for it since their website seems to be temporarily down.

You will need to have AutoMOD installed in your phpBB board. That can be found here: https://www.phpbb.com/mods/automod/

Then you will need the mod by WP-United. This can be downloaded: wp-united-release-phpbb.zip

Just upload that file in AutoMOD in the ACP of phpBB and you should then be able to connect and manage your users.

Remove Date from WordPress Permalink URLs for SEO with htaccess

When using WordPress for your website it will default to the standard URL format showing the page number. However, many of us have changed or initially set up our WordPress blogs using the dates in the URL’s such as imageinnovationsllc.com/2013/1/my-blog-post. Initially you might think that the date in the URL may be helpful for visitors to your website to help them know when an article was initially written. It may be helpful, but has been shown to actually hurt your website. Visitors might not have confidence in an older article, even if it is a great article and valid the day they visit it. Most importantly though, it clutters up your URL and ultimately will hinder your search engine rankings.

WordPress permalink setting allows bloggers to customize the structure of a URL. Doing so correctly will help your WordPress website to be search engine optimized, improve the aesthetics, usability, and forward-compatibility of navigation and links. Within WordPress’s Permalinks setting, WordPress presents a few common permalinks structure, of which at least two are date-based.

The data-based permalinks have the following URL structure:

Year/Month/Day/Post-Title: http://www.imageinnovationsllc.com/2013/02/20/sample-post/
Month/Day/Post-Title: http://www.imageinnovationsllc.com/2013/02/sample-post/

The date in URL unnecessary adds to the length of URL, can dissuade visitors, and hurt SEO. The best SEO practice is to strike off and remove the /yyyy/mm/dd or /yyyy/mm from the URL structure of the WordPress permalinks.

Here’s a quick tutorial on how to change the permalinks structure of your WordPress websites URLs with proper redirect in the .htaccess file. This will help your WordPress website to avoid 404 page not found errors and minimize the loss of traffic due to incoming out of date URL’s any links to your website. This will help your navigation, make your site more user friendly, improve your SERPs, and Google’s PageRank.

The URL’s of your WordPress premalinks will end up in this format: http://www.imageinnovationsllc.com/sample-post/ This should be the format that most WordPress websites or any other website should strive for. It is clear and concise and will help users and search engines better understand and use your website.

  1. First change the permalinks configuration in your Worpress. Go to the WordPress Dashboard of your website and navigate to Settings -> Permalinks.
  2. Select Post name in WordPress Permalink Settings..
  3. Select Save Changes in WordPress Permalink Settings.
  4. FTP or SSH into the web server which hosts the WordPress installation, and go to the directory where the .htaccess file is located for the site. This should be in the WordPress website root directory.
  5. Create a copy of the .htaccess file. Sample: .htaccess_backup
  6. Edit the .htaccess file directly. OR Download the .htaccess file and edit it locally. Then upload it when you are done.
  7. Edit the .htaccess with editor such as notepad, Wordpad, or any other text file editor.
  8. Add one of the two code blocks below depending on your old URL structure above the WordPress code in your .htaccess file.

For existing permalinks with /%year%/%monthnum%/%day%/%postname%/:

RewriteEngine On
RewriteBase /
RewriteRule ^([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ /$4 [R=301,NC,L]

For existing permalinks with /%year%/%monthnum%/%postname%/:

RewriteEngine On
RewriteBase /
RewriteRule ^([0-9]+)/([0-9]+)/(.*)$ /$3 [R=301,NC,L]

  1. Save the WordPress .htaccess file.
  2. Immediately test your WordPress website. Any error in the code can easily shut down your site with server errors. Access your WordPress website to be sure it is still functional. If it is not. Replace the edited .htaccess file with your backup or change the file back to how it was. Then try to enter the code again.
  3. With your WordPress website working enter a few links with the old URL structure to test that the redirection is working properly.

You may want to utilize MySQL replace function to replace the links with old permalink structure in posts, pages and comments to new URLs directly in database, much like what is been done when moving WordPress to new domain or location. Useful when you have thousands of articles which make manual changing impossible.

You can easily track problem URL’s with Google Webmaster Tools. This is an invaluable to keep track of the health of your site and to discover and correct issues that may be hurting your SEO and Google rankings.

WordPress Update Services List 200+ Ping Services

If you have a WordPress blog and website, you need to be able to have people find it on the internet. There are a million different things you can do to drive traffic to your web site but few are as easy as making sure that the blog servivces out on the internet are aware of your blog. Not only do these blog services need to know your blog exists, they also need to know when and what you publish on your website. One of the first steps to accomplishing this is to make sure that your WordPress settings are set up so that your WpordPress blog will announce new content. WordPress has a setting that you can just add the URL’s of these updating services and WordPress will handle the rest. Some hosts may not support pinging your blog. If this is the case, get another web hosting provider. I recommend FatCow > Host your Web site with FatCow!.

How To Use the WordPress Update Services List

  1. Go to the Admin panel in your WordPress website.
  2. Open Settings in the WordPress Admin menu.
  3. Select Writing in the WordPress Admin menu.
  4. Go down to the bottom of the WordPress writing settings page and you will see a section titled Update Services.
  5. Copy the WordPress Update Service List below. (Control+C)
  6. Paste the WordPress Update Service List into the box for the Update Services. (Control+V) Make sure there is one URL per line or the WordPress Update Service will not work correctly.
  7. Make sure to save your save your settings in WordPress.

It’s as easy as that to update your WordPress Update Services. Now, whenever you post something new on your WordPress website all of these services will be pinged with the changes to your website. This can increase your website traffic quite a bit in some cases.

Here is a WordPress Update Services List I have compiled from about a dozen “comprehensive” lists that all were missing some update services or another.

WordPress Update Services List

  • http://rpc.pingomatic.com/
    http://pingler.com
    http://api.feedster.com/ping
    http://api.moreover.com/ping
    http://api.moreover.com/RPC2
    http://api.my.yahoo.co.jp/RPC2
    http://api.my.yahoo.com/RPC2
    http://api.my.yahoo.com/rss/ping
    http://audiorpc.weblogs.com/RPC2
    http://bblog.com/ping.php
    http://blog.goo.ne.jp/XMLRPC
    http://blogdb.jp/xmlrpc/
    http://blogdigger.com/RPC2
    http://blogpeople.net/servlet/weblogUpdates
    http://www.blogpeople.net/servlet/weblogUpdates
    http://bulkfeeds.net/rpc
    http://ping.myblog.jp/
    http://ping.bloggers.jp/rpc/
    http://coreblog.org/ping/
    http://ping.blo.gs/
    http://ping.cocolog-nifty.com/xmlrpc
    http://ping.syndic8.com/xmlrpc.php
    http://ping.weblogalot.com/rpc.php
    http://pinger.blogflux.com/rpc
    http://rpc.blogrolling.com/pinger/
    http://rpc.icerocket.com:10080/
    http://blogsearch.google.ae/ping/RPC2
    http://blogsearch.google.at/ping/RPC2
    http://blogsearch.google.be/ping/RPC2
    http://blogsearch.google.bg/ping/RPC2
    http://blogsearch.google.ca/ping/RPC2
    http://blogsearch.google.ch/ping/RPC2
    http://blogsearch.google.cl/ping/RPC2
    http://blogsearch.google.co.cr/ping/RPC2
    http://blogsearch.google.co.hu/ping/RPC2
    http://blogsearch.google.co.id/ping/RPC2
    http://blogsearch.google.co.il/ping/RPC2
    http://blogsearch.google.co.in/ping/RPC2
    http://blogsearch.google.co.it/ping/RPC2
    http://blogsearch.google.co.jp/ping/RPC2
    http://blogsearch.google.co.ma/ping/RPC2
    http://blogsearch.google.co.nz/ping/RPC2
    http://blogsearch.google.co.th/ping/RPC2
    http://blogsearch.google.co.uk/ping/RPC2
    http://blogsearch.google.co.ve/ping/RPC2
    http://blogsearch.google.co.za/ping/RPC2
    http://blogsearch.google.com.ar/ping/RPC2
    http://blogsearch.google.com.au/ping/RPC2
    http://blogsearch.google.com.br/ping/RPC2
    http://blogsearch.google.com.co/ping/RPC2
    http://blogsearch.google.com.do/ping/RPC2
    http://blogsearch.google.com.mx/ping/RPC2
    http://blogsearch.google.com.my/ping/RPC2
    http://blogsearch.google.com.pe/ping/RPC2
    http://blogsearch.google.com.sa/ping/RPC2
    http://blogsearch.google.com.sg/ping/RPC2
    http://blogsearch.google.com.tr/ping/RPC2
    http://blogsearch.google.com.tw/ping/RPC2
    http://blogsearch.google.com.ua/ping/RPC2
    http://blogsearch.google.com.uy/ping/RPC2
    http://blogsearch.google.com.vn/ping/RPC2
    http://blogsearch.google.com/ping/RPC2
    http://blogsearch.google.de/ping/RPC2
    http://blogsearch.google.es/ping/RPC2
    http://blogsearch.google.fi/ping/RPC2
    http://blogsearch.google.fr/ping/RPC2
    http://blogsearch.google.gr/ping/RPC2
    http://blogsearch.google.hr/ping/RPC2
    http://blogsearch.google.ie/ping/RPC2
    http://blogsearch.google.in/ping/RPC2
    http://blogsearch.google.it/ping/RPC2
    http://blogsearch.google.jp/ping/RPC2
    http://blogsearch.google.lt/ping/RPC2
    http://blogsearch.google.nl/ping/RPC2
    http://blogsearch.google.pl/ping/RPC2
    http://blogsearch.google.pt/ping/RPC2
    http://blogsearch.google.ro/ping/RPC2
    http://blogsearch.google.ru/ping/RPC2
    http://blogsearch.google.se/ping/RPC2
    http://blogsearch.google.sk/ping/RPC2
    http://blogsearch.google.tw/ping/RPC2
    http://blogsearch.google.us/ping/RPC2
    http://rpc.technorati.com/rpc/ping
    http://rpc.weblogs.com/RPC2
    http://topicexchange.com/RPC2
    http://www.blogdigger.com/RPC2
    http://xping.pubsub.com/ping
    http://ping.weblogs.se/
    http://blogmatcher.com/u.php
    http://trackback.bakeinu.jp/bakeping.php
    http://ping.bitacoras.com/
    http://ping.blogmura.jp/rpc/
    http://xmlrpc.blogg.de/
    http://1470.net/api/ping
    http://xping.pubsub.com/ping/
    http://ping.feedburner.com/
    http://rpc.newsgator.com/
    http://www.blogstreet.com/xrbin/xmlrpc.cgi
    http://www.newsisfree.com/RPCCloud
    http://blog.goo.ne.jp/XMLRPCishinao.net
    http://blogdb.jp/xmlrpc
    http://blogstreet.com/xrbin/xmlrpc.cgi
    http://coreblog.org/ping
    http://newsisfree.com/RPCCloud
    http://ping.bloggers.jp/rpc
    http://ping.blogmura.jp/rpc
    http://rpc.blogrolling.com/pinger
    http://blogpeople.net/ping
    http://feedsky.com/api/RPC2
    http://hamo-search.com/ping.php
    http://holycowdude.com/rpc/ping
    http://newsblog.jungleboots.org/ping.php
    http://ping.blogoon.net/
    http://ping.blogs.yandex.ru/RPC2
    http://ping.fc2.com/
    http://ping.kutsulog.net/
    http://ping.namaan.net/rpc
    http://ping.snap.com/ping/RPC2
    http://ping.wordblog.de/
    http://r.hatena.ne.jp/rpc
    http://rpc.bloggerei.de/ping
    http://rpc.reader.livedoor.com/ping
    http://rpc.technorati.jp/rpc/ping
    http://rpc.twingly.com/
    http://wasalive.com/ping
    http://zhuaxia.com/rpc/server.php
    http://rpc.pingomatic.com
    http://rpc.twingly.com
    http://www.blogshares.com/rpc.php
    http://www.blogsnow.com/ping
    http://www.newsisfree.com/xmlrpctest.php
    http://ping.feedburner.com
    http://www.feedsubmitter.com
    http://blo.gs/ping.php
    http://www.pingerati.net
    http://www.pingmyblog.com
    http://geourl.org/ping
    http://ipings.com
    http://www.weblogalot.com/ping
    http://rpc.blogcatalog.com/
    http://rpc.icerocket.com:10080
    http://www.bloglines.com/ping
    http://a2b.cc/setloc/bp.a2b
    http://api.my.yahoo.com/ping
    http://bitacoras.net/ping/
    http://blog.goo.ne.jp
    http://blogdb.jp
    http://blogoole.com/ping/
    http://blogoon.net/ping/
    http://blogsnow.com/ping
    http://blogupdate.org/ping/
    http://effbot.org/rpc/ping.cgi
    http://holycowdude.com/rpc/ping/
    http://imblogs.net/ping/
    http://lasermemory.com/lsrpc/
    http://packetmonster.net/xmlrpc.php
    http://ping.amagle.com/
    http://ping.bitacoras.com
    http://ping.blogg.de/
    http://ping.exblog.jp/xmlrpc
    http://ping.fakapster.com/rpc
    http://ping.feeds.yahoo.com/RPC2/
    http://ping.myblog.jp
    http://ping.rootblog.com/rpc.php
    http://pingoat.com/
    http://pingoat.com/goat/RPC2
    http://pingqueue.com/rpc/
    http://popdex.com/addsite.php
    http://rcs.datashed.net
    http://rcs.datashed.net/RPC2/
    http://rpc.blogbuzzmachine.com/RPC2
    http://rpc.bloggerei.de/ping/
    http://rpc.britblog.com/
    http://rpc.tailrank.com/feedburner/RPC2
    http://rpc.wpkeys.com
    http://services.newsgator.com/ngws/xmlrpcping.aspx
    http://snipsnap.org/RPC2
    http://syndic8.com/xmlrpc.php
    http://thingamablog.sourceforge.net/ping.php
    http://topicexchange.com
    http://wasalive.com/ping/
    http://weblogues.com/ping/
    http://weblogues.com/RPC/
    http://www.a2b.cc
    http://www.a2b.cc/setloc/bp.a2b
    http://www.bitacoles.net/ping.php
    http://www.blogoole.com/ping/
    http://www.blogoon.net/ping/
    http://www.blogpeople.net
    http://www.blogroots.com
    http://www.blogsdominicanos.com/ping/
    http://www.catapings.com/ping.php
    http://www.feedsky.com/api/RPC2
    http://www.holycowdude.com/rpc/ping/
    http://www.imblogs.net/ping/
    http://www.lasermemory.com
    http://www.mod-pubsub.org/ping.php
    http://www.popdex.com
    http://www.popdex.com/addsite.php
    http://www.snipsnap.org
    http://www.snipsnap.org/RPC2
    http://www.weblogues.com
    http://www.weblogues.com/RPC/
    http://www.xianguo.com/xmlrpc/ping.php
    http://www.zhuaxia.com/rpc/server.php
    http://xmlrpc.blogg.de
    http://zing.zingfast.com
    http://bitacoras.net/ping
    http://www.blogroots.com/tb_populi.blog?id=1
    http://www.lasermemory.com/lsrpc/
    http://mod-pubsub.org/kn_apps/blogchatt
    http://www.mod-pubsub.org/kn_apps/blogchatter/ping.php
    http://blogs.yandex.ru/
    http://rpc.bloggerei.de/
    http://www.feedgy.com/
    http://ping.rss.drecom.jp
    http://rpc.odiogo.com/ping/
    http://pinger.blogflux.com/rpc/
    http://rpc.wpkeys.com/
    http://signup.alerts.msn.com/alerts-PREP/submitPingExtended.doz
    https://phobos.apple.com/WebObjects/MZFinance.woa/wa/pingPodcast

If there are any services you know about that are not on this list please post them below and I will get them added ASAP.

Good luck blogging with WordPress!