How to Remove and Create Hidden WordPress Admin Pages

WordPress Admin Menu

WordPress provides add_menu_page() and add_submenu_page() for creating top-level menu and sub menu admin pages. Settings pages created with these functions usually appear in the admin menu.In this tutorial, we will learn how to remove admin pages / items from the admin menu and still be able to them directly via their page URL.Removing Top Level Menu Pages To remove top-level pages item in amin menu, use remove_menu_page() as … [Continue reading]

Query WordPress Posts in a Custom Post Type and Custom Taxonomy

WordPress WP_Query

Here is a quick tip on querying posts that belongs to a custom post type and category / custom taxonomy.Actually, I ran into this problem while working with Easy Digital Downloads plugin.I wanted to query a list of products in a given category. I thought the query will be easy to construct but I was wrong.Note: all EDD products are actually posts of a download custom post type and the category, a custom taxonomy with name … [Continue reading]

How to Download a Given Folder in a Github Repository via SVN

SVN export completed.

There are times we download or clone a full GitHub repository when all that is needed is a given folder in it.Say (like me) you use PHP Code Sniffer Tool to analyze and detect violations of a defined coding standard in PHP code and you've decided to include PSR2 standard to your list of installed standards.Instead of the old way of cloning or downloading the whole repository, i will show you how to download just the PSR2 folder via Apache … [Continue reading]

Adding Custom Admin Notices & Error alert in WordPress

Custom WordPress Admin Notices

When developing plugins for WordPress, I seldom use the Settings API to build the plugin settings page instead, I build it from ground-up utilizing the Options API to store the plugin data to the database.Not quite long, I discovered I could use the function add_settings_error() — a member of the Settings API family — to output custom admin notices/messages to users about settings validation problems, missing settings and even success … [Continue reading]

Set Default Editor Mode (TinyMCE / HTML) in WordPress

WordPress TinyMCE Editor

I recently built a plugin where I needed WordPress to by default always set its editor to Text (HTML) mode and not tinyMCE.This is achievable using the undocumented filer wp_default_editor.To make TinyMCE always display by default, use the code below.[php] function set_default_editor() { $r = 'tinymce'; return $r; } add_filter( 'wp_default_editor', 'set_default_editor' ); [/php]To make the text / HTML mode the default … [Continue reading]

Vagrant Fix: `parse': (<unknown>): found a tab character that violate intendation while scanning a plain scalar

Laravel homestead vagrant error

In case you haven't heard, I have move my PHP development from XAMPP to Vagrant, Laravel homestead box to be precise. A post on getting started with vagrant coming soon.As always whilst starting a new project, i added the site to Homestead.yaml, did Vagrant up and got the following error messages.c:/HashiCorp/Vagrant/embedded/lib/ruby/2.0.0/psych.rb:205:in `parse': (<unknown>): found a tab character that violate intendation while … [Continue reading]

How to Upgrade XAMPP to a Newer Version

XAMPP server

XAMPP is a popular PHP development environment for creating a local LAMP stack.In this succinct tutorial, I will show us how to upgrade XAMPP for Windows to a newer version in few steps.Firstly, download and install the latest version of XAMPP in a new installation folder.Say your older version is in C:\xampp and the newer version was installed in D:\xampp; Delete the htdocs and MySQL folder in D:\xampp and replace them with the … [Continue reading]

Remove Sensitive Data and Commits from Git History with BFG Repo-Cleaner


Earlier today, I accidentally committed a sensitive data of a project I was working on to a public Github repository.To remove every trace of that data on Github, I had to remove all history of the file that contained the said data.In this succinct article, I will show us how to remove or delete all Git history of a file on Github using BFG Repo-CleanerNote: BFG Repo-Cleaner do not clean-up the latest commit and assume it is the good … [Continue reading]