Drupal Camp 2009 Pune I Love Bolly Case Study


Published on

Presentation by gaurav kumar at drupal camp

  • Be the first to comment

  • Be the first to like this

Drupal Camp 2009 Pune I Love Bolly Case Study

  1. 1. Gaurav Kumar i LoveBolly .com BLiSStering Solutions i Love Bolly .com A Drupal Case Study
  2. 2. One stop portal for the Indian Entertainment Industry i Love Bolly .com
  3. 3. Movies : 7107 Celebrities : 12692 Songs : 6629 TV Serials : 309 Images : 7334 Videos : 3806 What can you GET @ iLoveBolly ?
  4. 4. What can you GET @ iLoveBolly ? Picture Gallery Video Gallery Plot Quotes Trivia Fan Club Reviews Comments Songs Rating Production Details Cast & Crew Movies
  5. 5. What can you GET @ iLoveBolly ? Celebs Picture Gallery Video Gallery Fan Club Reviews Comments Rating Details 360 0 Profile Commercial Advertisements TV Serials Audiography Filmography
  6. 6. What can you GET @ iLoveBolly ? Songs Comments Rating Lyrics Crew Video
  7. 7. What can you GET @ iLoveBolly ? and much more… News Groups TV Serials Co. Ads Forums Blogs Polls Quizzes
  8. 8. What can you DO @ iLoveBolly ? User Profile Buddylist Bolly Bux Private Messaging Groups Favorites Bookmarks Share Rate Review Comment Blog
  9. 9. Do it with Drupal … Implementation of Features @iLoveBolly …
  10. 10. Aggregation Feed API ( http://drupal.org/project/feedapi ) <ul><li>Generate Nodes from feed content, or not  </li></ul><ul><li>Integration with Views </li></ul><ul><li>Multiple Parsers </li></ul><ul><ul><li>RSS/Atom – Simple pie, CSP </li></ul></ul><ul><ul><li>iCal, CSV, KML Parsers – Integration possible </li></ul></ul><ul><ul><li>Feed elements in CCK fields – Field Element Mapper </li></ul></ul>
  11. 11. Aggregation on iLoveBolly Step 1 : Create a Feed node <ul><li>Enter a feed URL </li></ul>
  12. 12. Aggregation on iLoveBolly Step 2 : Create Content Type <ul><li>Create a new content type </li></ul><ul><li>Enable Feed API Support </li></ul><ul><li>Enable Update Feed </li></ul><ul><li>Select a parser </li></ul><ul><li>feedapi_node parser </li></ul>
  13. 13. Aggregation on iLoveBolly And you are DONE!!! <ul><li>Check your newly created feed node for links to node (processed) items and feed (raw) items. </li></ul>
  14. 14. Aggregation on iLoveBolly NOTE: <ul><li>New node items are created every CRON run, settings can be defined in FeedAPI settings. </li></ul><ul><li>Integration with Taxonomy possible. </li></ul><ul><li>Integration with views to list nodes created by feedapi. </li></ul><ul><li>New view filter available (FeedAPI Parent Node) </li></ul>
  15. 15. Aggregation on iLoveBolly Syndication in Drupal using Views : <ul><li>Want a feed for a view page that you have just created..? </li></ul><ul><li>Select RSS FEED SELECTOR as an argument in your View. </li></ul><ul><li>If your view page is yoursite.com/foo then your feed is ready at yoursite.com/foo/feed </li></ul>
  16. 16. Do it with Drupal … Third Party Integration
  17. 17. Third Party Integration YouTube API <ul><li>Song Video integration </li></ul><ul><li>ZEND API </li></ul><ul><li>$yt = new Zend_Gdata_YouTube(); </li></ul><ul><li>$query = $yt->newVideoQuery(); </li></ul><ul><li>$videoFeed = $yt->getVideoFeed($query); </li></ul>
  18. 18. Third Party Integration PLAXO <ul><li>Drupal Invite module </li></ul><ul><li>Problems </li></ul><ul><li>Integration with Plaxo widget </li></ul>
  19. 19. Third Party Integration Trynt Web Services <ul><li>Non-Hindi Movie Favorites + Movie History </li></ul><ul><li>Link from IMDB </li></ul><ul><li>Goal : Complete Entertainment Profile </li></ul>
  20. 20. Do it with Drupal … Fan Clubs Organic Groups
  21. 21. Fan Clubs Organic Groups ( http://drupal.org/project/og ) <ul><li>Create and Manage your own Groups </li></ul><ul><li>Subscribers </li></ul><ul><li>Communicate with other Group Members </li></ul><ul><li>Moderated or not </li></ul><ul><li>Own Theme, Language and Taxonomy </li></ul>
  22. 22. Fan Clubs Requirements & Solutions : <ul><li>Fan Club for each Movie, Celeb, TV Serial </li></ul><ul><ul><li>CCK – Comes to the rescue </li></ul></ul><ul><ul><li>Node Reference to the Movie, Celeb, TV Serial Content Type </li></ul></ul><ul><li>Space for Discussion for the associated Movie, Celeb, TV Serial </li></ul><ul><ul><li>Creating Images, Stories, Discussions within a Fan Club </li></ul></ul><ul><ul><li>Managers, Membership, Digest E-mails and Feeds </li></ul></ul><ul><li>Create a Fan Club every time a movie, celeb, TV Serial is created </li></ul><ul><ul><li>hook_nodeapi – case: ‘insert’ </li></ul></ul><ul><ul><li>build $node </li></ul></ul><ul><ul><li>node_save() </li></ul></ul><ul><ul><li>http://drupal.org/node/178506 </li></ul></ul>
  23. 23. Fan Clubs The Result :
  24. 24. Fan Clubs Do more with Organic Groups : <ul><li>OG Calendar : http://drupal.org/project/og _calender </li></ul><ul><li>OG Forum : http://drupal.org/project/og_forum </li></ul><ul><li>OG Taxonomy : http://drupal.org/project/og_taxonomy </li></ul><ul><li>OG Event : http://drupal.org/project/og_event </li></ul><ul><li>OG Actions : http://drupal.org/project/og_actions </li></ul><ul><li>And much more…… </li></ul>
  25. 25. Do it with Drupal … Drupal Search Customization
  26. 26. Drupal Search Optimization Indexing custom content <ul><li>hook_update_index : update full text index </li></ul><ul><li>Index every cron run </li></ul><ul><li>search_index($sid, $type, $text) </li></ul><ul><li>hook_search </li></ul><ul><ul><li>name </li></ul></ul><ul><ul><li>reset </li></ul></ul><ul><ul><li>search </li></ul></ul><ul><ul><li>status </li></ul></ul>
  27. 27. Movie reference Drupal Search Optimization Example : Movie Movie crew Plot Details Blah Blah Blah Celebrity reference Details hook_update_index Blah Blah
  28. 28. Drupal Search Optimization The Result… <ul><ul><li>Query = “ aamir khan juhi chawla ” in Movies </li></ul></ul><ul><ul><ul><li>Result = Pehla Nasha, Hum Hai Rahi Pyar Ke, Tum Mere Ho, Aatank Hi Aatank, Ishq and so on… </li></ul></ul></ul><ul><ul><li>Query = “ Akshay Khiladi ” in Movies </li></ul></ul><ul><ul><ul><li>Result = Main Khiladi Tu Anadi, Sabse Bada Khiladi, Khiladi 420, International Khiladi and so on… </li></ul></ul></ul><ul><ul><li>Query = “ Lata mangeshkar ” in Songs </li></ul></ul><ul><ul><ul><li>Result = Koyal Kyon Gaaye, Sanam Tere Ho Gaye Hum, Tere Sang Jeena </li></ul></ul></ul>
  29. 29. Do it with Drupal … SEO Search Engine Optimization
  30. 30. SEO Pathauto ( http://drupal.org/project/pathauto ) <ul><li>Generate path aliases </li></ul><ul><li>Default behaviour </li></ul><ul><li>Customizations Required Multiple Internal Paths </li></ul><ul><ul><ul><li>Example Movie: </li></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008 </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/plot </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/cast-crew </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/production-details </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/trivia </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/quotes </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/picture-gallery </li></ul></ul></ul></ul><ul><ul><ul><ul><li>http://ilovebolly.com/movie/ghajini-2008/photo-gallery </li></ul></ul></ul></ul>
  31. 31. SEO Drupal’s Extensibility <ul><li>I need more paths per content type </li></ul><ul><li>I modify the module  </li></ul><ul><li>pathauto_create_alias() </li></ul><ul><ul><li>set aliases for custom paths </li></ul></ul><ul><li>I now have what I need…    </li></ul>
  32. 32. SEO Nodewords ( http://drupal.org/project/nodewords ) <ul><ul><li>This module allows you to set some meta tags for each node, view or panels page. </li></ul></ul><ul><ul><li>Giving more attention to the important keywords and/or description on some of your nodes allows you to get better search engine positioning (given that you really only provide the keywords which exist in the node body itself, and do not try to mislead – the search engines will catch you). </li></ul></ul><ul><ul><li>Meta Tags by Node Type : </li></ul></ul><ul><ul><li> http://drupal.org/project/nodewords_nodetype </li></ul></ul><ul><ul><li>Meta tags by Path : </li></ul></ul><ul><ul><ul><li> http://drupal.org/project/nodewords_bypath   </li></ul></ul></ul>
  33. 33. SEO XML Sitemap ( http://drupal.org/project/xmlsitemap ) <ul><ul><li>XML Sitemap automatically creates a site map that conforms to the sitemaps.org specification. This helps search engines keep their search results up to date. </li></ul></ul><ul><ul><li> Google </li></ul></ul><ul><ul><li> Yahoo! </li></ul></ul><ul><ul><li> Ask </li></ul></ul><ul><ul><li> Windows Live </li></ul></ul><ul><ul><li>XML Sitemap: File </li></ul></ul><ul><ul><li>XML Sitemap: Menu </li></ul></ul><ul><ul><li>XML Sitemap: Node </li></ul></ul><ul><ul><li>XML Sitemap: Term </li></ul></ul><ul><ul><li>XML Sitemap: User </li></ul></ul>
  34. 34. Thank You For Further Inquiries contact [email_address]