Taobao, Tmall, KavoirIf you have solid products and wants to sell to China audience, let us know. We have a very capable team currently running 2 big brands on Taobao.com (for small merchants) and Tmall.com (for medium to large merchants), the largest online marketplaces in China thus far, with an annual sales volume over 1,000 billion CNY, or 200 billion USD.

With CNY appreciating and a widespread distrust of domestic goods, Chinese consumers are seeking overseas alternatives for a better spend, even more expensive, especially from western countries where products are considered greener and better for human body.

Listed below are some of our successful brands on Taobao.com and Tmall.com we’ve been running. We can do the same to yours and make you successful in China. Contact us.

Pandabobo – http://pandabobo.tmall.com

A merchant that we are fully responsible for the branding and marketing on Tmall.com. It currently tops over 2,000,000 CNY (approx. $350,000 USD per month) sales per month by selling a variety of fruits, nuts and natural snacks.

Pandabobo has also got a full-fledged standalone web store of at Pandabobo.com which is completely localized and catered to China audience. We can also help you build one of your own should you want to extend your local presence in China. However the most online sales in China are always made via top eCommerce marketplaces such as Taobao.com or Tmall.com rather than standalone websites because China consumers tend to have more faith in bigger brands / companies thus more likely to spend money there.

Check out one of their best selling products. This single product has had nearly 3,000 sales in the last 30 days.

pandabobo tmall sales

KanS – http://kans.tmall.com

KanS sales stats on kans.tmall.comThe store of a local cosmetics brand based from Shanghai that is raking in 4,767,423 CNY, or $800,000 USD, per month. We make the major part of their marketing team and are responsible for sales channels development and online marketing.

kans @ tmall

Contact Us

Interested in our expertise and talent to be successful in China? We would love to team with you to bring good products to the Chinese audience. Contact us by the form here: http://www.formkid.com/f/kavoir/contact-kavoir-com/

And make sure to include as much information about your business, brand, and products as possible – stores, website, sales volume, pictures, etc.

Our Team

Li Zhiwei, Chen Shuang, Zhang Xiaofeng, Zhao Yang, Yang Yang, and some more. Pictures are coming! 😉

{ Comments on this entry are closed }

To avoid this annoying behavior of Firefox that redirects http://localhost to http://www.localhost.com when you are developing on the localhost, try one or more of the following tips:

  1. Use other browsers such as IE or Chrome.
  2. Use “127.0.0.1” instead of “localhost”.
  3. Make sure http://localhost is correctly configured and responding.
  4. Make sure C:\Windows\System32\drivers\etc\hosts has and only has “127.0.0.1    localhost“. Comment out “::1    localhost” which is for IPv6.
  5. Disable Firefox web address automatic alternate fixup: 1) about:config, 2) browser.fixup.alternate.enabled = false
  6. You can also disable IPv6 in Firefox or even disable IPv6 entirely at OS level but it’s not recommended. How? Search for yourself!
  7. Should you be debugging PHP, include these at the top of your code to make sure PHP gives the error for you to erase the underlying problem:
    ini_set('display_errors','On');
    ini_set('error_reporting',E_ALL);
    ini_set('max_execution_time', 180);
    ini_set('memory_limit','1024MB' );

I would prefer 2 and 5.

{ Comments on this entry are closed }

How to write page title for SEO?

by Yang Yang on January 27, 2013

I have several writers who write content for my websites. One of the things they constantly have is that they come up with page titles that are not good enough. Sometimes it’s trivial but sometimes it does pose a siginficant problem with regards to SEO.

For example, in this article: http://www.bintley.com/blog/the-comprehensive-guide-to-choosing-the-right-short-range-airsoft-gun/

The title is so long with primary keywords pushed far to the end that they may probably never show up in Google search results.

I then asked him to use very specific keywords at the beginning of the title and mentioned that people would never search for phrases such as “the importance of” or “the comprehensive guide to”, etc.

Here’s my follow-up letter to his doubts regarding why and how:

For example, change

“The Comprehensive Guide to Choosing the Right Short Range Airsoft Gun”

to

“Find the Right Short Range Airsoft Gun”

or

“Short Range Airsoft Guns – Which one is right for me?”

I just confirmed with Google adwords keyword tool that the monthly search volume for a broad phrase of “comprehensive guide to” is so low that they are pretty much worthless and more so when combined with other keywords at the end yet you are using it as the first few words in the title of this article.

