How to exclude folders in Notepad++ search

In Notepad++, one of my features that I use a lot is “Find in Files”. If you ever use this feature, I’m sure you will agree that it’s a very powerful search (and replace) feature.

The problem is that Notepad++ search feature cannot exclude folders.

In WordPress plugin/theme project I often need to use Grunt or Gulp or Composer and it generate folders such as “node_modules”. And it’s usually very large in size with tons of library and codes.

I usually move them to other directory before I search, but I found a very simple trick to exclude it. Read More How to exclude folders in Notepad++ search

You Don’t Need “wp_localize_script()” to Get “admin-ajax.php”

The most common method to use AJAX in WordPress is using admin-ajax.php + WordPress hook system.

And one of the recommended method to get this file URL is by using wp_localize_script(). This method is explained in details in my other tutorial WordPress AJAX for Beginners.

However, there is an alternative method.

Read More You Don’t Need “wp_localize_script()” to Get “admin-ajax.php”

Help! I Can’t Find The Right WordPress Contact Form Plugin

In WordPress we have a lot of options to create contact forms. But I can’t seem to find the best solutions. I even think to create my own contact forms plugin.

My Requirements Are:

  1. Responsive.
    Not only in form output/front-end. Administration panel need to work in mobile devices. Well, at least usable, I understand that some features might need to be hidden/disabled in small screen devices for usability and UX. But not broken.
  2. Use WordPress UI:
    Seamless integration with WordPress, native-feel. I’m not a fan of app-like fancy UI. Professional. No excessive branding with cute icon/logo. If possible no cross-selling of add-ons/upgrade (or easy way to disable it).
  3. Simple and easy to use:
    User need to be able to use it without the need to learn proper form HTML markup.
  4. Little to no learning curve:
    No excessive features, I just need a contact form not a shopping cart, not a user registration form. If the code base is extendable and able to do all this via add-on that’s a plus. But it’s not necessary and not needed in the “core” plugins.
  5. Theme and Template Friendly:
    Can be added in a page template, any template file, no need to be in the “loop”. Simple shortcode to display the form should work with do_shortcode() function.

So, basically, something basic that I can use on my clients site and that’s it.

Of course anti spam features (maybe custom honey pot or integration with recaptcha/akismet) is also a requirements.

Here are several of my issue with current contact forms solutions (not in particular order):

Read More Help! I Can’t Find The Right WordPress Contact Form Plugin

Why Do We Ask: What’s Your Budget?

I didn’t ask this question a lot. But recently a client linked to an article, possibly to make sure I didn’t ask for their estimate budget for the project (which is fine):

The Worst Question To Ask Your Clients: “What’s Your Budget?”

The article covers some valid points. Asking budget question might be a sign for:

  1. Lack of knowledge
  2. Signal of deception
  3. No value
  4. No due diligence, etc.

But I don’t always agree. In some case asking for budget is totally fine. Read More Why Do We Ask: What’s Your Budget?

WordPress AJAX for Beginners


In recent projects I use AJAX more, and I think it’s time to share my knowledge. This tutorial is just a simple guide to understand the basic about using AJAX in WordPress.

To follow this tutorial you will need to understand the basic of:

  1. Simple jQuery / JavaScript
  2. Simple PHP
  3. How form works
  4. Register and Enqueue Scripts in WordPress
  5. Register WordPress shortcode (example plugin)

Read More WordPress AJAX for Beginners

Rate My Setup


Today I sold my Asus Zenfone 5 for $50.  I bought it 2 years ago for around $200.

For the replacement, instead of getting a better phone. I bought $80 Hisense (chinese) budget phone. And I also bought cheap $15 bluetooth game-pad. And I’m very happy with it.

It’s amazing how fast technology accelerate. My new phone is faster and snappier with less than half the price of my old phone.