DIYwebdev.com http://diywebdev.com Do It Yourself Web Development Wed, 31 Oct 2012 15:58:54 +0000 en-US hourly 1 http://wordpress.org/?v=3.5.2 Best WordPress Plugins to Maximize SEO http://diywebdev.com/best-wordpress-plugins-to-maximize-seo/ http://diywebdev.com/best-wordpress-plugins-to-maximize-seo/#comments Sun, 14 Oct 2012 01:31:33 +0000 Richard Lin http://diywebdev.com/?p=86 When you got your new website settled down. In the next phase, another thing to consider is doing Search Engine Optimization (SEO). If you entrust your website with the WordPress CMS, then things about SEO would be not much different.  Moreover, it could be much simpler and easier because WordPress has been natively good enough... Continue Reading »

The post Best WordPress Plugins to Maximize SEO appeared first on DIYwebdev.com.

]]>
Best WordPress Plugins for SEOWhen you got your new website settled down. In the next phase, another thing to consider is doing Search Engine Optimization (SEO). If you entrust your website with the WordPress CMS, then things about SEO would be not much different.  Moreover, it could be much simpler and easier because WordPress has been natively good enough for SEO, it’s architected in a way that makes WordPress more SEO friendly. Even better, there are a bunch WordPress plugins out there that could maximize your WordPress site SEO performance (if you use the right ones). So, in this article I want to help you to find the right ones by giving you a list of the best WordPress SEO plugins.

For an easier understanding I divide the list into two sections, the first section will be a list of WordPress SEO plugins for On-Page optimization, then the other section would be all about plugins for Off-Page optimization. If it happens that you haven’t heard about the difference between On-Page SEO and Off-Page SEO. I suggest you take a look this article a while before going on through this page.

Plugins for On-Page SEO

  1. WordPress SEO Plugin (Yoast)

    The real completely all in one WordPress SEO plugins I ever know. Furthermore it’s developed by one of the most renowned WordPress SEO consultant. After installing this plugins you can easily set up and configure your post titles, meta descriptions, robots meta, canonical, breadcumbs, permalinks, XML sitemaps, RSS, robots.txt and .htaccess. Before this plugin exists I have to install a sequence of plugins to be able set it up one by one. So this plugin really save a lot of time, where all the things come up in one smart package.

  2. SEO Friendly Images

    If you have already learned some basics of SEO, then I bet you have heard about how to optimize images in you site for a better search engine ranking. Yes, by adding an alt text and title in each of your images is a good practice. However, manytimes sometimes we may forget or too lazy to do that. So, this is the best plugin that arrives to help you.

  3. SEO Smart Links

    Inbound links are the other best practices for search engine optimization. With a note in mind that not all links are merely created. The links have to come from sources that are related to the topic of your website. When you have too many post, it’s possible that you missed some good related keywords among your posts. SEO Smart Link can automatically link keywords and phrases in your posts and comments with corresponding posts, pages, categories and tags on your blog. Moreover, SEO Smart links helps you to set up your own keywords and set of matching URLs and to set nofollow attribute and open links in new window. I am sure you want to check it out.

  4. Yet Another Related Posts Plugin

    By it names, I think you could guess what this plugin is actually all about. It simply provides a list of posts and/or pages related to your current post entry. Quite a simple functionality, but don’t get wrong yet. This is simply powerful, because it can engage your visitors to discover more contents in your WordPress blog. Many themes may have included this kind of feature natively, however this plugin has a lot of more advantages that always make me decided to install it.

  5. SEO No Duplicate WordPress Plugin

    Duplicate content means that you have more than one different URL within your site domain which contains identical content. This is really bad for SEO, most search engine hate it. You should be aware of this to happen in your blog. And errors do happen, so it can occur in your beloved site accidentally. Whether it comes accidentally or not, it always better to prepare everything at first. SEO No Duplicate WordPress Plugin helps you manage your duplicate content, by setting your post page’s canonical to the permalink which is so far is the best way to do.

  6. Broken Link Checker

    Broken link is a broken link, a link that doesn’t really exist. When anyone visit a broken link to the browser, they will just come across a 404 error page. Beside it’s not nice for your visitors to come in a broken page, it’s also bad for SEO. Therefore, Broken Link Checker will become an essential plugin to have; it could clean up your WordPress site by finding and fixing broken links in you site in a handy way.

  7. SEO SearchTerms Tagging 2

    Increase your site traffic by strengthening on-page SEO, growing up the number of indexed pages, convert search terms into post tags, sounds cool? Yes, it is. This is one of the best plugin with simply cool idea. However, please use it carefully, make sure you understand each functions and its affect. Do not hesitate to read the documentation first.

