Having a list of prospects is one of the biggest assets your business can have. But how do you make sure your list wants to buy from you instead of your competition? People buy from those that they know, like and trust, so it’s up to you to build that trust. Here’s 5 ways to do it.
5/09/2011
IFAD’s social media guidelines – A must read
While preparing for an upcoming training session, I have been scouting for good social media policy and strategy documents, used within nonprofit organisations.
Roxy, blogging at IFAD’s social reporting blog, came back with the excellent and brand new social media guidelines they are using at IFAD.
It is probably the most complete guideline on the use of social media within a nonprofit organisation I have ever come across. Just splendid work!
4/16/2011
How to evaluate a blog – Part 5: The user experience
“User experience” or “Usability” is a big word for webmasters and serious bloggers. It is all – as many things while evaluating a blog or a website- all about “putting yourself in the shoes of your visitors”.
In this part of our evaluation series, I will restrict our analysis to the key points of “How easy is it to use the blog, to find information”.
Got a lot of blog content? Try a magazine layout!
Magazine themes allow you to present content vertically: arranged by categories or tags, as if you had sections in a newspaper or a magazine.
Recently I revamped the CIAT DAPA blog. Or should I say blogS, as they had five separate blogs, which referred one to another. Each of the old blogs had a sequential layout:
4/01/2011
Difference - HTML and XHTML
When inserting codes into the Blogger template, page element, or blog post, you may have seen error messages that the code could not be parsed, was not well-formed, was broken, or that the elements were not closed properly. These errors can be corrected if you understand the rules that must be adhered to in XHTML documents. Blogger templates use the XHTML 1.0 Strict Document Type. In this article, we shall explain some of the XHTML syntax or rules, so that you may troubleshoot and resolve the problems if these error messages should occur.
10 Essential WordPress Plugins For Your Blog
WordPress has thousands of plugins that you install on your blog for free. These range from very specific plugins that do one thing only, to larger plugins that provide extensive functionality in a certain area.
With so many plugins available, it’s hard to know which ones are good, and it’s all too easy to forget one of the really important ones. This list is designed to highlight some of the plugins I found to be particularly useful.
Of course, with so many plugins available, it’s by no means an exhaustive list – so I may be writing a follow-up at a later date. If you’d like to see a follow-up, please add a comment and tell me your top 3 WordPress plugins.
3/22/2011
Blogger Templates Gallery by FalconHive
As you see, we changed the design of FalconHive and decided to focus on new topics other than Blogger templates. In near future, we will show you how to monetize your blog and how to drive more traffic by the way of SEO. We will be purchasing your useful articles too. Of course, there will be new and unique Blogger templates here but we decided to create an external Blogger templates gallery, where you can find the best free templates created for Blogger.
How To Access Blocked Websites Safely
Unfortunately it is not unusual for us to read banned website news. Lately we read how Blogger was banned in Turkey and you can be sure that many websites are getting suspended in China and India everyday. There are some ways to break all these restrictions and gain your independence back and I am going to tell you how to change DNS adresses which is the safest and pernament way.
Before I begin to show you the trick, I strictly recommend you to stay away from accessing blocked websites via proxy sites which force you to fill surveys or your browser to open adwares. And do not trust every DNS you find on forums or other communities if you don’t want to be monitored by unknown firms or people.
Before I begin to show you the trick, I strictly recommend you to stay away from accessing blocked websites via proxy sites which force you to fill surveys or your browser to open adwares. And do not trust every DNS you find on forums or other communities if you don’t want to be monitored by unknown firms or people.
3/14/2011
28 Ways to Make Money with Your Website
There are several lists with “ways to make money with a website” on the Internet, but none of them seem to be complete. That is why I decided to create this one. If you know a method that is not listed below, just let us know and we’ll update it.

