Highlighting parent page in WordPress menus

Menus in WordPress are a really simple and easy way to manage various navigation bars in a theme. wp_nav_menu() does a lot of the work automatically and includes a number of CSS classes for styling. Highlighting the current page is especially useful using .current-menu-item and .current-menu-ancestor classes. There was one issue I recently ran into though. […]

Tip: str_replace()

Here’s a quick little tip for using PHP’s str_replace() with many values. Sometimes it’s fine to just do this: $string = str_replace( ‘to_replace’, ‘replacement_string’, $string ); $string = str_replace( ‘to_replace’, ‘replacement_string’, $string ); $string = str_replace( ‘to_replace’, ‘replacement_string’, $string ); That method is fine but can get messy with many replacements. Another method is to […]

Postmark API Wrapper for CodeIgniter

Notice: This project is no longer maintained. I’ve been using Postmark and it’s API for quite a while. If you’re still sending out emails through PHP’s mail() function, you need to check out Postmark! With Postmark you can off-load those transactional emails and not have to worry about it yourself. While there is a Postmark API […]

CodeIgniter Form with Text CAPTCHA

“A CAPTCHA (Completely Automated Public Turing Test To Tell Computers and Humans Apart) is a program that protects websites against bots by generating and grading tests that humans can pass but current computer programs cannot.” – captcha.net The current CAPTCHA system I started using is Text CAPTCHA. The Text CAPTCHA web service generates text-based CAPTCHAs which […]

Directory Listing from a Path

$path = dirname( __FILE__ ); $listing = array_filter( scandir( $path ), function( $var ) { // remove special directories ‘.’ and ‘..’ from listing if ( preg_match( ‘/^[.]{1,2}$/’, $var ) ) { return FALSE; } // remove files from listing if ( !is_dir( $var ) ) { return FALSE; } return TRUE; } ); This […]

Turn on Error Reporting

It’s PHP 101, yet so many developers fail to remember it. display_errors = On error_reporting = E_ALL | E_STRICT Always enable the display of errors on your development server, disable them on the live server. Showing all errors will help you find those stubborn programming mistakes quickly. Set these options in your php.ini file.

Modular Sidebar in WordPress

Like all good developers, I go back and look at past code to see what I could have improved and how I can apply the new knowledge to a current project. Both of the projects in question had sidebars with sections that are shared throughout the site. However, not all sections are being displayed at […]