Plugins for Off-Page SEO

  1. CommentLuv

    Comments are something every blogger loves. It give us the spirit to keep writing and blogging. CommentLuv is another wonderful WordPress plugin that will magnetize your readers, socialize your comments and viralize your posts. The idea is to rewards your readers by automatically placing a link to their last blog post at the end of their comment. This could encourage a community and discover new posts. You love their comments and they love to comment on yours!

  2. ShareBar

    With Sharebar plugin you can easily add a dynamic and fully customizable vertical box to the left of your blog post that contains links/buttons to popular social networking sites. Tweet button, Facebook like button, Google+, Pinterest Pin it button, and more. Today, the growth of social networking and media makes those things become another requirement of a modern website. Beside its viral effect, many SEO experts believe that the more your content get shared, the more search engine will love your content.

So, that’s the list. All those plugins I mentioned above has been tested by me and I personally use them in most of my blogs. After all, it’s all your choices whether to use it or not. It can be depend on what your needs is. You may just need some or maybe one of them, or even all. But, I suggest you to learn and understand all those plugins one by one before you use it.

Anyway, did I forget to say? If one or some of your favorite WordPress SEO plugins is not included in the list, then please let me know. You can share it in your comments. I would love to know and if I found your plugins amaze me, I will add it to the list.

The post Best WordPress Plugins to Maximize SEO appeared first on DIYwebdev.com.

]]>
http://diywebdev.com/best-wordpress-plugins-to-maximize-seo/feed/ 0
Setting Up Composer PHP Dependencies Manager in Windows http://diywebdev.com/setting-up-composer-php-dependencies-manager-in-windows/ http://diywebdev.com/setting-up-composer-php-dependencies-manager-in-windows/#comments Sat, 13 Oct 2012 05:54:40 +0000 Ayub Lin http://diywebdev.com/?p=90 Probably one of the most important principles in Software Engineering is DRY (Don’t Repeat Yourself!), every time you found yourself writing the same code more than once, in a same project, or in different projects then you have to re-think of what you have done. For example, how many times you have wrote authentication system... Continue Reading »

The post Setting Up Composer PHP Dependencies Manager in Windows appeared first on DIYwebdev.com.

]]>
Setting Up Composer PHP in WindowsProbably one of the most important principles in Software Engineering is DRY (Don’t Repeat Yourself!), every time you found yourself writing the same code more than once, in a same project, or in different projects then you have to re-think of what you have done. For example, how many times you have wrote authentication system for your projects? Or email class to send emails with PHP? If you’re doing it over and over again, maybe a package management could help you on this.

PHP Packages Dependencies Manager

PHP has PECL and PEAR as repository for extension and code libraries, PECL stands for PHP Extension Community Library, in PECL extensions is written in C language, and can be loaded into PHP to provide additional functionality. What you need to use PECL is administrator rights, C compiler and associated dependencies for those extensions. PEAR is PHP Extension and Application Repository, where in PEAR the extension or libraries is written in PHP. So it could be downloaded and loaded to our PHP code.

