Category: Web Dev Log

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

How to Redirect On Theme Activation


WordPress plugin have a activation method, It’s very useful, and we can use it for various things.

One of the popular method in plugin, is “Activation Redirect”, this is a method used by a lot ( I mean **A LOT**) of popular plugins to redirect user to plugin settings page, setup page, or even plugin about page (of course, within the admin panel) when user activate plugin.

This is (probably) useful for user on-boarding purpose, annoy user, keep the user inform about the feature of the plugin or help them setup the pages required by the plugin or install additional plugins/add-on.

Note: I actually really hate it when plugin/theme author did this. But in some case it could be useful.

Usually plugin use register_activation_hook() function to do this. But theme don’t have similar method/function. However, there’s a workaround for that.

Read More How to Redirect On Theme Activation

WordPress Plugin: How to NOT Store API Key/Password in Plain Text


Sometime we need to save API key, or password, for external services in our WordPress plugin. It’s problematic, since we have to use that key to make API connection, but we don’t want to save it in plain text (because it’s just plain dumb). So we need a way to encrypt this key and save it to database, and decrypt it to use. Read More WordPress Plugin: How to NOT Store API Key/Password in Plain Text

WP Page Builder From Scratch #3: Data Structure and Saving Page Builder Data

This is Part #3 of Custom Page Builder Tutorials Series. Read the intro here.

In earlier tutorial, I cover all about the page builder design, and how to make all the control works (create, delete, and reorder rows).

In this post I want to explain how I structure the data and save it as custom fields. Specially in how to update the row order number so we can properly save each rows data.


Download example plugin to follow tutorial easier:

Read More WP Page Builder From Scratch #3: Data Structure and Saving Page Builder Data