How to use Dzongkha font on Website

dzongkhaWhile developing my pet project Bhutanese Calendar (WordPress Plugin for Bhutanese Calendar available here) I had to look for a nice Dzongkha font, convert it into web-font and use on the site. I came across a good number of Dzongkha fonts available on various websites like Dzongkha Development Commission and DIT. These are few popular ones:

  • Uchen
  • Wangdi (Joyig)
  • Jomolhari

This is Uchen font: དཔལ་ལྡན་འབྲུག་པ་ཕྱོགས་ལས་རྣམ་རྒྱལ།་ ༡༢༣༤༥༦༧༨༩༠

I have found that the size of most of these Dzongkha font files are too big (more than 1G) to be converted to web fonts, especially the ones downloaded from DIT website. Using big font files unnecessarily adds to load time of the website, which is of course very bad in all respect.

Dzongkha Development Commission and BBS Dzongkha use Uchen and Jomolhari respectively and when I gave a quick test on the size of font files is simply appalling, adding significant load time to the websites.

DDC Website

DDC Website

BBS Dzongkha

BBS Dzongkha website

For Bhutanese Calendar, I have used a smaller size Uchen font, which converts to just 32K web-font. If you want to use it click the download link below.

Uchen web font used on Bhutanese Calendar website

Uchen web font used on Bhutanese Calendar website

Download Uchen web font here

Download Dzongkha fonts (Uchen, Tashi, Wangdi, Jomolhari)

CSS not working on IE11

IE_bugIf you find your CSS is not getting rendered as expected and the website looks strange on Internet Explorer 11, just add this within <head>…</head>:

My Babies wishing me Happy Father’s Day : )

Cute is the word….


Magento Custom Options not saving

I recently had an issue with Custom Option not saving in a Magento site. A product had around 400 custom options. After editing options and hitting save button, it said “The product has been saved” but the edit was not getting saved at all.

I added these values on .htaccess file and it worked perfect:

Magento – How to add customer’s email address to PDF invoice?

If you want to add customer email to PDF invoices here is how:

Copy a local copy of file Abstract.php by copying from




If you want to show customer email on Billing Address (Sold to), on the local copy of the above file, around line 313

If you want to show customer email on Shipping Address (Ship to), on the same file around line 331

Magento 1.8 bug: Memory limit has been reached

I am running Magento CE 1.8 for a big store with the number of products running into few thousands. The site is on test server where everything is running absolutely fine. After so much hard work into it, we are ready to launch it. How exciting!

In theory nothing should go wrong because everything is fine at least on the test server, and I am moving the exact same copy of files and database.

After all the files moved and necessary configuration changes made on the database, I decide to make the final check on the temp URL, just to make sure. And as a normal practice I login to the backend and clear all the Cache.

Then all the hell break loose!

There is a series of problems:

  • None of the product images are displaying on Frontend, though I can see them on Backend, as well as on /media/catalog/product folder.
  • Cannot upload product images. “Memory limit has been reached”, comes the error in red.
  • On WYSIWYG editor Media Storage, image thumbnails will not show.