PECL and PEAR are great tools, but they are system-wide packages manager, meaning, it’s installed on the system not per project, and not everyone prefer that, at least me. I often just do everything on-the-fly in PHP, whenever I need a PHP library, I will just simply download and include it, and it’s the era of PHP Frameworks, many commons functionalities has been included on the frameworks. But that’s create one big problem, everyone have their own pick on the framework, and each framework has their OWN implementation of providing functionalities with their libraries, that makes switching frameworks not an enjoyable task, we need to re-learn many things.

What is Composer?

Composer exists to overcome the problem mentioned above, composer is a dependencies manager that come in a form of command utilities, composer make it possible to ‘plug and play’ PHP packages across application no matter what frameworks we are using as long as the packages follow the shared format. With composer we can define our project dependencies simply in a ‘composer.json’ file, and later on we can install and update these dependencies automatically.

An example:

    "require": {
        "illuminate/blade": "dev-master"
    }

This will make composer include ‘blade’ from the vendor `illuminate` in our project, and we can do update to the ‘blade’ package with one command.

Setting Up Composer In Windows

And here comes the main topic, how to set up composer, and this one is specifically written for windows users. At first, I planned to wrote the complete instruction on how to setup composer in windows with the standard way, which including downloading the installer manually and run the install on command prompt, and also how to make the composer can be accessed globally by pre-run a bat script every time we open command prompt, it can be achieved by hacking around with the registry editor, but I found a much better solution, instead of going with all the fuss, we are going to use a really cool installer built by John Stevenson which you can download the composer windows installer and do the install easily. With this installer, you can choose whether you want to install it per project basis or install it globally so you can run the ‘composer’ command everywhere on your projects.

[Update]  Before you continue to read, please read John’s comment.

Installing Composer in Per Project Basis

To install composer in windows per project basis, you just need to choose the ‘basic’ option in the installation procedure.

Composer Windows Installer Basic Option

Composer Windows Installer Basic Option

And then you just need to specify the folder, where you want the composer will be installed.

Composer Windows Installer Choose Folder

Composer Windows Installer Choose Folder

And here it is, you can access the composer on the selected folder, and you will need to be able to run ‘php’ via command prompt, and use the composer.phar that has been installed in the folder.

Run Composer Command Per Project Basis

Run Composer Command Per Project Basis

Installing Composer to Use Globally in Every Projects

This is the setup that I prefer, to install the composer globally, that way you can use composer everywhere. And to setup composer in windows globally, just like the previous one, you just need to choose an option, which is ‘global’ option.

Composer Windows Installer Global Option

Composer Windows Installer Global Option

And here you go, open up your command prompt, and you can access composer, as easy as just calling composer.

Run Composer Command Globally

Conclusion

Composer is a great tool for managing packages and dependencies in your projects, let’s hope every packages in PHP will be available in composer soon and I encourage everyone to write their packages in compliance with composer, so that everyone can share their packages no matter what framework we are using. And for your information most of the famous PHP frameworks has started to give their full support to composer, and built their system components as composer packages, you can check out FuelPHP, Laravel 4, and Symfony2. So it’s the end of guide on setting up composer in windows, for UNIX based operating system, you could do this easily via terminal, which has been documented well on the composer site.

The post Setting Up Composer PHP Dependencies Manager in Windows appeared first on DIYwebdev.com.

]]>
http://diywebdev.com/setting-up-composer-php-dependencies-manager-in-windows/feed/ 9
7 Best Free Resources of Website Background Textures and Patterns http://diywebdev.com/7-best-free-resources-of-website-background-textures-and-patterns/ http://diywebdev.com/7-best-free-resources-of-website-background-textures-and-patterns/#comments Tue, 02 Oct 2012 06:09:54 +0000 Richard Lin http://diywebdev.com/?p=37 Background is one of the most significant components of a web design. A great background can affect the whole looks of your webpage. Besides using a solid color, a gradate color, or an image, many times web designers also prefer to use texture or pattern for the web background. In this posting, I want to... Continue Reading »

The post 7 Best Free Resources of Website Background Textures and Patterns appeared first on DIYwebdev.com.

]]>
Background is one of the most significant components of a web design. A great background can affect the whole looks of your webpage. Besides using a solid color, a gradate color, or an image, many times web designers also prefer to use texture or pattern for the web background.

