Need a basic social media strategy involving Twitter? Here’s one: (1) create an account, (2) tweet, (3) get followers, (4) reap the benefits … The only problem is that it’s much easier said than done.

First of all, people are using Twitter for a variety of different things. Some of us simply want to connect with our real-life friends, let them know what’s going on, and what we’ve been up to.

Others want to make new friends, reach out to people (either just for fun, or for some business purposes).

Finally, there’s the last group of people, those who join Twitter because they have no other choice … we like to call them celebrities.

So unless you’re in the first group or in the last group, chances are that you want to attract some new followers, or simply let people know what you’re about, so they can make the decision whether to follow you or not.

There’s a small number of ways how you can do that:

  1. Post relevant (niche) tweets about a narrow range of topics.
  2. Get a quality avatar (profile picture).
  3. Craft a nice and attractive bio.

Let’s face it, everyone reads your bio before they follow you. Even your friends. The bio is your chance to say a couple of words about yourself and make it interesting enough to convince people to click the follow button.

There are several paths you can take while crafting your bio. In this post I’m going to give you 32 examples of great bios for your inspiration. Actually, I’m not going to do this here, you’ll have to go to my guest post at to get it:

32 Ridiculous Celebrity Twitter Bios

You might be wondering what’s the point of all this, and why should you be interested in other people’s bios, especially celebrities, right?

The fact is that celebrities are great for inspiration. Very often they have teams of people standing behind their social media profiles, so by paying attention to what they’re doing, you’re not actually paying attention to a single person, you’re paying attention to a whole group of professionals.

I invite you to read the post, and when you’re back don’t forget to let me know what’s your favorite bio from this list and why. Finally, I urge you to review your current Twitter bio and look for possible improvements you can make … there’s always something.

Related Posts:

What You Can Learn from Celebrity Twitter Bios |

boredNot every day is mighty productive … I’m sure you can relate to this. Sometimes you just don’t feel like doing anything valuable even though you know you should.

Being able to come to work with the same amount of productivity in you every day is next to impossible. And by coming to work I also mean working for yourself from your home office.

Thankfully, there are some things we can do to help us remain productive. Actually, there’s a massive amount of those things, which I’m sure you know if you’ve been on the internet for any amount of time. But today I just want to show one simple approach – the one I’m using for over two years now.

First of all, I don’t trust myself. I don’t believe that “me” is the best possible person to entrust my productivity to. That’s why I’m using a system – something that can’t possibly fail because there’s no human factor, just rules and guidelines.

So here’s what I do.

1. Warm up

The first thing I do in the morning (at least the first thing related to work) is warming up a little. I’ve been talking about warming up for quite a while now in a number of guest posts and also a couple of times on this blog, so let me just briefly sum up the whole thing.

A warm up is something that helps you to get going. Just like with physical exercise. You can’t go to the gym and start with heavy weights right from the get-go if you want to get out of the gym alive.

Here it’s not a matter of life and death, but not warming up can still cause some problems later on during your day.

A perfect warm up task is something you can do without any effort. Something that’s easy, can be done fast, and does not require any preparation, yet it is still related to what you’ll be doing throughout your workday.

For instance, something that works very good for me is writing an online journal. Each day I start my work by writing a 200-500 word entry about WHATEVER.

This sets my mind up in a certain direction and lets me switch to my main tasks more smoothly.

Of course, you can start with something else. As an online business owner you can probably do things such as: blog commenting, forum posting, checking your stats, and so on.

However, don’t start with email. Email is tricky and it can trap you in the inbox for long hours.

2. Review and plan

This is a good point to review what you did yesterday and plan your work for today.

Please, don’t make your to-do list too packed with tasks. There’s no point it completing half of your planned tasks, and then feeling bad that you didn’t handle the rest. There’s a simple solution to this – don’t plan to do too much stuff!

If you’ve been doing what you’re doing for more than two months then I’m sure you can estimate how much stuff you can handle in a day pretty accurately, so just stick to this.

Now, each day should have one (only one) critical task. A critical task is something that has to be done in a given day, or the day has to be considered a wasted one.

In plain English, this is a task you absolutely have to do.

3. Start with simple tasks

Your critical task is most likely something that requires a fair amount of work and might not be that easy. Therefore, it’s not the best thing to start your day with. Going with something simple is a lot better idea.

