I read about canonical tags in HTML and from what I understood it is used to help search engines to realize which is the original content. I have articles in my recently created blog, which I have pasted in certain other popular websites. In those websites I gave back a link to my original blog post with the canonical tag. But yet my blog page is not visible in search engines (other websites do show my article). Before I had pasted onto other websites, my articles were indexed on google and could be seen on the 1st page. So I guess, there is no problem on my SEO part.
Can someone please suggest a method where my original blog gets higher preference for the content?
You can use cross domain canonical tags.
So if you have duplicated content on other domains you can use the canonical tag on those pages pointing back to the original page on your site.
This a great way to deal with syndicated content; of course you would need code level access on these other websites so you can implement the canonical tag.
More info below