In this posting, I want to share some of the best resources to get a website background textures and patterns for free. Yes, really free! Well, maybe some of them will ask for a donation, but a donation is always not required. You can just donate as you wish to appreciate their works. So, here you go.

lostandtaken.com

L&T, this is how the author called his blog, yeah, it’s a blog that is personally managed by a guy named Caleb Kimbrough. He started the site in order to help designers to get the best free texture. He really provides many great and beautiful textures. He makes a living from creating textures, he has many premium textures which are sold in graphicriver.net, and a lot of his designs have been featured in several magazines including Digital Arts, ImagineFX, and Photoshop User Magazine. So, do not hesitate to take a look on his awesome blog!

Free Web Background Pattern and Textures #1

Top

subtlepatterns.com

Another free high quality resource brought by Atle Mo. As he believes that the internet has always been a great resource for designers and developers, so he created the site as a way of giving back to everyone else who needs some high quality patterns. What I like from this site, along with its simple and clean design it also has a very nice and seamless navigation. You can easily navigate and preview bunch of patterns available and download it easily. Love it!

Free Website Background Pattern and Textures #2

Top

dinpattern.com

This site was born with an intention to build a library or home for a lot of patterns collection of the creator. He said that he design patterns just out of fun. I think it’s really more than that. The patterns available are really worth to see and be used.

Free Website Background Pattern and Textures #3

Top

patternhead.com

John Rawsterne is a freelance designer based in the UK. Well, actually this site is an eCommerce site that selling high quality vector patterns to designers around the world. However, He occasionally giving away a bunch of vector and pixel patterns for free. And still, all the freebies patterns he gives are amazing. So, go ahead and check it out for sure!

Free Website Background Pattern and Textures #4

Top

webtreats.mysitemyway.com/category/textures/

Get 100% free patterns and textures for your next project. Whether it’s for personal or commercial purposes, you can use them freely. They don’t even ask for donation, but they have premium items for sale on GraphicRiver.net. Moreover, if you have some time to explore the site, you will stumble upon more free resources of web elements like icons, themes, including some great tutorial.

Free Website Background Pattern and Textures #5

Top

pattern8.com

Apparently, this is a sister site of patternhead.com which I have mentioned above. So, if patternhead.com is more like a blog. John Rawsterne decided to create Pattern8 that make things it simpler for us to search for a pattern. The entire patterns available here are only pixel patterns, however if you are lucky you may find the vector version of it in patternhead.com. I personally believe that this site will grow up as one of the best resources to find pattern.

Free Website Background Pattern and Textures #6

Top

squidfingers.com/patterns/

Not too much talk. Professional and flawless design, just come onto the site right now, choose one you like, click download, and voilà!

Free Website Backgrounds Patterns and Textures #7

Top

Okay, I hope you found this post useful, and the best thing is that you got the pattern you want for your next project. Happy exploring and good luck!

The post 7 Best Free Resources of Website Background Textures and Patterns appeared first on DIYwebdev.com.

]]>
http://diywebdev.com/7-best-free-resources-of-website-background-textures-and-patterns/feed/ 1
What is Web Hosting? http://diywebdev.com/what-is-web-hosting/ http://diywebdev.com/what-is-web-hosting/#comments Wed, 26 Sep 2012 07:47:09 +0000 Richard Lin http://diywebdev.com/?p=28 In the previous post I have talked briefly about domain name. If I would had to write articles in series about basic web development components in general, then after domain name, the next best appropriate topic to describe will be about web hosting. So, if you haven’t heard about what domain name is, you can... Continue Reading »

The post What is Web Hosting? appeared first on DIYwebdev.com.

]]>
What is Web Hosting?

Courtesy: myinternetaccess.net

In the previous post I have talked briefly about domain name. If I would had to write articles in series about basic web development components in general, then after domain name, the next best appropriate topic to describe will be about web hosting. So, if you haven’t heard about what domain name is, you can go through the link here.