Go through your to-do list and find one or two tasks that won’t be that hard to handle and you’ll probably be done with them in half an hour.

This is just another form of warming up, but this time you’re doing a specific thing, not your general warm up task.

The point here is to get you going at full velocity. Remember, getting started is always the most difficult part. Once you get to your top speed of working, maintaining it is a lot easier.

4. Handling the critical task

Now is time to get your critical task done.

… Not much I can say about it, really. You’re the one doing the work, so you probably know best what you need in order to complete your critical task.

The only general advice I have for you here is to set your resources in place before you start working on your critical task. That way you won’t have to interrupt your work to find a given piece of information.

And let me say this again, having more than one critical task set for a day is too many. If at this point you still feel that you have at least 4-5 critical things to do in your every workday then they probably are not that critical after all… You should probably reevaluate what you’re doing.

5. Complete the rest of your tasks

Since you’re done with your critical task, now you can handle the rest of the items on your to-do list.

The advice I have here is not to overwork and spend the whole night up doing stuff just because it’s on your to-do list.

If you can’t finish your whole to-do list in 6-8 hours then you’re working too much. And I really mean it … 6-8 hours is enough. The point is not to work much, it is to work effectively.

The lesson here: Plan less stuff in the future.

Having frequent breaks

The final advice in this guide is about having frequent breaks, something I haven’t mentioned yet.

My perfect approach for working is to follow such a schedule (and again, this isn’t the first time I’m talking about it):

  • work for 50 minutes,
  • have a 10 minute break,
  • work for another 50 minutes,
  • have a 30 minute break,
  • repeat.

So there you go … my system of remaining productive for long periods of time. Even when I’m not feeling productive on certain days, I can usually get going anyway by following this system.

I hope this approach will turn out to be effective for you too. In the meantime, feel free to shoot me a comment and let me know what you think about this whole thing.

Related Posts:

Not Feeling Productive Today? Try This Simple Approach |


Buy buttons, or action point buttons are essential to every online business, e-commerce store, or even a simple affiliate site.

This may come as a surprise, but a quality buy button can make a huge difference in your profitability. If the button you’re using is not visible or simply not attractive enough to focus attention then you can’t expect any brilliant results.

And I know that there are many factors to a successful online offer, like the design, the copy, the offer itself, the price, and so on. But we can’t neglect the buttons, as they are the final place where we want our soon-to-be-customers to click.

Fortunately, getting something nice created won’t be that difficult, and you can even do it yourself. I mean, sure … some Photoshop fluency will come handy here, but it’s not a must. Most great buy buttons don’t have any fancy design because looks is not what makes them great.

If you want to learn how to create a great buy button, feel free to go over to my guest post at

5 Tips to Designing a Winning “Buy Button”

Now, this is a design-focused post, but you can still use the advice in it to either create something of your own, or to describe what you want (exactly) to the designer you’re hiring.

And finally, how did you get your buy buttons? Did you think it through?

Related Posts:
  • No Related Posts

How to Design a Proper “Buy Button” |

boredProcrastination has quite a bad publicity online these days. People start to understand how dangerous it is and how bad it can get over time if you don’t do anything about it.

However, the thing is not nearly as dangerous as some people want us to believe it is. There’s actually a very simple way of using procrastination to your benefit and turning it into something positive.

But before I can tell you how to do it I need to make sure that we’re on the same page here… So what procrastination is actually?

As it turns out, Wikipedia has quite a good definition of procrastination, which isn’t the rule for every entry. Here goes:

In psychology, procrastination refers to the act of replacing high-priority actions with tasks of lower priority, or doing something from which one derives enjoyment, and thus putting off important tasks to a later time.

This, in plain English means that you’re procrastinating when you’re doing something else than you should be doing.

But there’s still one subtle thing worth mentioning here. You are not procrastinating when you’re doing nothing, instead of doing what you should be doing. You are simply lazy.

The issues of procrastination

One of the main moments when you feel the need to procrastinate is when there’s just so much stuff to do that you don’t know where to begin.

Therefore, the first solution is:

Schedule less tasks for any given day

Yea, it really is that simple. And don’t get me wrong, I’m not telling you to reduce the amount of business you’re able to take care of every day. I’m just saying that you shouldn’t fool yourself and schedule tasks that won’t get done anyway because a day has only 24 hours.