Check out this ranking factors correlation: http://www.seomoz.org/article/search-ranking-factors#metrics-6

The first few words in the page title plays the largest role / has the most impact for ranking a specific phrase in SE. Therefore, writing a very very specific keywords-first title is crucial in writing for the SE and web visitors. A title that doesn’t correctly stand for the content of the article or one that is vague or pretentious is a disaster. For instance, this article is by no means a Comprehensive Guide, so just stick to smaller words such as “How to”, “My Advice on” etc. and better not too long as they are taking precious space in the title, especially the leading part.

{ Comments on this entry are closed }

How do keys and locks work?

by Yang Yang on January 15, 2013

Check out this interesting animated GIF. Very nice illustration of how keys and locks work.

how do keys and locks work

{ Comments on this entry are closed }

My friend Johnny is a very talented web designer. He’s recently released a portfolio WordPress theme at ThemeForest which is very classy and cutting-edge in styles.

SimpleKey

Be sure to also check out some of his other work at the ThemeForest page and his design studio ThemeVan.

{ Comments on this entry are closed }

I’m just so happy

by Yang Yang on January 2, 2013

I don’t know why but I’m just so happy. I just returned from a hiking in the Qin Mountains. It’s gently snowing while we climb one of the mountains to an altitude of about 1000 meters above sea level. It’s been terrific in the outdoors! We have a good company of many friends and strange but friendly people yet it’s so quite in the woods. The air is refreshing and the sunlight is winterly warm.

Wish everyone a happy new year! 🙂

{ Comments on this entry are closed }

It’s better to style the /wp-admin of WordPress from your theme because it’s portable and upgrade-proof. Keeping all customizations  in ONE place is always a good idea in web development.

How to style WordPress admin backend /wp-admin from your theme?

  1. Add this hook to the functions.php of your theme:
    function customAdmin() {
        ?><link rel="stylesheet" type="text/css" href="<?php bloginfo('stylesheet_directory'); ?>/wp-admin.css" /><?php
    }
    add_action('admin_head', 'customAdmin');

    Which effectively adds a stylesheet to the header of every /wp-admin page.

  2. Create a text file named wp-admin.css in your theme directory.
  3. Write the customization styles in wp-admin.css.

That’s it. Now you can freely customize the look and appearance of the WordPress admin backend from within wp-admin.css in your theme directory.

{ Comments on this entry are closed }

Some of my sites such as ConvertHub has grown out of the 512MB box I have had for over 2 years at Linode. It’s been great but as I’m fed up with managing the server myself (I’ll come to that later), I went ahead looking for a solid VPS plan with WHM / cPanel that’s managed for me. After searching for a few weeks, I finally landed my deal with A Small Orange.

See their cloud VPS planner at here: http://asmallorange.com/hosting/cloud/

A Small Orange Double RAM Cloud VPS Sale

What I did was:

  1. Select 1 Core + 1024MB RAM + 15GB Drive (It’s SSD!) + 500GB Bandwidth for $30 / month.
  2. Opt to pay annually so I can get 2 months free. Not that you will get 2 months free, but you will be paying $25 / month instead of $30 / month if you pay annually, working out to be $60 discount over a year from $360 / year to just $300 / year.
  3. Click and use the 15% coupon code:
    ASO15PERCENTOFF
    Click To Open/Copy
    to claim an additional 15% discount off the annual price from $300 to just $255.

That’s it. You get all these awesome stuff for just $255 / year, that’s just $21.25 / month:

  1. 1 Core – Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz
  2. 1024MB RAM
  3. 15GB SSD (Solid-State Drive)
  4. 500GB monthly transfer
  5. WHM / cPanel
  6. 2 Dedicated IPs that are far from each other – NOT in the same C-class! This is a huge benefit for SEO reasons. Another proof that A Small Orange thinks in the customers’ shoes.
  7. Fully managed
  8. Almost instant response to support tickets – I have only been with them for a few days and the support response is well within 30 minutes each time I submit a ticket.
  9. It’s A Small Orange, an established business and brand since 2003. Just search for their reviews.

I challenge you to find a better VPS deal than this cause’ it’s mission impossible. The only downside is that the disk storage will have only about 8GB available for your websites / applications after the system takes 7GB. However, I doubt your websites would need that much unless they have millions of image files or tens of millions of records in the database.

{ Comments on this entry are closed }