In term of computer science, according to thefreedictionary.com “host” literary means a computer that provides client stations with access to files and printers as shared resources to a computer network. Well, that was kind of the old-school meaning. Since the world of computer science has developed rapidly, today the term host has a wider meaning. However the point of the meaning still makes sense. A host would be still a computer that provides access to files in a network.

Besides web hosting, you may have heard about file hosting site (mediafire.com is my favorite one), image hosting site (flickr.com is the famous one), and video hosting site (youtube.com, I bet you know this one very well). So, what is web hosting then? I hope you already get a clue about it, yes I could just simply say; web hosting is a place where you host your website.

Analogy of Domain Name and Web Hosting

I tried to make an analogy for you to understand what domain name is in my past post before. I think it is a good idea to continue that analogical story here. If a told you before that a domain name is just like an address for your property, then web hosting is all about the place. Web hosting is where you build your website. So, when you need to host your website there are several things to consider:

  • Disk Space: Represents how large “land” (disk space) you need for your “building” (website), maybe you only need 20 MB of space for your small home (personal website), 50 MB for your office (company profile), 100 MB for your shop (online store). It depends on your needs.
  • Bandwidth: Reflect how people have enough room to visit your place, it’s like how big your parking lot and also the street that giving the access to your “building”. If you have a lot more visitors day by day, then you will need bigger bandwidth to be provided.
  • Server Location: If in the real life “location” is something really important for your property. It’s not really a matter in the online world. Anywhere your web hosting server located, it still and always can be accessed online anywhere and anytime. You can even have your server in your own home. However you may consider whether your target visitors are local or worldwide. It could be better to put your server just in your own home country if your target visitors are your local country people.

The others things for web hosting is better not to be explained by the analogy, from those two components I hope you have got what I mean here about web hosting.

The post What is Web Hosting? appeared first on DIYwebdev.com.

]]>
http://diywebdev.com/what-is-web-hosting/feed/ 0
What is Domain Name? http://diywebdev.com/what-is-domain-name/ http://diywebdev.com/what-is-domain-name/#comments Sun, 23 Sep 2012 07:04:46 +0000 Richard Lin http://diywebdev.com/?p=21 Domain name is among the list of required things you need to have in order to develop a website. In this post I’ll aim to answer the question which becomes the title of this post. I’m going to explain it in a way that it could be easily understood by common people. However, if you... Continue Reading »

The post What is Domain Name? appeared first on DIYwebdev.com.

]]>
Domain Names

Courtesy of: admablog.com

Domain name is among the list of required things you need to have in order to develop a website. In this post I’ll aim to answer the question which becomes the title of this post. I’m going to explain it in a way that it could be easily understood by common people. However, if you are more into a technical IT person, I include some links pointed to more in depth articles that you might choose to read.

Domain Name as the Address of Your Website

I like to explain things with analogy.  And for this one, I believe that the best analogy for Domain Name in the real world is illustrating it like an address.  So, think about a domain name as an address, first think about your website as a property in the world of internet. The property could be your own “house” (personal website/blog), your company “office” (company profile site), your shop (ecommerce site), or anything possible. Then as you owned the property, to get people come across the existence of your property, you will need an address, and so do your website, it needs an address! Every address is unique; it’s used for distinguishing each one.

If the address of your real world property may come with the street name, number, city, postal code, etc. Then your “online property” will have more friendly address, for instance the domain name address of this website is diywebdev.com. Or I may mention some of the most popular domain names like google.com, facebook.com, twitter.com.

Types of Domain Name

Dot-com (.com) is the most common domain name that I bet you will agree. Nevertheless there are many more domain extensions available for domain name to be registered.  Here is the list:

  • .org
  • .net
  • .gov
  • .edu
  • .mil
  • .int
  • .info

Besides those listed above, there also more domain name extensions that represent the country,  for example .uk (.co.uk, .or.uk, ac.uk) for United Kingdom, .ca for Canada, .id (.co.id, .or.id, .ac.id) for Indonesia, and so on.