Also, and I’ve been saying this in many of my other posts, schedule only one critical task per day.

A critical task is something you absolutely have to do in order to be able to say that your day was effective. Only one critical task really is enough.

So, what to do when procrastinating on the critical task?

This is the biggie here. I can’t just say “don’t procrastinate,” can I? This isn’t that simple.

No matter what you do, you will always find yourself procrastinating from time to time. You just have to deal with it.


This is the perfect chance to get some other stuff done. Just because you’re procrastinating, doesn’t mean that you have to spend your time on Facebook.

Doing simple things

Take a look at your to-do list or any other form of time management you use and look for other things you can do in the meantime.

Choose small tasks that are easy enough for you to do even if you’re right in the middle of your big procrastination session.

After a while, you should have some of those simple tasks done, and then you might be able to switch to the critical task – one you’ve been procrastinating on.

Now hear me out. The idea here is to simply get going. Getting started is always the most difficult part of work. Once you’re going, you’re going. Switching to your critical (and likely difficult) task should be a lot easier once you have some other work done.

The key to making procrastination your friend is to notice the moment when you start procrastinating. If you manage to do this, you’ll be able to seize it and put it to good use.

One final thing I want to share with you. And that’s one of the most undercover kinds of procrastination – procrastinating by consuming information.

Don’t procrastinate by reading stuff!

Whenever you start working on some task you’ll most likely need to have some resources set in place (information, tools, etc.). At some times, you’ll have to go online and learn a new thing or two.

This is the moment when procrastination usually kicks in. At some point, you’ll start fooling yourself and consuming more and more information, convincing yourself that you absolutely need it to get the task done.

No, you don’t! Remain careful, conscious, and consume only the bare minimum of information you need to complete a given task.

That’s pretty much it. Just by doing the above three things (scheduling less tasks, procrastinating by doing simple tasks, not procrastinating by consuming information) you will improve your productivity and effectiveness significantly … just like I did.

Of course, your mileage may vary, but I’m sure you get the idea. I encourage you to try it out for yourself.

Also, let me know what ways of fighting procrastination you’re using right now. I’m curious to know.

Related Posts:
  • No Related Posts

Make Smart Procrastination Your BEST Friend |


What’s the deal with minimalist websites? It seems like everywhere you look there’s a site featuring just a handful of design elements and not even that much content.

People say that this minimalist style is classy and sometimes even beautiful. But is that true? Should a site really be minimalist?

This is something I try to explain in my guest post at Web Design Ledger. I’m taking a web design angle there. However, I invite you to read the post from a different perspective.

Try to look at it from an online business owner’s point of view. I encourage you to pay close attention to whether a minimalist site is something you can use for your own business.

Honestly speaking, there are businesses that go very well with minimalist websites, but at the same time there are some that don’t… Find out what I’m on about here:

Creating Minimalist Designs Makes You a Better Designer

So … what’s the verdict? Is a minimalist website right for you?

Related Posts:

Minimalist Websites … Are They of Good Quality? |

SEO is like the must-do thing among experienced webmasters and website (online business) owners. However, beginners are sometimes not that convinced as to the general idea of SEO and benefits it can bring to any given site.

SEO seems like a difficult and mysterious thing to do. Well, let’s face it … you basically do some strange optimizations to your site, build some links all over the internet, and then your site mysteriously pops up to the top rankings in Google, right?


First of all, not exactly like that. Secondly, SEO can bring a lot more than just some recognition for being #1.

So here’s my list of 7 reasons why your site absolutely needs SEO.

(By the way, don’t forget to visit my SEO glossary.)

1. Rank, traffic, branding

Let’s start with the obvious stuff. The main reason for doing SEO is to get to top rankings in Google. Once you’re there (if it’s for the right keywords) you can hope for new streams of visitors coming to your site every day.

Now the traffic is just raw numbers. There’s no telling if it’s going to turn to be profitable for you or not. So it’s on you to find buyer keywords – ones that people actually use when they’re shopping.

In the end, in the proper scenario, where your keyword research was well thought through, SEO can give you a nice stream of visitors and quite possibly some sales along the way.

SEO is also great for branding. If you’re on the top spots in Google for your niche keywords then your online business should quickly get recognized by other business people and by random visitors as well. Having a good spot on Google is among the first steps to becoming authority in your niche.

2. Better content for readers