43 Web Design Mistakes You Should Avoid
There are several lists of web design mistakes around the Internet. Most of them, however, are the “Most common” or “Top 10” mistakes. Every time I crossed one of those lists I would think to myself: “Come on, there must be more than 10 mistakes…”. Then I decided to write down all the web design mistakes that would come into my head; within half an hour I had over thirty of them listed. Afterwards I did some research around the web and the list grew to 43 points.
The next step was to write a short description for each one, and the result is the collection of mistakes that you will find below. Some of the points are common sense, others are quite polemic. Most of them apply to any website though, whether we talk about a business entity or a blog. Enjoy!
1. The user must know what the site is about in seconds: attention is one the most valuable currencies on the Internet. If a visitor can not figure what your site is about in a couple of seconds, he will probably just go somewhere else. Your site must communicate why I should spend my time there, and FAST!
2. Make the content scannable: this is the Internet, not a book, so forget large blocks of text. Probably I will be visiting your site while I work on other stuff so make sure that I can scan through the entire content. Bullet points, headers, subheaders, lists. Anything that will help the reader filter what he is looking for.
3. Do not use fancy fonts that are unreadable: sure there are some fonts that will give a sophisticated look to your website. But are they readable? If your main objective is to deliver a message and get the visitors reading your stuff, then you should make the process comfortable for them.
4. Do not use tiny fonts: the previous point applies here, you want to make sure that readers are comfortable reading your content. My Firefox does have a zooming feature, but if I need to use on your website it will probably be the last time I visit it.
5. Do not open new browser windows: I used to do that on my first websites. The logic was simple, if I open new browser windows for external links the user will never leave my site. WRONG! Let the user control where he wants the links to open. There is a reason why browsers have a huge “Back” button. Do not worry about sending the visitor to another website, he will get back if he wants to (even porn sites are starting to get conscious regarding this point lately…).
6. Do not resize the user’s browser windows: the user should be in control of his browser. If you resize it you will risk to mess things up on his side, and what is worse you might lose your credibility in front of him.
7. Do not require a registration unless it is necessary: lets put this straight, when I browse around the Internet I want to get information, not the other way around. Do not force me to register up and leave my email address and other details unless it is absolutely necessary (i.e. unless what you offer is so good that I will bear with the registration).
8. Never subscribe the visitor for something without his consent: do not automatically subscribe a visitor to newsletters when he registers up on your site. Sending unsolicited emails around is not the best way to make friends.
9. Do not overuse Flash: apart from increasing the load time of your website, excessive usage of Flash might also annoy the visitors. Use it only if you must offer features that are not supported by static pages.
10. Do not play music: on the early years of the Internet web developers always tried to successfully integrate music into websites. Guess what, they failed miserably. Do not use music, period.
11. If you MUST play an audio file let the user start it: some situations might require an audio file. You might need to deliver a speech to the user or your guided tour might have an audio component. That is fine. Just make sure that the user is in control, let him push the “Play” button as opposed to jamming the music on his face right after he enters the website.
12. Do not clutter your website with badges: first of all, badges of networks and communities make a site look very unprofessional. Even if we are talking about awards and recognition badges you should place them on the “About Us” page.
13. Do not use a homepage that just launches the “real” website: the smaller the number of steps required for the user to access your content, the better.
14. Make sure to include contact details: there is nothing worse than a website that has no contact details. This is not bad only for the visitors, but also for yourself. You might lose important feedback along the way.
15. Do not break the “Back” button: this is a very basic principle of usability. Do not break the “Back” button under any circumstance. Opening new browser windows will break it, for instance, and some Javascript links might also break them.
16. Do not use blinking text: unless your visitors are coming straight from 1996, that is.
17. Avoid complex URL structures: a simple, keyword-based URL structure will not only improve your search engine rankings, but it will also make it easier for the reader to identify the content of your pages before visiting them.
18. Use CSS over HTML tables: HTML tables were used to create page layouts. With the advent of CSS, however, there is no reason to stick to them. CSS is faster, more reliable and it offers many more features.
19. Make sure users can search the whole website: there is a reason why search engines revolutionized the Internet. You probably guessed it, because they make it very easy to find the information we are looking for. Do not neglect this on your site.
20. Avoid “drop down” menus: the user should be able to see all the navigation options straight way. Using “drop down” menus might confuse things and hide the information the reader was actually looking for.
21. Use text navigation: text navigation is not only faster but it is also more reliable. Some users, for instance, browse the Internet with images turned off.
22. If you are linking to PDF files disclose it: ever clicked on a link only to see your browser freezing while Acrobat Reader launches to open that (unrequested) PDF file? That is pretty annoying so make sure to explicit links pointing to PDF files so that users can handle them properly.
23. Do not confuse the visitor with many versions: avoid confusing the visitor with too many versions of your website. What bandwidth do I prefer? 56Kbps? 128Kbps? Flash or HTML? Man, just give me the content!
24. Do not blend advertising inside the content: blending advertising like Adsense units inside your content might increase your click-through rate on the short term. Over the long run, however, this will reduce your readership base. An annoyed visitor is a lost visitor.
25. Use a simple navigation structure: sometimes less is more. This rule usually applies to people and choices. Make sure that your website has a single, clear navigation structure. The last thing you want is to confuse the reader regarding where he should go to find the information he is looking for.
26. Avoid “intros”: do not force the user to watch or read something before he can access to the real content. This is plain annoying, and he will stay only if what you have to offer is really unique.
27. Do not use FrontPage: this point extends to other cheap HTML editors. While they appear to make web design easier, the output will be a poorly crafted code, incompatible with different browsers and with several bugs.
28. Make sure your website is cross-browser compatible: not all browsers are created equal, and not all of them interpret CSS and other languages on the same way. Like it or not, you will need to make your website compatible with the most used browsers on the market, else you will lose readers over the long term.
29. Make sure to include anchor text on links: I confess I used to do that mistake until some time ago. It is easier to tell people to “click here”. But this is not efficient. Make sure to include a relevant anchor text on your links. It will ensure that the reader knows where he is going to if he clicks the link, and it will also create SEO benefits for the external site where the link is pointing.
30. Do not cloak links: apart from having a clear anchor text, the user must also be able to see where the link is pointing on the status bar of his browser. If you cloak your links (either because they are affiliate ones or due to other reasons) your site will lose credibility.
31. Make links visible: the visitor should be able to recognize what is clickable and what is not, easily. Make sure that your links have a contrasting color (the standard blue color is the optimal most of the times). Possibly also make them underlined.
32. Do not underline or color normal text: do not underline normal text unless absolutely necessary. Just as users need to recognize links easily, they should not get the idea that something is clickable when in reality it is not.
33. Make clicked links change color: this point is very important for the usability of your website. Clicked links that change color help the user to locate himself more easily around your site, making sure that he will not end up visiting the same pages unintentionally.
34. Do not use animated GIFs: unless you have advertising banners that require animation, avoid animated GIFs. They make a site look unprofessional and detract the attention from the content.
35. Make sure to use the ALT and TITLE attributes for images: apart from having SEO benefits the ALT and TITLE attributes for images will play an important role for blind users.
36. Do not use harsh colors: if the user is getting a headache after visiting your site for 10 consecutive minutes, you probably should pick a better color scheme. Design the color palette around your objectives (i.e. deliver a mood, let the user focus on the content, etc.).
37. Do not use pop ups: this point refers to pop ups of any kind. Even user requested pop ups are a bad idea given the increasing amount of pop blockers out there.
38. Avoid Javascript links: those links execute a small Javascript when the user clicks on them. Stay away from them since they often create problems for the user.
39. Include functional links on your footer: people are used to scrolling down to the footer of a website if they are not finding a specific information. At the very least you want to include a link to the Homepage and possibly a link to the “Contact Us” page.
40. Avoid long pages: guess what, if the user needs to scroll down forever in order to read your content he will probably just skip it altogether. If that is the case with your website make it shorter and improve the navigation structure.
41. No horizontal scrolling: while some vertical scrolling is tolerable, the same can not be said about horizontal scrolling. The most used screen resolution nowadays is 1024 x 768 pixels, so make sure that your website fits inside it.
42. No spelling or grammatical mistakes: this is not a web design mistake, but it is one of the most important factors affecting the overall quality of a website. Make sure that your links and texts do not contain spelling or grammatical mistakes.
43. If you use CAPTCHA make sure the letters are readable: several sites use CAPTCHA filters as a method of reducing spam on comments or on registration forms. There is just one problem with it, most of the times the user needs to call his whole family to decipher the letters.
by dailyblogtips.com
The next step was to write a short description for each one, and the result is the collection of mistakes that you will find below. Some of the points are common sense, others are quite polemic. Most of them apply to any website though, whether we talk about a business entity or a blog. Enjoy!
1. The user must know what the site is about in seconds: attention is one the most valuable currencies on the Internet. If a visitor can not figure what your site is about in a couple of seconds, he will probably just go somewhere else. Your site must communicate why I should spend my time there, and FAST!
2. Make the content scannable: this is the Internet, not a book, so forget large blocks of text. Probably I will be visiting your site while I work on other stuff so make sure that I can scan through the entire content. Bullet points, headers, subheaders, lists. Anything that will help the reader filter what he is looking for.
3. Do not use fancy fonts that are unreadable: sure there are some fonts that will give a sophisticated look to your website. But are they readable? If your main objective is to deliver a message and get the visitors reading your stuff, then you should make the process comfortable for them.
4. Do not use tiny fonts: the previous point applies here, you want to make sure that readers are comfortable reading your content. My Firefox does have a zooming feature, but if I need to use on your website it will probably be the last time I visit it.
5. Do not open new browser windows: I used to do that on my first websites. The logic was simple, if I open new browser windows for external links the user will never leave my site. WRONG! Let the user control where he wants the links to open. There is a reason why browsers have a huge “Back” button. Do not worry about sending the visitor to another website, he will get back if he wants to (even porn sites are starting to get conscious regarding this point lately…).
6. Do not resize the user’s browser windows: the user should be in control of his browser. If you resize it you will risk to mess things up on his side, and what is worse you might lose your credibility in front of him.
7. Do not require a registration unless it is necessary: lets put this straight, when I browse around the Internet I want to get information, not the other way around. Do not force me to register up and leave my email address and other details unless it is absolutely necessary (i.e. unless what you offer is so good that I will bear with the registration).
8. Never subscribe the visitor for something without his consent: do not automatically subscribe a visitor to newsletters when he registers up on your site. Sending unsolicited emails around is not the best way to make friends.
9. Do not overuse Flash: apart from increasing the load time of your website, excessive usage of Flash might also annoy the visitors. Use it only if you must offer features that are not supported by static pages.
10. Do not play music: on the early years of the Internet web developers always tried to successfully integrate music into websites. Guess what, they failed miserably. Do not use music, period.
11. If you MUST play an audio file let the user start it: some situations might require an audio file. You might need to deliver a speech to the user or your guided tour might have an audio component. That is fine. Just make sure that the user is in control, let him push the “Play” button as opposed to jamming the music on his face right after he enters the website.
12. Do not clutter your website with badges: first of all, badges of networks and communities make a site look very unprofessional. Even if we are talking about awards and recognition badges you should place them on the “About Us” page.
13. Do not use a homepage that just launches the “real” website: the smaller the number of steps required for the user to access your content, the better.
14. Make sure to include contact details: there is nothing worse than a website that has no contact details. This is not bad only for the visitors, but also for yourself. You might lose important feedback along the way.
15. Do not break the “Back” button: this is a very basic principle of usability. Do not break the “Back” button under any circumstance. Opening new browser windows will break it, for instance, and some Javascript links might also break them.
16. Do not use blinking text: unless your visitors are coming straight from 1996, that is.
17. Avoid complex URL structures: a simple, keyword-based URL structure will not only improve your search engine rankings, but it will also make it easier for the reader to identify the content of your pages before visiting them.
18. Use CSS over HTML tables: HTML tables were used to create page layouts. With the advent of CSS, however, there is no reason to stick to them. CSS is faster, more reliable and it offers many more features.
19. Make sure users can search the whole website: there is a reason why search engines revolutionized the Internet. You probably guessed it, because they make it very easy to find the information we are looking for. Do not neglect this on your site.
20. Avoid “drop down” menus: the user should be able to see all the navigation options straight way. Using “drop down” menus might confuse things and hide the information the reader was actually looking for.
21. Use text navigation: text navigation is not only faster but it is also more reliable. Some users, for instance, browse the Internet with images turned off.
22. If you are linking to PDF files disclose it: ever clicked on a link only to see your browser freezing while Acrobat Reader launches to open that (unrequested) PDF file? That is pretty annoying so make sure to explicit links pointing to PDF files so that users can handle them properly.
23. Do not confuse the visitor with many versions: avoid confusing the visitor with too many versions of your website. What bandwidth do I prefer? 56Kbps? 128Kbps? Flash or HTML? Man, just give me the content!
24. Do not blend advertising inside the content: blending advertising like Adsense units inside your content might increase your click-through rate on the short term. Over the long run, however, this will reduce your readership base. An annoyed visitor is a lost visitor.
25. Use a simple navigation structure: sometimes less is more. This rule usually applies to people and choices. Make sure that your website has a single, clear navigation structure. The last thing you want is to confuse the reader regarding where he should go to find the information he is looking for.
26. Avoid “intros”: do not force the user to watch or read something before he can access to the real content. This is plain annoying, and he will stay only if what you have to offer is really unique.
27. Do not use FrontPage: this point extends to other cheap HTML editors. While they appear to make web design easier, the output will be a poorly crafted code, incompatible with different browsers and with several bugs.
28. Make sure your website is cross-browser compatible: not all browsers are created equal, and not all of them interpret CSS and other languages on the same way. Like it or not, you will need to make your website compatible with the most used browsers on the market, else you will lose readers over the long term.
29. Make sure to include anchor text on links: I confess I used to do that mistake until some time ago. It is easier to tell people to “click here”. But this is not efficient. Make sure to include a relevant anchor text on your links. It will ensure that the reader knows where he is going to if he clicks the link, and it will also create SEO benefits for the external site where the link is pointing.
30. Do not cloak links: apart from having a clear anchor text, the user must also be able to see where the link is pointing on the status bar of his browser. If you cloak your links (either because they are affiliate ones or due to other reasons) your site will lose credibility.
31. Make links visible: the visitor should be able to recognize what is clickable and what is not, easily. Make sure that your links have a contrasting color (the standard blue color is the optimal most of the times). Possibly also make them underlined.
32. Do not underline or color normal text: do not underline normal text unless absolutely necessary. Just as users need to recognize links easily, they should not get the idea that something is clickable when in reality it is not.
33. Make clicked links change color: this point is very important for the usability of your website. Clicked links that change color help the user to locate himself more easily around your site, making sure that he will not end up visiting the same pages unintentionally.
34. Do not use animated GIFs: unless you have advertising banners that require animation, avoid animated GIFs. They make a site look unprofessional and detract the attention from the content.
35. Make sure to use the ALT and TITLE attributes for images: apart from having SEO benefits the ALT and TITLE attributes for images will play an important role for blind users.
36. Do not use harsh colors: if the user is getting a headache after visiting your site for 10 consecutive minutes, you probably should pick a better color scheme. Design the color palette around your objectives (i.e. deliver a mood, let the user focus on the content, etc.).
37. Do not use pop ups: this point refers to pop ups of any kind. Even user requested pop ups are a bad idea given the increasing amount of pop blockers out there.
38. Avoid Javascript links: those links execute a small Javascript when the user clicks on them. Stay away from them since they often create problems for the user.
39. Include functional links on your footer: people are used to scrolling down to the footer of a website if they are not finding a specific information. At the very least you want to include a link to the Homepage and possibly a link to the “Contact Us” page.
40. Avoid long pages: guess what, if the user needs to scroll down forever in order to read your content he will probably just skip it altogether. If that is the case with your website make it shorter and improve the navigation structure.
41. No horizontal scrolling: while some vertical scrolling is tolerable, the same can not be said about horizontal scrolling. The most used screen resolution nowadays is 1024 x 768 pixels, so make sure that your website fits inside it.
42. No spelling or grammatical mistakes: this is not a web design mistake, but it is one of the most important factors affecting the overall quality of a website. Make sure that your links and texts do not contain spelling or grammatical mistakes.
43. If you use CAPTCHA make sure the letters are readable: several sites use CAPTCHA filters as a method of reducing spam on comments or on registration forms. There is just one problem with it, most of the times the user needs to call his whole family to decipher the letters.
by dailyblogtips.com
3/08/2011
Blog Update: Widgets and Add-Ons, Themes and Templates
Actually I should post this update last Thursday but I went back to Miri for my nephew's, Melvin, wedding. I'm quite busy these few days so I have to postpone it until today.
*Widgets and Add-OnsI've added the 'Recent Comment Feed' Widget which is quite a cool and helpful widget for the blog. Which will update me with the latest comments on any posts. Thanks for its help, I don't have to worry anymore checking comments on every page.
Example:

Photo courtesy of Tips for New Blogger
*Outlook and TemplatesAll this while I've been trying to change my blog's outlook. I mean, to make it look a bit more fancy and more attractive because the original design is too plain. Below is the picture of my original blog, which only has 2 columns (Minima Template).
I've changed the template from minima to denim and also added a new column in between of the post and footer column.
Happy with the extra column but not with the design. I decided to browse for blogger's templates and I found few templates that really ticks me.
So I decided to try this template called Dilectio... It's a converted Wordpress's template, so that you can use it in Blogger.
Dilectio comes from the Latin Language and it means "love, solicitude, esteem".
Now my blog looks far more better and more attractive. As you can see...
* White background and header with the continuous swirl design.
* 3-columns theme.
* Tab menus.
* Navigation bars.
* 'Leave a reply' in the comment area.
* Widget ready - two sidebars supporting widgets.
* Using 5 plugins - WP-PageNavi, Recent Posts, Recent Comments, Gravatar and FlickrRSS.
* "About this Blog" section which includes an intro, search and links to RSS feeds.
But I still do have a bit problem with the theme on its main content area. Disorganized arrangement of the contents. I'm trying to deal with the problem as soon as possible because this will spoil the looks of my blog and makes it look disorganized.
Eli Shares some helpful tips for your blog:
+ Recent Comments Feed Widget.
+ 3-Columns template (Denim Template).
- Links for other templates are available in the post.
- Make sure you choose the right selection for your blog.
+ Change your blog's outlook with cool premium themes.
[UPDATE] 17 March 2008Bad news, I've found out that there's no 'Leave a reply' function in the comment area. Which I don't have any idea why it is not there. Now I'm still using the original blogger's "Post a comment".
Good news, I have solved the problem at the 'main content area'. It is quite a hardwork to check the codes throughly and spot where the problem lies. I have to do trial and errors check out on the codes. What I did was changing the value of any possible codes that involves image one by one until I found the flaw.
/**/ * html .post-body p img {} /* */
.post-body p img { max-width: 420px;}
.post-body p img { width:expression(this.width > 420 ? "420px" : this.width); }
.post-body img { margin: 0px 10px 10px 0px; float: relative; border:solid 1px #495b6b;}
After changing the float value to relative, the pictures and text are properly aligned back as how it supposed to be. Problem solved, no more disorganized text alignment.
by elishares.blogspot.com
*Widgets and Add-OnsI've added the 'Recent Comment Feed' Widget which is quite a cool and helpful widget for the blog. Which will update me with the latest comments on any posts. Thanks for its help, I don't have to worry anymore checking comments on every page.
Example:

Photo courtesy of Tips for New Blogger
*Outlook and TemplatesAll this while I've been trying to change my blog's outlook. I mean, to make it look a bit more fancy and more attractive because the original design is too plain. Below is the picture of my original blog, which only has 2 columns (Minima Template).
I've changed the template from minima to denim and also added a new column in between of the post and footer column.
Happy with the extra column but not with the design. I decided to browse for blogger's templates and I found few templates that really ticks me.
So I decided to try this template called Dilectio... It's a converted Wordpress's template, so that you can use it in Blogger.
Dilectio comes from the Latin Language and it means "love, solicitude, esteem".
Now my blog looks far more better and more attractive. As you can see...
* White background and header with the continuous swirl design.
* 3-columns theme.
* Tab menus.
* Navigation bars.
* Widget ready - two sidebars supporting widgets.
* Using 5 plugins - WP-PageNavi, Recent Posts, Recent Comments, Gravatar and FlickrRSS.
* "About this Blog" section which includes an intro, search and links to RSS feeds.
But I still do have a bit problem with the theme on its main content area. Disorganized arrangement of the contents. I'm trying to deal with the problem as soon as possible because this will spoil the looks of my blog and makes it look disorganized.
Eli Shares some helpful tips for your blog:
+ Recent Comments Feed Widget.
+ 3-Columns template (Denim Template).
- Links for other templates are available in the post.
- Make sure you choose the right selection for your blog.
+ Change your blog's outlook with cool premium themes.
[UPDATE] 17 March 2008Bad news, I've found out that there's no 'Leave a reply' function in the comment area. Which I don't have any idea why it is not there. Now I'm still using the original blogger's "Post a comment".
Good news, I have solved the problem at the 'main content area'. It is quite a hardwork to check the codes throughly and spot where the problem lies. I have to do trial and errors check out on the codes. What I did was changing the value of any possible codes that involves image one by one until I found the flaw.
/**/ * html .post-body p img {} /* */
.post-body p img { max-width: 420px;}
.post-body p img { width:expression(this.width > 420 ? "420px" : this.width); }
.post-body img { margin: 0px 10px 10px 0px; float: relative; border:solid 1px #495b6b;}
After changing the float value to relative, the pictures and text are properly aligned back as how it supposed to be. Problem solved, no more disorganized text alignment.
by elishares.blogspot.com
How to Blog, Muppet Show-Style
There are a lot of things that shows like Friends didn’t warn teens and twenty-somethings about. For example, you seldom saw, on any episode, scenes where the characters’ bodies randomly decided to become overweight or broken down. Monica and Chandler never said, “Yippee! A Saturday! More time to do work!” They certainly didn’t hint that sitting down to watch The Muppet Show for nostalgia’s sake would inspire a blog post. Life is full of surprises!
A lot of people, just like me, have been revisiting the original Muppet Show, which is available on DVD now. What is most interesting about checking back with Kermit, Miss Piggy, Fozzie, and the rest of the muppets is that you discover that the show has an entirely new but equally brilliant meaning when you watch it as an adult. Somehow, Jim Henson was able to create a show that works as well for toddlers as it does for adults.
This kind of nuanced, multi-level storytelling can also convert a good blog into a great one. Here are some ideas on how to blog Muppet Show-style.
As a blogger, cuteness will probably not work for you unless your target audience is kids. However, what you can concentrate on is the group of people who pass by your blog by chance. They don’t know you, they aren’t connected with you on Twitter or Facebook, but they end up at your blog anyway. How can you entice these people to stick around? You could try:
When writing a blog, the challenge is not entertaining kids and adults; rather, it is making sure that people familiar and unfamiliar with your subject matter find your blog valuable. How can you accomplish this goal?
The Muppet Show accomplished this primarily through the guests that they brought on every week. You’d be hard-pressed to find two people more dissimilar than Alice Cooper and Raquel Welch, but both were guests on the show. In both episodes, the show maintained its core integrity—The Muppet Show was still The Muppet Show. How did Henson do that? The infrastructure of the show didn’t change. The main characters didn’t change. Only the details were altered.
How can you do this on your blog?
What do you think?
What other lessons can you learn from watching The Muppet Show? How else can you bring that nuanced storytelling to your blog? I’d love to talk about it with you in the comments.
theo problogger.net
A lot of people, just like me, have been revisiting the original Muppet Show, which is available on DVD now. What is most interesting about checking back with Kermit, Miss Piggy, Fozzie, and the rest of the muppets is that you discover that the show has an entirely new but equally brilliant meaning when you watch it as an adult. Somehow, Jim Henson was able to create a show that works as well for toddlers as it does for adults.
This kind of nuanced, multi-level storytelling can also convert a good blog into a great one. Here are some ideas on how to blog Muppet Show-style.
Begin on the surface
How did The Muppet Show work for kids? Well, as a kid, how could you not fall in love with the-ultra cute Fozzie Bear and Rowlf the dog? How could you not admire Kermit’s tiny flailing arms and Miss Piggy’s penchant for punching everyone out?As a blogger, cuteness will probably not work for you unless your target audience is kids. However, what you can concentrate on is the group of people who pass by your blog by chance. They don’t know you, they aren’t connected with you on Twitter or Facebook, but they end up at your blog anyway. How can you entice these people to stick around? You could try:
- using a conversational tone so that they feel welcome right away
- using strong images that help emphasize key points in your blogs
- using a highly legible font and enough spacing so that your blog is easy to read.
Be conscious of your audience
One of the most masterful aspects of The Muppet Show is that Henson and his team were able to write jokes that were horrible, and then they made fun of their own jokes in their script. The horrible jokes probably are hilarious to kids, and adults appreciate the fact that the writers aren’t huffing and puffing as if they’re sending out the best comedy sketches ever.When writing a blog, the challenge is not entertaining kids and adults; rather, it is making sure that people familiar and unfamiliar with your subject matter find your blog valuable. How can you accomplish this goal?
- Use your blog to spark conversation rather than using your blog as a soapbox.
- Write so that you can invite knowledgeable readers to participate while educating readers unfamiliar with your topic.
- Invite comments and questions at the end of your post so that everyone feels welcome to contribute to the conversation.
Create variations on a theme
You’ll see a lot of advice about how to pick the mission of your blog. There is no doubt that this is essential. However, you also need to be able to venture into new ways of bringing those objectives into reality while maintaining your readership.The Muppet Show accomplished this primarily through the guests that they brought on every week. You’d be hard-pressed to find two people more dissimilar than Alice Cooper and Raquel Welch, but both were guests on the show. In both episodes, the show maintained its core integrity—The Muppet Show was still The Muppet Show. How did Henson do that? The infrastructure of the show didn’t change. The main characters didn’t change. Only the details were altered.
How can you do this on your blog?
- Invite people to guest-post on your site.
- Stretch the range of topics you write about.
- If you gravitate towards list posts, try a story instead.
What do you think?
What other lessons can you learn from watching The Muppet Show? How else can you bring that nuanced storytelling to your blog? I’d love to talk about it with you in the comments.
theo problogger.net
2/25/2011
How one small plug-in can slow down your site
Mea Culpa! Drupal is fast, but I made it slow...
Before I begin, let me re-state that Drupal by itself, is fast. I mean real fast. That’s why I gave Drupal two thumbs up in my 2010 blogger’s wrapup. But it only takes half a dumb system administrator (or web admin) to make any fast system slow. And I succeeded very well in that.
As I was debugging my server’s CPU load for my WordPress blogs, I saw that my Drupal site, hosted on the same machine, was putting a lot of pressure on my SQL and Apache servers.
Well, the site as such was not slow. As I used extensive caching, a visitor did not see anything. But boy, the site really loaded my server!
I did not understand why. I mean, sure, I have a lot of traffic, but as with most news site, 90% of all traffic goes to the same most recent posts. And that was caught by the cache, so that traffic should not even touch PHP or SQL. Proof of the matter was that as a visitor, the site was very fast, taking only one or two seconds to load.
So why did the site put that much load on the server? I found out be pure luck.
I was checking Google Webmasters how the sitemaps for my different blogs were going, and noticed my Drupal site’s sitemap never gets submitted to Google. So I looked at the module settings. Something I should have done much earlier.
Apart from the module having apparent problems with high volume sites, I also misconfigured it: I had set the module to regenerate a sitemap of the latest 2,000 posts at every CRON (the internal scheduler) run.
On my site, CRON is set to run at every 1o minutes, as I use CRON to trigger the import over 1,000 RSS feeds which need very regular refreshing.
So in short, stupid me, I was forcing Drupal to scan through 2,000 posts every 10 minutes and generate a new sitemap.xml file. You can imagine how many SQL queries that generated unnecessarily.
I disabled the module while I monitored the CPU load interactively. Almost on the spot, I could see the load on the Apache and SQL server going down. And the server has been purring happily ever since.
Since that moment, I am sitting in the corner of my room, with ashes on my head, crying “Mea Culpa, Mea Culpa, Mea Maxima Culpa”* (* “It is my fault, my fault, my freaking fault”), and hope the Server Gods won’t look badly upon me on my Digital Judgement day.
Bottomline:
For selfhosted Content Management Systems like Drupal or WordPress alike: check each of your plugins and their settings. It takes only one plugin or one wrongly configured plugin to either slow down your site, or slow down your server.by blogtips.org
The difference between shared hosting and dedicated hosting
After a year running on Godaddy’s shared hosting, I moved BlogTips to its new HostGator VPS hosting end of October.
Look at the Google crawler statistics showing the average download speed for a page. See the difference? While on shared hosting, it took up to 25 seconds to load a page, the performance on the VPS hosting, drastically improved to an average of < 5 seconds for a page.
Same blog, same plugins, same caching.
And it is not like my VPS server doesn’t do much. It hosts about 15 sites, a total of 700,000 blogposts (!), serves about 40,000 to 50,000 visitors per month, transfers about 1 Gbyte of data per day. The Apache PHP server processes 90 requests per minute…
by blogtips.org
2/21/2011
10 tips for managing multiple blogs
Once you’ve mastered the art of blogging, setting up additional blogs is something you should consider doing. Here are 10 tips for managing multiple blogs.
In other words – get it wrong on one blog, then fix it before you launch any other blogs.
If you’ve already set up some blogs separately, the following migration guide will be of interest.
With multiple jobs, finding a posting schedule is a much more complex matter. For instance, if you run five blogs and you like to write on a Saturday, you’ll need to write five posts just to get one new post onto each of your blogs. It’s a lot more work – but you can work it into a sensible schedule.
I try not to have too many posts going up on the same day, even if the blogs are on different topics. So if I know I’ll be publishing a post on a Wednesday, I might choose Thursday for one of my other blogs, and Tuesday for yet another blog.
This might not work if your readers like to see new content on a Monday across all of your blogs… so let’s look at a way to deal with that.
With multiple blogs, the stack of posts you want/need to write is going to increase. However, the same rule applies: it’s good to get ahead. On some of my blogs, I write when I think of a post and publish it immediately. On others, I write in advance. It all depends on the type of content I’m writing, how many posts I publish in an average week, and how organised I am with my schedule.
Here are three examples:
If you have several multi-topic blogs, you may find that some of them get neglected, or they suffer from poor quality content as you post on them just to keep them somewhat up to date.
There’s very little reason to set up multiple blogs if you don’t have different things to say on each one. Finding a new social networking site that happens to have a blog widget is not a good enough reason to have a blog on every site you use.
You’ll probably need to promote each blog individually anyway. But in much the same way you should link to previous blog posts to get people clicking around a bit, being able to cross-promote your blogs is a very powerful way to make your content much richer and keep readers on your blogs for longer.
How many times have you been on Wikipedia, clicked a link, and ended up on a totally random article an hour later? Maybe it’s just me…
One method is to comment on blogs in your niche using the most relevant link, and simply broaden your commenting community to include blogs from every niche you’re currently writing in.
Alternatively, you could comment with a link to your “master blog”, or your portfolio page, if you have one
by toptenblogstip.com
1. Get one blog right before starting any more.
The key here is to figure out what works and what doesn’t before you make the same mistakes on all of your blogs, and you only realise this when you’ve potentially wasted a lot of time doing things the wrong way.In other words – get it wrong on one blog, then fix it before you launch any other blogs.
2. Don’t start too many at once.
It’s a lot harder to make an impact if you launch loads of blogs in one go, than if you gradually release them one at a time. Give people a chance to check out one blog before you start another.3. Use WordPress Multisite to reduce your workload.
I used to install each blog individually, which becomes a huge hassle once you get to your third or fourth blog. The multi-site options in WordPress 3.0 will make your life much, much easier in this respect.If you’ve already set up some blogs separately, the following migration guide will be of interest.
4. Have a “master blog” and link to all your blogs from there.
This is required for WordPress Multisite – at least the “master blog” is – you don’t have to display cross-site links if you don’t want to. But it’s a great way to get people checking out your other blogs. My portfolio is how I do this at the moment.5. Mix up your posting schedule.
When you only have one blog, choosing a posting schedule is relatively simple. Figure out how much content you can write in a week, think about the days when you’ll be able to commit to writing posts, and set a goal that’s both ambitious and realistic. If it doesn’t work, change it. Job done.With multiple jobs, finding a posting schedule is a much more complex matter. For instance, if you run five blogs and you like to write on a Saturday, you’ll need to write five posts just to get one new post onto each of your blogs. It’s a lot more work – but you can work it into a sensible schedule.
I try not to have too many posts going up on the same day, even if the blogs are on different topics. So if I know I’ll be publishing a post on a Wednesday, I might choose Thursday for one of my other blogs, and Tuesday for yet another blog.
This might not work if your readers like to see new content on a Monday across all of your blogs… so let’s look at a way to deal with that.
6. Write posts in advance.
If you want to publish one post a day on a single blog, it’s a good idea to try and write some posts in advance and schedule them to go live at the time of your choosing. Especially if you’re going away, or if you are better at writing lots of posts in one sitting.With multiple blogs, the stack of posts you want/need to write is going to increase. However, the same rule applies: it’s good to get ahead. On some of my blogs, I write when I think of a post and publish it immediately. On others, I write in advance. It all depends on the type of content I’m writing, how many posts I publish in an average week, and how organised I am with my schedule.
Here are three examples:
- Weekly Blogging: for the upcoming week, I wrote 5 posts on a Sunday afternoon and scheduled them to go out on Monday to Friday.
- Spam Comment: at the moment, there are 45 scheduled posts. This blog has one new post every weekday, so the current schedule will be good for 9 weeks. Currently, the last scheduled post is dated March 4th.
- Ben Barden: no scheduled posts, I write on this blog when I have something to say.
7. Have a clear separation from one blog to the next.
Each blog should have a clear focus – otherwise, how will you know which blog should contain a certain type of post?If you have several multi-topic blogs, you may find that some of them get neglected, or they suffer from poor quality content as you post on them just to keep them somewhat up to date.
There’s very little reason to set up multiple blogs if you don’t have different things to say on each one. Finding a new social networking site that happens to have a blog widget is not a good enough reason to have a blog on every site you use.
8. Have some overlap.
Contrary to the above, allowing your blogs to overlap will allow you to link them together. There should still be a clear separation so you can tell where one blog ends and the next begins, but isolating each blog will create work for you as you’ll need to promote each blog one by one.You’ll probably need to promote each blog individually anyway. But in much the same way you should link to previous blog posts to get people clicking around a bit, being able to cross-promote your blogs is a very powerful way to make your content much richer and keep readers on your blogs for longer.
How many times have you been on Wikipedia, clicked a link, and ended up on a totally random article an hour later? Maybe it’s just me…
9. Accept guest posts.
Don’t depend on them as your only source of content – but do invite readers to become writers, by accepting guest posts on your blogs. This can help you to schedule many more posts in advance, and allow the blog to run itself for a period of time.10. Comment with different links.
Another cross-promotion technique is to alter the link you use when commenting on other people’s blogs. This can be tricky to manage, as you’ll somehow need to keep track of which links you’ve used and how often each one has been used.One method is to comment on blogs in your niche using the most relevant link, and simply broaden your commenting community to include blogs from every niche you’re currently writing in.
Alternatively, you could comment with a link to your “master blog”, or your portfolio page, if you have one
by toptenblogstip.com
10 Essential WordPress Plugins For Your Blog
10 Essential WordPress Plugins For
WordPress has thousands of plugins that you install on your blog for free. These range from very specific plugins that do one thing only, to larger plugins that provide extensive functionality in a certain area.
With so many plugins available, it’s hard to know which ones are good, and it’s all too easy to forget one of the really important ones. This list is designed to highlight some of the plugins I found to be particularly useful.
Of course, with so many plugins available, it’s by no means an exhaustive list – so I may be writing a follow-up at a later date. If you’d like to see a follow-up, please add a comment and tell me your top 3 WordPress plugins.
So, what are the 10 plugins I find essential for my blogs?
Be careful not to flood your Twitter stream with links, though. Choose an update frequency that will balance nicely with the amount you engage with your Twitter followers.
I’ve written more about this plugin over at Weekly Blogging: Tweet Old Post.
One thing I’d like to see from this plugin is a way to drag and drop the controls while editing the form, instead of relying on the shortcodes. But it’s still a great plugin that most blogs should have a use for.
If you’re using the multi-site options in WordPress 3 or above, make sure you install the version of this plugin with multi-site support. Unsurprisingly, it’s called: Google XML Sitemaps with Multisite support.
I’ve heard many arguments about the use of revisions in WordPress (mostly when the feature was first added to the core). Sure, it may work well for some sites. But if you don’t have a need for it, revisions do clog up your database with unnecessary data. This is more of a concern if you have limited disk space on your server. For me, disabling revisions decreases the size of my backups, which add up quickly considering the number of blogs I run at the moment. Which brings me nicely to the next plugin…
Allowing commenters to subscribe to comments means they will read any replies that get posted. This encourages them to come back and add a further comment, and perhaps post more comments in the future.
If your first comment on a blog isn’t one where you can subscribe, a lot of people won’t come back to comment again – often because they forget. Don’t let this happen. Help people to be reminded when it’s time to revisit your blog.
It reminds people that they can tweet your post, and gives them an easy way to do it. Also, it gives you an easy way to see how many people have tweeted a post.
I only recently added the TweetMeme retweet button to this blog. When I did, I was surprised to see how many of my posts have had loads of retweets.
It also gives you a simple way to exclude admins from your stats, without worrying about blocking specific IP addresses. If you log in from more than one IP, this is a good idea.
The best part of this plugin? The stats summary on the WordPress dashboard. So the next time you go to write a post, you can quickly see your stats for the last month. Awesome.
For the tech-savvy, you might prefer to edit your .htaccess file directly. It’s no huge issue. However, I ran into difficulties with this approach when I started using the multi-site options in WordPress.
Redirection makes this much simpler, and you can also keep track of how many times each link has been redirected. Handy stuff.
I’ve written more about this plugin at Weekly Blogging: Redirection.
NextGEN Gallery is easy to use, and has the features I’d expect most blogs to find useful. Upload and manage your photos, and browse the gallery. It looks great, too.
by toptenblogtips.com
With so many plugins available, it’s hard to know which ones are good, and it’s all too easy to forget one of the really important ones. This list is designed to highlight some of the plugins I found to be particularly useful.
Of course, with so many plugins available, it’s by no means an exhaustive list – so I may be writing a follow-up at a later date. If you’d like to see a follow-up, please add a comment and tell me your top 3 WordPress plugins.
So, what are the 10 plugins I find essential for my blogs?
1. Tweet Old Post
Tweet Old Post allows you to highlight old posts from your blog via a Twitter post. The plugin will post to Twitter every so often, linking to a random post from your archives. This is an excellent way to give old posts a new lease of life, and expose them to an audience who may have missed them the first time around.Be careful not to flood your Twitter stream with links, though. Choose an update frequency that will balance nicely with the amount you engage with your Twitter followers.
I’ve written more about this plugin over at Weekly Blogging: Tweet Old Post.
2. Contact Form 7
This is a marvellous plugin that can be used to build a very simple contact form, or to build something that requires very specific information to be entered. The default contact form can be used immediately; you can also build your own forms as and when you need to.One thing I’d like to see from this plugin is a way to drag and drop the controls while editing the form, instead of relying on the shortcodes. But it’s still a great plugin that most blogs should have a use for.
3. Google XML Sitemaps
This plugin creates a Google-compatible sitemap, ready for uploading via Google Webmaster Tools. This is a very good way to get all of your posts indexed by Google in a relatively short space of time, instead of waiting for Google to crawl your entire site. The sitemap gets updated when you post, which can help to get your posts on Google very quickly.If you’re using the multi-site options in WordPress 3 or above, make sure you install the version of this plugin with multi-site support. Unsurprisingly, it’s called: Google XML Sitemaps with Multisite support.
4. Revision Control
A simple plugin, but one I find essential. I don’t like the way that WordPress saves post revisions every time I change a post, including when it auto-saves a post. So I use this plugin to disable revisions altogether.I’ve heard many arguments about the use of revisions in WordPress (mostly when the feature was first added to the core). Sure, it may work well for some sites. But if you don’t have a need for it, revisions do clog up your database with unnecessary data. This is more of a concern if you have limited disk space on your server. For me, disabling revisions decreases the size of my backups, which add up quickly considering the number of blogs I run at the moment. Which brings me nicely to the next plugin…
5. WordPress Database Backup
Simple and absolutely vital, backing up your blog is something we should all be doing. Don’t wait to lose your posts before you start backing up. Do it now.6. Subscribe To “Double Opt In” Comments
How many times have you commented on a blog, only to find that there’s no way to find out if someone replied to your comment? This happens to me from time to time – thankfully not on every blog I visit – but it’s disappointing to find a blog that doesn’t use this plugin.Allowing commenters to subscribe to comments means they will read any replies that get posted. This encourages them to come back and add a further comment, and perhaps post more comments in the future.
If your first comment on a blog isn’t one where you can subscribe, a lot of people won’t come back to comment again – often because they forget. Don’t let this happen. Help people to be reminded when it’s time to revisit your blog.
7. TweetMeme Retweet Button
I’ve never liked blog clutter, so I hate seeing loads of social links on every post. However, one I do like seeing is the retweet button from TweetMeme.It reminds people that they can tweet your post, and gives them an easy way to do it. Also, it gives you an easy way to see how many people have tweeted a post.
I only recently added the TweetMeme retweet button to this blog. When I did, I was surprised to see how many of my posts have had loads of retweets.
8. Google Analyticator
This plugin gives you a quick way to add the Google Analytics code to your site, once you’ve added the site to your Analytics profile. Pretty simple.It also gives you a simple way to exclude admins from your stats, without worrying about blocking specific IP addresses. If you log in from more than one IP, this is a good idea.
The best part of this plugin? The stats summary on the WordPress dashboard. So the next time you go to write a post, you can quickly see your stats for the last month. Awesome.
9. Redirection
If you’ve ever moved domains, changed blogging platforms, or moved posts from one blog to another, this plugin is a lifesaver.For the tech-savvy, you might prefer to edit your .htaccess file directly. It’s no huge issue. However, I ran into difficulties with this approach when I started using the multi-site options in WordPress.
Redirection makes this much simpler, and you can also keep track of how many times each link has been redirected. Handy stuff.
I’ve written more about this plugin at Weekly Blogging: Redirection.
10. NextGEN Gallery
I’ve tried several gallery plugins, but this is by far the best. Most of the others I tried had plenty of features, but they were really badly organised.NextGEN Gallery is easy to use, and has the features I’d expect most blogs to find useful. Upload and manage your photos, and browse the gallery. It looks great, too.
by toptenblogtips.com
How to enable a mobile theme on your WordPress blog in one minute
Going from left to right in 1 minute
Nevertheless, the amount of visitors accessing your websites from mobile devices is rapidly increasing. Just for curiosity, I checked the statistics for mobile access on my personal blog.
It runs on Blogger, and as such is not mobile enabled. For 600,000 visits in the past four years:
2007: 0% mobile access
2008: 0% mobile access
2009: 1% mobile access
2010: 3% mobile access
A steady increase, which, of course, would have been higher if the site was mobile enabled! You might think 3% is not a lot, but according to web prophets, “the future is mobile”:
Mobile phones will overtake PCs as the most common web-access devices worldwide by 2013. It‘s estimated that the combined installed base of smartphones and browser-equipped enhanced phones will surpass 1.82 billion units by 2013, eclipsing the total of 1.78 billion PCs by then. (Source)So, it is about time to get your blog ready for mobile access!
As I mentioned in a previous post: hosted blog platforms like Tumblr, Posterous (which was the last one to enable mobile support) and WordPress.com have supported mobile access already by default. Blogger, as usual drags behind…
But if you selfhost your blog, enabling mobile access for your blog, is a breeze. At least on WordPress it is. In five clicks and one minute, you can make your blog mobile ready. Literally! And that one minute will not only make your blog “ready for the future”, but might just as well attract a new “market”: Your “mobile” visitors…
I am right now switching over my blogs for mobile access one by one, using the WP Mobile Detector plugin. That’s right: one plug-in is all what’s required.
The plugin is for free, installs like any other WordPress plug-in (a breeze), and comes with seven mobile themes. So just enable the plug-in, choose one of the mobile themes, and you are done. Enable “Mobile Support”, if you use a cache plugin though!
If you don’t believe it only takes one minute to enable mobile support for your blog, check this short video I made, enabling mobile support for BlogTips (PS: there is no sound. Was just meant to show how fast the configuration goes):
It works pretty simple: as the visitor accesses your webpage, the plugin catches those using a mobile, and uses its mobile theme to “serve the blog”. “WP Mobile Detector” currently recognizes over 5,000 different mobile devices, differentiating between basic and advanced mobile devices. On the former advanced HTML and images are stripped.
Enable the plugin, choose your mobile theme and off you go...
If the visitor does not use a mobile, “control” is routed as before, and your standard theme is displayed. While for “normal” visitors your usual cache plugin is used, the plugin uses its own cache for “mobile” visitors. You can’t configure the expiration date for that cache, though, which is a pity.
“WP Mobile Detector” also tracks basic mobile access statistics, and has a button to check of your site is “mobile ready”. This test also indicates how fast your home page will download on different mobile carriers (WiFi, GPRS and 3G), indicates the cost to download the homepage, and points out potential incompatibilities.
Testing your blog's mobile compatibility
Oh, before I forget: “WP Mobile Detector” also comes in paid version, which allows you to easily and interactively style your mobile theme, using a built-in menu.
by blogtips.org
How I moved 350,000 blogposts from Tumblr to WordPress
Moving blogs: labour intensive, but fun!
Two months ago Tumblr’s autoimport feature started to hiccup. Tumblr support said “We are aware and working on it”, but could not give me any estimate when it would be fixed.
A month later, still nothing. So what to do? I rely on this Tumblr feature, for my blogs. In two years, those blogs collected 350,000 news articles. Quite a resource library which I did not want to give up.
So I decided to use the Christmas holidays to migrate these blogs from Tumblr onto WordPress, on my HostGator VPS server. It was an interesting process, involving many different techniques and debugging efforts:
1. How to export a Tumblr blog into WordPress
Ben Ward's Tumblr2WordPress utility
While Ben’s program works well to export smaller Tumblr blogs, I had biiiiig blogs, so I had to adapt the PHP code. As the code is public domain and available on Github, I downloaded it and installed it on my server. I changed the PHP parameters to allocate a massive chunk of memory, and allow the export routine to run longer than a standard PHP program. Tip: change the parameters only for that routine, not for your whole server!
I also patched the program to work around a smaller problem I discovered on “published dates” and “categories”. Pretty easy, even for a PHP novice like me, as the code is well documented.
As WordPress can only import .XML files smaller than 8Mb, I split up the first exported blog manually into smaller chunks. Took me two hours for the smallest of the seven blogs. I decided once again to delve into the code, and wrote a small patch that allowed me to export 5,000 blog posts at a time. Each export file now was smaller than 8 Mbyte.
Cool. Exported all blogs, and there I sat on 70 files, about half a gigabyte worth of .XML files.
2. Importing 350,000 posts into seven new WordPress blogs
The WordPress Import routine rocks!
Installing a new WordPress blog was easy to do with the “Fantastico” program in the server’s Cpanel. I choose a neat and simple magazine template and added the usual plugins I always use for caching, automated blog backup, etc…
Then, one by one, I imported the 500 Mbyte of export .XML files. Worked flawlessly, but took about two days. Not a single error, not a single problem. I should say: WordPress impressed me once more.
Done. Well at least with importing the old posts. How to feed in new posts using my myriad of RSS feeds?
3. Implementing an “RSS to blogpost” routine in WordPress
FeedWordPress, you rock!
It also has add-ons that allow you limit the size of the imported post, add text in the title or in the body of the imports. Realllllly neat!
I configured the different feeds I process via Yahoo Pipes, and ran a CRON job to import the blog posts. About two hours work per blog, and the whole cake went into the oven and started cooking: FeedWordPress neatly imported the posts.
You would think I was done. The real work had not even started.
4. The need for speed
From the beginning until the end, including the customization of the template etc.. the export from Tumblr and import into WordPress took me about a week. Fine-tuning the blogs and the server took another two weeks.As “Good is Fine, Perfect is Best”, I saw some formatting deficiencies I could not live with and needed modifications to the feeds and template. And even worse, much much much worse, my poor server went through its knees with the extra load.. The new blogs demanded so much CPU time from Apache and the MySQL server that everything slowed down to a snail’s pace.
Time to get geeky!
5. Tuning the XML sitemaps
XML Sitemap: Tune it!
So I looked at several WordPress plugins that might cause the problem.
The first problem I saw was the XML sitemap generator. There was one option, which I had overlooked: “Rebuild sitemap if you change the content of your blog”. Might be fine on smaller blogs, but the automatic feedimporters were putting up new blogposts at a rate of 100 per hour. So the server was pretty much doing nothing else but generating sitemaps.
I disabled the feature, and scheduled a CRON job to regenerate a sitemap once a day, at night-time. The server load went down significantly.
Oh, by the way, if you have a huge blog, limit the number of posts to include in the sitemap to 10,000 , Google’s maximum limit for sitemaps!
6. Tuning WP Supercache
WP SuperCache: Tune it!
But it only takes a stupid blog administrator to make even the best plugin not to work properly. Supercache needed tuning:
- Unchecked the option “Clear all cache files when a post or page is published” (I published 100 posts per hour, so the cache was always invalidated)
- Pre-loaded the last 10% of blogposts, but put “Refresh preloaded cache” to “0″ (as once a post is imported from its RSS feed, I don’t update it anymore, so it can remain in cache forever). This means I only had to pre-load a massive amount of blogposts once, and it was done.
- For the same reason, I put the “expiry time” to “0″, as once cached after a preload cycle, I want the page to remain in cache. It generates a LOT of cached files, but I have plenty of disk space on my server.
If you put “expiry time” to a value > 30 minutes, garbage collection is done every 10 minutes, which generates a lot of load on your server. - As now I had caches with an eternal life time, I needed to ensure the homepage, feeds, archives were NOT cached, otherwise visitors never got an updated overview of the latest posts.
As I discovered that AFTER I preloaded the posts, and had put the caching to “eternity”, I had to manually delete the cached files for the home page, searches and the running month’s archives. - To further reduce the load on the PHP server, I choose the option to use “mod_rewrite to serve cache files”.
- And by the way, if you don’t cache the home page, the “Cache Tester” will give an error – as it tests caching on… the home page. So ignore that error, and just look at the source of any random page, to see if, at the bottom of the source, you have a date/time for the cache generation, which is in the past.
7. Trashing “Most Popular Posts”
As describe in this post, one plugin meant to show “the most read posts”, also logged every single access to the SQL database, and effectively slowed down my server. Had to trash it.8. Tuning FeedWordPress
I spent quite a bit of time to tune FeedWordPress, to balance how often feeds were to be imported with the success rate of each import cycle. I combine 1,000+ feeds into about 20 Yahoo Pipes feeds. These are large and complex feeds, which take a lot of time to fetch. Many times the import of a feed would time out.At first I worked around that problem, by refreshing all feed imports every 10 minutes. But once again, that put a lot of pressure on the server. As you can deal with any problem either by working around it, or by addressing the cause of it, it was time to look for the source of the problem. In the process of doing so, distinguish well between what is “a cause” and what is “a symptom”. Often we try to solve the latter, while we should address the former. Think about that. That is deeeeep!
So the symptom I saw was the feeds timing out. As I know the Yahoo Pipes’ feeds often take very long to refresh, even interactively, I had to patch FeedWordPress with a timeout of 60 seconds to deal with the Yahoo Pipes’ lack of speed. Cool. But that caused a dreaded SQL error “My SQL server has gone away” to appear more frequently in my CRON log files. Beh.
To make a long story short, the solution was to also change the PHP parameter “wait_timeout” from the default of “30″ seconds to “240″. Changed that in /etc/my.cnf and restarted SQL server. Problem solved.
As this solved the timeout when reading RSS feeds, I could also decrease the frequency of the FeedWordPress CRON jobs. And that once again made my server very happy. I like happy servers…!
9. Server tuning
Tuning a server: not for the faint of heart...
The first indication that my SQL parameters might need tuning, was simply the fact that SQL took up so much CPU time on my server. phpMyAdmin, a routine available to about every selfhosted server, has a neat feature called “Status”, which gave me an overview of the parameters which might need changing. But I was not sure. So I installed mySQLTuner: using SSH, I logged into my server’s root. With just three commands, I got a better overview of the parameters I needed in three commands:
I changed one parameter at the time, and waited for 12-24 hours to see its effect.wget mysqltuner.plchmod 775 mysqltuner.plperl mysqltuner.pl
It seems the two most important parameters to tune are “key_buffer_size” and “table_cache”. It was advised to tune these first before touching the others. Which I did. “key_buffer_size” was ok on its default value of 48M, but “table_cache” needed 4,096 instead of the default 1,024.
The rest of the parameters I changed over time:
While I am still observing the server and tuning bits and pieces, it looked by now that, ladies and gentlemen, we have a happy server, purring like a happy cat. Sure enough I still get peak loads, with “load average” of 3-4, most of the time it stays at “1″ or below. And that is good. I like happy servers.tmp_table_size: from 32M to 64Mmax_heap_table_size: from 32M to 64Msort_buffer_size: from 1M to 4M
10. Template tuning
For the seven blogs, I use a neat little magazine template, called Magazine-Basic by Bavotasan. It comes for free, and has some basic functions that I like.I customized the CSS and some of the functions. I sinned heavily by patching the original template, rather than using a child theme, but that is just because I made so many changes. On top of that, for my main blogs, “speed” is important, I did not want every page refresh to read several CSS files. So patching, it was. I will live with the fact that I can not upgrade the template automatically later on, but hey, I learned that upgrading templates is always a pain, and often causes more problems than it is worth. So I avoid theme upgrades like the pest. My opinion, punto.
One of the main challenges I faced was that the template, by default, puts the first image if finds in the post as a thumbnail on the home and archive pages. And often that image was junk (a “Retweet” button, or a Feedburner “Email this” image).. So I had to tweak all my Yahoo Pipes feeds to delete those images. Took me a week. Some feeds were too complex to delete all images, so for some of the blogs, I just disabled the thumbnails in the template. I mean, I got to sleep too, so can’t keep on tuning all feeds to find all kinds of combinations of dummy images..
Maybe that will be work for next Xmas!
11. Installing the mobile theme
And to finish it all in beauty, I installed a plugin to enable a mobile theme to be displayed when visitors access my blog using a mobile phone.12. And here is the end result of about four weeks of work:
From Tumblr to WordPress. With Love
You like?
Cartoon courtesy Mark Lowe
by blogtips.org
Tumblr and WordPress: a crawler's difference
After the move I activated the Google XML sitemap plugin which submits the blog’s sitemap automatically to different search engines.
Look at the Google Webmaster statistics! From 0 pages crawled per day to about 750 per day… And crawling is good. You want your pages to be indexed by the search engine crawlers, as that generates search traffic.
The proof:
…Almost on the spot, the traffic coming in from Google searches picked up….
Conclusion: WordPress rocks. If you are serious about your blog, and want to make it attractive to search engines, don’t put your blog on Tumblr…
by blogtips.org
Đăng ký:
Nhận xét (Atom)