As I said in the beginning, I don’t want to ramble more through technical terms. I hope it’s enough for you the give the idea of what domain name is. I realize that it is really just a completely brief explanation. So, if you want to know better about domain name, I suggest you to read more in the section of domain name on Wikipedia. Some keywords that you might need to know are Domain Name Server (DNS), TLD, ICANN, and Domain Registrar.

The post What is Domain Name? appeared first on DIYwebdev.com.

]]>
http://diywebdev.com/what-is-domain-name/feed/ 1
PHP Cache: Simple File-Based Caching http://diywebdev.com/php-cache-simple-file-based-caching/ http://diywebdev.com/php-cache-simple-file-based-caching/#comments Thu, 20 Sep 2012 07:23:46 +0000 Ayub Lin http://diywebdev.com/?p=7 There are times, when you need to serve data that being requested repetitively and the data is not critically needed to be real time, if that’s the case then caching will be a good solution to serve the data faster and more efficient. Caching works by making the resources can be accessed by less work,... Continue Reading »

The post PHP Cache: Simple File-Based Caching appeared first on DIYwebdev.com.

]]>
PHP File-Based Caching

PHP File-Based Caching

There are times, when you need to serve data that being requested repetitively and the data is not critically needed to be real time, if that’s the case then caching will be a good solution to serve the data faster and more efficient.

Caching works by making the resources can be accessed by less work, it can be achieved by storing what you have processed, so that you could access it easily without repeating the process, the process can be a heavy database query or a remote data access.

There are several ways to store the cache data:

  • File
  • Database

Or you can use available caching system or framework:

  • Alternative PHP Cache (APC)
  • Memcached
  • Redis

Using a complete caching system is a good decision, they have high performance and robust, but you will need to install them first, there are times where you can’t do this, whether you’re using a limited shared hosting or maybe you just want to use something simple, and maybe you can learn something from implementing simple PHP cache in your own.

And now we will learn about how to implement file-based caching in PHP, the idea is simple we provide a writeable directory for storing the cache files, and we will save processed request on this directory as files, and instead of doing the process again, we will load the data from the cache files. The cache will have expiration time, when the time has reached, the request will be processed again, and the cache will be updated.

Okay, here is the code, implemented as a PHP class, with 2 static function, they are for saving and getting the cached data:

<?php

/**
 * Simple file-based chaching mechanism
 */
class Util_Cache
{
    public static function save($id, $content)
    {
        // get cache dir
        $conf      = Util_Config::load('cache');
        $cache_dir = $conf['cache_dir'];
        $file = $cache_dir . md5($id);
        file_put_contents($file, $content);
    }

    public static function get($id)
    {
        // get expiration date
        $conf      = Util_Config::load('cache');
        $exp_time  = $conf['exp_time'];
        $cache_dir = $conf['cache_dir'];

        // check if the file existed
        $file = $cache_dir . md5($id);
        if( file_exists( $file ) )
        {
            // check if it's not expired
            if( time() - filemtime( $file ) <= $exp_time )
            {
                // return the content
                return file_get_contents($file);
            }
            else
            {
                // throw expired
                throw new Exception('Cache Expired', 2);
            }
        }
        else
        {
            // throw not found
            throw new Exception('Cache Not Found', 1);
        }
    }
}

?>

And here is how to use the class:

$data= null;
try {
    $data= Util_Cache::get('data');
} catch (Exception $e) {
}
if( ! $data )
{
    $data= process_data();
    Util_Cache::save('data', $data);
}

The save function, is used to save the data to the cache folder, it require two parameters, they are the unique identifier for the data, and the content of the data that will be cached. And the get function, will return the content of cached data with given identifier.

So that is the simple file-based cache in PHP, it may be simple, but could be really useful.

The post PHP Cache: Simple File-Based Caching appeared first on DIYwebdev.com.

]]>
http://diywebdev.com/php-cache-simple-file-based-caching/feed/ 1