This isn’t a benefit website owners notice right away, but once you learn SEO, you also learn how to produce better content for your readers, as a byproduct.

Here’s why. SEO is all about creating content that’s focused around a single idea (defined by a keyword). When you write with SEO in mind, you know that you need to mention the keyword a couple of times, which means that you need to remain on topic throughout the entire article.

This is simply something your readers will notice and appreciate.

However, be careful not to overdo this. Stuffing your articles with keywords is not the point here.

3. Better skill at writing focused content

This somewhat connects to the previous reason on this list, but it’s not entirely the same thing. The point here is to learn along the way, and to be able to produce quality content quicker.

Chances are that you will find it quite difficult to write something both SEO-optimized and reader-friendly on your first time around. But with time, you will develop this skill and you’ll be able to write a great piece with much less effort.

This will also allow you to write more content every day, which will improve your skills and SEO even further … and so on and so forth.

4. Better structured website

One of the main on-page factors of SEO is the inner structure of your site. In order to get a good score on this level you simply need to have a quality website management platform running in the background.

The difference between a quality, well-structured site, and a standard, low-quality implementation is the same as with a new car and an old beat-down car. You can get to the supermarket in both, but the experience is not quite the same.

What also matters is how fast your site loads. The lower your loading times are, the better rank you’ll have (and the more user-friendly your site will be).

Thankfully, this whole thing can be easily achieved for free – just use WordPress and get plugins like W3 Total Cache and WordPress SEO.

5. Targeted lead generation and customer acquisition

The fact that you’re doing some dedicated SEO work focusing on some specific keywords is not just for the heck of it. Your keywords are specific (niche) and so is your audience.

If you manage to attract a highly targeted group of visitors then it will be easier to monetize such traffic through various offers and products.

General audiences are always less responsive to all marketing messages. The more niche your audience is, the better results you’ll have. Both in terms of lead generation and actually selling stuff.

6. More business opportunities

This connects with the previous point tightly. Apart from targeted audiences, your site will also attract targeted opportunities on other levels, like partnerships, possible joint ventures or advertising opportunities.

Your prospective business partners are well aware of your niche audience, and this is a group they want to market to as well.

Depending on whether your niche consists of primarily buyers or not, you might be able to close some nice deals this way.

7. It won’t stop working overnight

The best thing about SEO is that it won’t simply stop working just like that, overnight. I know that there’s a lot of discussion going on right now about Pandas and Penguins and other animal-algorithm-updates. But the fact is that you shouldn’t be afraid of getting hit with a penalty or anything as long as you’re not doing anything shady.

Mainly because you can’t predict what the next update is going to be about, so you can’t take any effective precautions. Secondly, even if you do get hit, you will be able to recover quickly if you follow Google’s guidelines.

The overall predictability of SEO is probably its biggest advantage. You can estimate pretty accurately what your next month’s results are going to be based on this month’s results. And by results I mean both traffic and profits for your online business.

That’s it for my list, and the main message is as simple as this: Do SEO, it works!

Now, what’s your approach at SEO? Is it a part of your daily work?

Related Posts:

7 Reasons Why Your Website Needs SEO |

timeThere’s a lot of advice on the internet focusing on how to make money with this or monetize that, as it’s, essentially, what everyone wants to do. However, running a successful online business isn’t really about making money every now and then, it’s about making money consistently…

That’s why today I will try to give you a broader look at how to make your business future-proof and set you up for recurring and dependable income.


Let’s start with advertising as it’s often the most obvious way of making money online.

Right upfront, I want to say that simply placing some AdSense on your site won’t have much effect.

The success to advertising lies in split testing. Whatever situation you’re in you can always improve your results by split testing.

Things you can split test when it comes to advertising:

  • Different ad providers (for example: AdSense, Chitika).
  • Selling ads directly vs using a delivery network.
  • Different types of ads (text, banners, video).
  • Different ad locations and sizes.

You can start by going to the Content Experiments section in Google Analytics (formally known as Google Website Optimizer), and creating some split tests.

Google will then take care of splitting your traffic in half and displaying version A of your test to one group of visitors and version B to the other group.

Over time, you can use split testing to find the most profitable combination of providers, locations, ad types, an everything else you can think of. This will make sure that your ad revenue is constantly on the rise.

Long-term product development

Products are often the main way of making money for many online businesses. There are no rules when it comes to products, and this is the great thing about them.