Make WordPress Hooked Function to Run Only Once

by Yang Yang on December 12, 2012

Consider this hook to add something before your WordPress blog’s sidebar:

function before_siderbar() {
?>
<!-- Something goes here, such as an AdSense links unit -->
<?php
}
add_action( 'get_sidebar', 'before_siderbar' );

It’s usual to add an AdSense links unit there but the problem with some themes is that they run get_sidebar more than once, such as on the sidebar AND in the footer. Consequently, you would end up with multiple AdSense links unit here and there, whereas you only wanted it on the sidebar once.

This could create a TOS problem towards AdSense because unconsciously, you would very probably end up adding more than 3 links unit per page.

To prevent this and only make the hooked WordPress function to run once (even it is called multiple times), use the PHP static variable in functions.

function before_siderbar() {
	static $called = false;
	if (isset($called) && $called) {
		return false;
	}
?>
<!-- Something goes here, such as an AdSense links unit -->
<?php
	$called = true;
}
add_action( 'get_sidebar', 'before_siderbar' );

In the above snippet, the variable $called is kept alive across multiple calls to the before_siderbar() function. After the first successful run of the function, $called would have a value of true and it’s kept so inside the function every time it’s called afterwards. In the 2nd and every call afterwards, $called will always be true and the function returns before outputting the AdSense code.

There you go. Now no matter how many times the before_sidebar() is called, only the first run would output the stuff you put in it.

{ Comments on this entry are closed }

PHP mail() is a great function to easily send emails from your website server. If you have ever used it before in action, or are currently using mail() to send out emails from your website or application, chances are you would find Gmail to be very persistent in attaching a ‘via’ field to the from address of your messages to the recipient. If you are on a shared host or have multiple websites on a VPS, the ‘via’ field would be the domain of a whole different website from that of the sending domain, which makes you very uncomfortable.

So how to make the ‘via’ field disappear in Gmail messages sent from your PHP mail() function? How to make the ‘mailed-by‘ field and the ‘signed-by‘ field to be the email-sending domain rather than the server hostname?

How to make Gmail trust your messages sent from the mail() function?

Get rid of Gmail ‘via’ field for PHP mail() messages and make your domain show up in ‘mailed-by’ and ‘signed-by’

Here are what you need to do to make Gmail completely trusts your domain and your PHP mail() messages sent from it.

1. SPF and DKIM

Firstly, you would need to set an SPF record for the domain you are sending emails from and enable DKIM as well. These are primarily for identifying your messages against spam.

2. "From: anything@yourdomain.com"

Secondly, make sure you are setting the “From: ” header to be an email address on the domain you are sending messages from. Don’t pretend to be someone else. Use “From: someone@abc.com” if you are sending the messages from abc.com, rather than anything else, such as blah@def.com, or yours@gmail.com, or whatever. If you want the recipient to reply to your Gmail email instead of your domain email, use the “Reply-To: ” header. “From: ” must always be the domain email that you are sending the email from.

3. "Return-Path: return@yourdomain.com"

Thirdly and most importantly, set the “Return-Path: ” header to be the same domain as that of the “From: ” header. Use the 5th parameter of the mail() function for this:

mail('recipient@example.com', 'Subject', "Message Body", $headers, '-freturn@yourdomain.com')

So the Return-Path of this message would be “return@yourdomain.com” (the email address immediately following the -f switch). The $headers parameter should contain all the necessary message headers. Make sure “From: ” is something@yourdomain.com.

Now Gmail trusts all emails from yourdomain.com

After these steps and measures, Gmail should now completely trust your messages from yourdomain.com. The ‘via‘ field of your messages should be gone and the ‘mailed-by‘ field as well as the ‘signed-by‘ field should be correctly showing up as yourdomain.com.

Uploaded below is the screenshot of a message sent to my Gmail email from one of my websites (*ses.com) using the mail() function:

make Gmail trust your email

Both ‘mailed-by‘ and ‘signed-by‘ fields are correctly populated with the sending domain even though it is not the primary site nor hostname of the server that sends the email. The ‘via‘ field is also gone.

This site doesn’t have any SSL certificates installed.

Gmail is by far the best spam catcher of all email services so if they trust you, your emails sent by PHP mail() from yourdomain.com should look good in all other email inboxes. Our forum has also got a thread to cover this.

Thanks to Michael Gorven and Laura for the help.

{ Comments on this entry are closed }