Memory limit has been reached : (

Memory limit has been reached : (


Broken thumbnail links on WYSIWYG Media Storage

After hours of Googling and pulling out my hair (which incidentally has started to go grey), I realised that it is Magento bug.


There is a file called Gd2.php in the folder lib/Varien/Image/Adapter

There is a function called _convertToByte() which checks for php_memory limit. The function checks whether the size is given in M or KB and converts to bytes accordingly. The bug is, it does not check if the size is given in GB. So if you are going through above same problems, apparently your server has php_memory limit given in GB.


I know it is a bad idea to hack core files. But for now at least I am in some nirvana! Here is the solution (PHP memory limit set as 2G):

Hope this helps someone!

Note: As I have mentioned above, hacking into core files is not at all advisable. Apparently there is a way to change PHP memory configuration on your website host via WHM (please read comment from Daniel Radman). If you do not have access to WHM, get in touch with your hosting company.

Update (22 Jul 2014):
On yet another host, the above solution did not completely solve the issue. This time on Backend when I tried to generate PDF invoices it threw an error that said “JPG support is not configured properly”. 

JPG support is not configured properly

JPG support is not configured properly

This was because the host server did not have “JPEG Support” enabled on PHP GD component. This meant that JPG images were not getting cached on product list and view pages, plus it caused the above issue while trying to generate PDF invoices.

Contact your host to enable GD support for JPEG (plus other image formats like GIF and PNG if thay are not enabled too).

This is how your phpinfo() should look like on GD component:

JPEG support should be enabled on GD

JPEG support should be enabled on GD

Bhutanese Calendar online!

Bhutanese calendar

Bhutanese calendar

Every beginning of a year, Kuensel, or national newspaper releases a year calendar, a Bhutanese calendar which most of us simply love to call it as “Kuensel Calendar” because we do not get Bhutanese calendar from anywhere else.

Not anymore!

I happened to find a repository of Bhutanese calendar dates from years 1600 to 2099 at Open Source Bhutanese Calendar software.

With little knowledge in PHP and some idea on how to present them, I have been able to extract data from years 1900 – 2099 and display them on webpage as monthly and yearly calendar, as well as a conversion formula between Bhutanese and Western dates.

Though the accuracy of the data cannot meaningfully be verified, the author of the open source software has presented all the necessary and credible formulas and algorithms used to generate them. Moreover, I have collected Kuensel calendar from years 2000 to 2014 and verified that every date is accurate.

Another exciting note is that I have developed a WordPress plugin to display a monthly Bhutanese calendar. The plugin can readily be downloaded and installed on your WordPress blog or site. For non-Wordpress website developers, the calendar can be embedded as an iframe.

Visit Bhutanese Calendar here

Privacy is dead, time to protect what is public

Out of curiosity I just happened to Google my name, and voila! I see myself everywhere; Facebook, Linkedin, my company website,, Bhutanese in Perth, and whole lot of other sites I had at one point created profiles and never cared to update or remove. (Thank God for some reason I have never fancied Twitter.) In particular, one of my name’s top hits was a jobsite I had registered to years ago where I had submitted my resume and other personal information. And reading that profile of mine only made me feel how “outdated” I have been presenting myself to the world all these while. It was simply not me!

My public profiles - are they really me?

My public profiles – are they really me?

It is not surprising to see yourself everywhere given the fact that we live in this digital one-world. For example, the second you hit Internet browser and start navigating the WWW, you are giving information about yourself and creating your online profile. We no more live in a word where everyone is a “private individual”. The world now is an open space where anyone can look for you, find you and read about you.

What do we do about it? While it will not be during our age where we can afford to shun these rather invasive but necessary technologies, we can definitely do one crucial bit to ourselves, that is, be wary of what sort of information and details we give about ourselves online, and how well you present ourselves to the world. That is the real catch.

It is not just to make yourself “presentable” to world that you have to take responsibility of your online profiles. But more importantly, your online profiles are not only seen by some random people typing your name on Google or your profiles just popping up on some irrelevant search results and getting ignored. The truth is, you are indeed searched and seen by real important people that matter. For example, when you submit your resume for a job, before calling you for an interview your potential employer first searches you online and, guess what, if you have posted a rather inappropriate photo or anything unpleasant, there goes your dream job down the drain!

“Privacy is deal, get over it”, said some important guy which sadly is very true. So with our privacy all robbed and dead, it is now time that we protect what is there on the public domain.

What thou can write about thyself?

I finally managed to put up a personal blog which I had always wanted, introducing myself to the big world of www as “Sangay Tenzin… whatever matters” which is my blog title. (I asked my wife what she thought of the title and she said, “… whatever”). Anyways, here I come blogsphere!

Before starting my first post, I wanted to write a brief “About me” in few words. But oh dear! how difficult I found to summarise myself in just few words. I start… “I am a Web Developer….” then think for a while not knowing what to write next. The mouse cursor goes blink, blink, blink. I type again “…. I am from Bhutan…”.

Blink, blink, blink…

Then I start to get bored. In order words, I don’t know what to write about myself! Do I write that I am a Web Developer and that I am born and bred in Bhutan and live in Perth? Do I write that I developed so and so websites and have so and so skills? Do I write that blogging is my passion and that I maintain Do I write that I dote on my toddler daughter? Bla bla bla….

The cursor keeps blink, blink, blink… Then my mind starts to wander off to a Jackie Chan movie “Who Am I”. I think of that spectacular fight scene on top of a high-rise building and Jackie’s stunts…

The truth is, I can write so much about myself but I am just short of right words. There!

So to fill the “About me”, I go with my all time classic line about me, which goes thus, “Nopkin, the Great, born in Bhutan near toilet”.

Nopkin the Great

Nopkin the Great

Knowing yourself is the beginning of all wisdom.

– Aristotle

About me

profileSangay Tenzin
Web Developer, Magento, Concrete5, Wordpress, Shopify, Ecommerce, Website all-rounder, Casual blogger…

Love… Happiness…



Bhutanese Calendar
གནམ་ལོ་ ས་ཕོ་ཁྱི་ལོ།

Earth Male Dog Year 2019

འབྲུག་ཟླ་ བཅུ་གཅིག་པ - བཅུ་གཉིས་པ།

January 2019

ཟླ་བ Sun
མིག་དམར Mon
ལྷག་པ Tue
ཕུར་བུ Wed
པ་སངས Thu
སྤེན་པ Fri
ཉི་མ Sat
༢༦ 1
༢༧ 2
༢༨ 3
༢༩ 4
༣༠ 5
༡༠ 16
༡༡ 17
༡༢ 18
༡༣ 19
༡༤ 20
༡༥ 21
༡༦ 22
༡༨ 23
༡༩ 24
༢༠ 25
༢༡ 26
༢༢ 27
༢༣ 28
༢༤ 29
༢༥ 30
༢༦ 31

Powered by Bhutanese Calendar