You can sell virtually anything you like, as long as you can find a quick and cheap way of delivering it to your customers.

Now the important thing. Most tutorial articles on the internet focus only on how to create your initial product and put it on the market. However, doing just that is not setting you up for the future. Making a product really successful will require a lot more work.

There are basically three paths you can follow with an online business:

  1. Create one product and expand/upgrade it over time.
  2. Create many products and focus on the initial stream of sales only.
  3. Do something in between.

I can’t honestly say which approach is the best because it all depends on your niche, your resources, experience and dedication. You can surely make money doing any of the above.

However, it’s important to know what you are doing and create a long-term plan of action.

For instance, if you choose to focus on one product and work on improving it constantly, you need to spend some time every week on planning and creating new features/elements of the product. If you’re going to make it work you need to follow a system and not act whenever you have nothing else to do.

Developing a product long-term is just like creating content for a blog. You need to create a habit of doing it.

If you’ve chosen to create a bigger number of products instead of just one, then you need to plan it out in time as well. Create a schedule and stick to it. You can, for example, plan to launch one product every 2 months, create a plan on how you’re going to do this, and then execute it to the beat.

The main message I’m trying to convey here is that product development is not about putting something together, releasing it to the market and then chilling on a beach for the rest of your life. It’s about dedicated and well thought through work … that is unless you don’t want to future-proof your business.


Publishing calendar

Content is often the main thing that drives traffic to an online business.

Of course, there are businesses with such recognizable products that they become traffic drivers on their own, but for most online entrepreneurs attracting new visitors through content is a lot easier thing to do.

If you want to make it happen, you need to create a publishing schedule and a long-term plan on what content you want to share on your site.

Hastily putting a post together every now and then won’t do the trick.

Here’s what I advise you to do:

  1. Pick a small range of topics you want to write about.
  2. Create a bank of post ideas containing some headlines.
  3. Create a publishing calendar and pick exact publication dates.
  4. Place your post ideas in the schedule.
  5. Before writing a post do some basic keyword research around it.
  6. Write the post, proofread it, and schedule it in WordPress.
  7. Repeat.

The main idea of a publishing calendar is that at any given point in time you know what you want to publish next and when it will happen. It saves you a lot of confusion during your day-to-day work.

Launch and promotion schedule

I’m sure you’ve noticed that some marketers online don’t have much of a grasp on reality as they promote a different product every other day. For instance, one day they promote one product for “getting traffic” saying that it’s the best thing ever, and then the next week they promote another product for the same thing saying that this is the best thing ever…

Doing such a thing is not fair to your audience. First of all, if you’re saying that something is the best solution for something, then you better not say that you were wrong just a couple of days ago. Secondly, your audience is probably not ready to buy your stuff every other day.

This is where a launch and promotion schedule comes into play.

This will all depend on your specific situation, but you always have to find a good balance between promoting your own products and focusing on some affiliate stuff.

Since you already have your product development process set you can create a schedule for the promotion of these products. In my opinion, promoting more than one product in any given month is too much, but your mileage may vary so feel free to experiment.

Once you have the schedule for your own products put some additional affiliate products in all free spaces. It’s best to pick these affiliate products beforehand and test them yourself.

Once everything is set you shouldn’t try to fit some more promotions into your schedule. Doing this will probably only confuse and anger your audience. If you want to promote something else put it at the end of your schedule, not in the middle.

If you do this, you’ll know what you’re promoting in any given moment in time, there will be no wandering around.

Ongoing SEO and researching

Whether you like it or not, SEO is an essential element of every successful online business.

The only problem with SEO is that some people don’t do it for more than just the initial days of excitement.

SEO works only if it’s a constant effort, and not a one-time task.

Here’s what you do. Whenever you want to write a post, do a quick SEO research around it (find keywords, plan your links, etc.). Then after you publish the post, include it into your ongoing SEO.

This means that you should pick a range of tasks you’re going to do to improve this individual post’s rankings, and then execute them over time.

For example: improve the post’s inner structure, write some blog comments pointing back to the post, build some article links, spread the word on social media, etc. I don’t want to list all the SEO techniques here as you probably have your own approach at SEO, so the message here is to simply execute it and not forget about your new posts the minute they are published.

I know that the online business dream is to get rich overnight and not do anything for the rest of your life, but unfortunately this isn’t a real-world possibility, that’s why we should always try to make our businesses future-proof.

Besides, that’s where the whole fun is. Once you have this future-proofing done, you can estimate your next month’s income (to some degree), which will surely give you a better night sleep.

Feel free to share, what are you doing to make your business profitable for years to come and not just for the next week?

Related Posts:

How to Make Your Online Business Future-Proof |

Okay, a quick one today. Let’s make a custom control for the customizer.

Back in the first tutorial, I talked about the various controls available in the customizer. Specifically I mentioned image handling, color wheels, text boxes, radios, dropdowns, and checkboxes.

Let’s try a new one? How about a textarea? It’s not in the core code, but it’s easy enough to add one.

Create a Class

So first, we have to create our class. Now, where we create this class is important. Specifically, we have to create it in the function called by the customize_register action. You remember that, right? It started like this:

add_action( 'customize_register', 'themename_customize_register' );
function themename_customize_register($wp_customize) {
	// ... do stuff ...

The reason we have to create our class in here is because we need to make our new class extend the built in WP_Customize_Control class, and that class only gets loaded and defined when we’re actually using the customizer. An alternate means of doing this would be to wrap the class definition in an “if (class_exists(‘WP_Customize_Control’))” statement, if you prefer to not have your classes defined inside a function. Personal preference, I don’t think it makes a difference either way.

So, here’s our textarea control. All we’re doing is to override the render_content() function and make it display a textarea.

class Example_Customize_Textarea_Control extends WP_Customize_Control {
	public $type = 'textarea';

	public function render_content() {
		<span class="customize-control-title"><?php echo esc_html( $this->label ); ?></span>
		<textarea rows="5" style="width:100%;" <?php $this->link(); ?>><?php echo esc_textarea( $this->value() ); ?></textarea>

You can see how simple it is to do, really. We just output a span with the value from $this->label for the name displayed above the textarea, then output the textarea itself.

Note that the textarea has no “name” parameter. It doesn’t need one. The $this->link() function outputs the information for the customizer script. Specifically, it will create a “data-customizer-setting-link” attribute, to link the textarea to the proper setting it’s controlling.

Now, we just have to use the new control.

Add a setting and control

Let’s go back to the theme demo I used in the second customizer tutorial post, and add a new setting and control to demonstrate this:

$wp_customize->add_setting( 'textarea_setting', array(
	'default'        => 'Some default text for the textarea',
) );

$wp_customize->add_control( new Example_Customize_Textarea_Control( $wp_customize, 'textarea_setting', array(
	'label'   => 'Textarea Setting',
	'section' => 'themedemo_demo_settings',
	'settings'   => 'textarea_setting',
) ) );

Nothing complicated there. We create the setting, then we create our control, using the new class we made for this purpose earlier.

Use the setting in the theme

Now let’s add to that index.php file I made in the theme demo to show the results of our work.

echo 'textarea_setting => '.get_theme_mod( 'textarea_setting', 'default_value' )."\n";

And that’s pretty much that. We now have a textarea control, and changing/saving results in the setting changing as well.

You can extend this further to use postMessage for real-time changing of settings, if you like.

Custom controls using complex javascript and such can be done as well. Examine the core WP_Customize_Color_Control, which uses the farbtastic Javascript for the color wheel. That one has special JS in the customize-controls.dex.js file to handle receiving the input and passing it along to the customizer JS. Look for “api.ColorControl” and how it gets the setting from the HTML and sets it. I’m not a JS guru, that sort of thing is slightly outside my own scope. :)

Any ideas for other controls that themes might need? Leave a comment, maybe somebody has a solution.


Being a website owner isn’t actually the simples of roles… That’s because there are various tasks you have to take care of on a daily basis. Like, for example: checking if your site is even up, monitoring your search engine rankings, paying attention to the stats, and so on.

Actually, you can do everything manually, but it’s not the most fortunate approach. Nor is it the most time efficient one.

Thankfully, it’s the 21st century, and this means that there’s virtually an app/tool for everything these days.

As a website owner, and possibly an online business owner too, you can save a massive amount of time by signing up to some cool tools and then using them every day (or regularly, in general).

To find out what these tools are feel free to read my guest post at InspiredMag, all tools listed there are free:

8 Tools that Make a Webmaster’s Life Easier

Is there any other interesting tool you’ve stumbled upon and want to share with other readers? Feel free to shoot me a comment.

Related Posts:
  • No Related Posts

8 Tools to Make a Website Owner’s Life Waaaaay Easier |

Last time I wrote about using the Theme Customizer to supplant/add to your existing options. But what if you’re writing a new theme entirely?

Do you even need an options page?

How many options does your theme have, anyway? Would it not make more sense to eschew those complex options pages in favor of just allowing the user to do it all “live”? With the Theme Customizer, this becomes entirely possible. As an added bonus, it also gives us a really handy use for the theme_mod system.

Step 1: Surfacing the Customizer

One thing I don’t like about the theme customizer is how hidden it is. It’s in the Themes selection space, under the strangely worded “Live Preview” option. Let’s bring that to the forefront and make it more visible for our example theme. In our functions.php file:

add_action ('admin_menu', 'themedemo_admin');
function themedemo_admin() {
	// add the Customize link to the admin menu
	add_theme_page( 'Customize', 'Customize', 'edit_theme_options', 'customize.php' );

There we go. Now we have a “Customize” link in the Appearance menu that loads up the customizer. Nice.

(Note, using the “customize.php” link works with the currently active theme only. Adding ?theme=themedemo to it would allow links to customize non-active themes, but this makes no real sense in the theme functions.php file of a theme. But if you were doing a plugin that needed to load the customizer, that might be good to know.)

Step 2: Adding some options

Let’s add some simple options to the theme customizer. How about a text field and, say, a color picker. Why not?

add_action('customize_register', 'themedemo_customize');
function themedemo_customize($wp_customize) {

	$wp_customize->add_section( 'themedemo_demo_settings', array(
		'title'          => 'Demonstration Stuff',
		'priority'       => 35,
	) );

	$wp_customize->add_setting( 'some_setting', array(
		'default'        => 'default_value',
	) );

	$wp_customize->add_control( 'some_setting', array(
		'label'   => 'Text Setting',
		'section' => 'themedemo_demo_settings',
		'type'    => 'text',
	) );

	$wp_customize->add_setting( 'some_other_setting', array(
		'default'        => '#000000',
	) );

	$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'some_other_setting', array(
		'label'   => 'Color Setting',
		'section' => 'themedemo_demo_settings',
		'settings'   => 'some_other_setting',
	) ) );


We now have “some_setting” and “some_other_setting”. You can tell that I’m being very creative with my naming scheme here. ;)

Note that I didn’t define the “type” for these settings. This means they’ll be the default type, which is “theme_mod”, and that’s perfect for this case. Since we’re providing no other way than the customizer to change these settings, then it’s nice and easy to use them.

Speaking of using them…

Step 3: Use the settings in your theme

Here’s our theme’s index.php file:

<?php get_header(); ?>

<h3>Theme Customizer Demo, using theme_mod and <em>no</em> settings page!</h3>


echo 'some_setting => ' .get_theme_mod( 'some_setting', 'default_value' )."\n";
echo 'some_other_setting => ' .get_theme_mod( 'some_other_setting', '#000000' )."\n";
echo 'non_existent_setting => '.get_theme_mod( 'non_existent_setting', 'default_value' )."\n";


<?php get_footer(); ?>

The header and footer are pretty standard. Nothing special. You can find them in the download. What we’re really concerned with here is how the theme uses the settings themselves.

Notice the use of get_theme_mod. It’s pretty darned easy to use, really. It just gets the settings and uses them however the theme needs to. For this demo, I’m just outputting their contents for demonstration purposes. I also added in a non-existent setting to show that it works and outputs the default value when nothing is set for the theme in the theme_mod system.

The nice thing about theme_mod is that it automatically stores the information in a nice packed way, unique to the theme itself. If you have multiple copies of the same theme on the site, but with different names, each will have its own settings. Easy and handy.

Step 4: There is no step 4.

Seriously, that’s it. You can go further and make the settings work “live” using the postMessage methods I explained in the previous post, but for the most part, there’s nothing more to do. This is a simple and easy way of making settings, using them, and not worrying about complex options pages, settings in the database, where they’re stored… Why do all that extra code if you don’t have to?

Here’s a link to a working theme using the above concepts. For fun, it also supports custom background colors. :)

This is just one example of how to use the core APIs in a somewhat handy way. There’s other ways too. Feel free to experiment.