Sviluppare applicazioni FB usando
             Drupal

       PHPDay 2009 - Social tag #phpday09




                     +
Sviluppare applicazioni FB usando
             Drupal
                  e non solo....


       PHPDay 2009 - Social tag #...
Chi siamo?




             +
Chi siamo?
                  Stefano Mainardi,
             sviluppatore PHP, CEO di
              Twinbit e fondatore del...
Chi siamo?
 Paolo Mainardi, sviluppatore
    PHP, CTO di Twinbit e                          Stefano Mainardi,
fondatore de...
Chi siamo?
 Paolo Mainardi, sviluppatore
    PHP, CTO di Twinbit e                                           Stefano Maina...
Quanti di voi utilizzano Drupal?


                        +
Quanti di voi sono sviluppatori
          Facebook?


                       +
Drupal = MAKE IT EASY


                 +
Drupal = MAKE IT EASY
      non reinventiamo la ruota




                                  +
Drupal overview
          il core

  + 750 Moduli disponibili




                             +
Drupal overview
                   il core

           + 750 Moduli disponibili

+ 1200 Sviluppatori (senza contare i cont...
Drupal overview
                   il core

           + 750 Moduli disponibili

+ 1200 Sviluppatori (senza contare i cont...
Drupal overview
                   il core

           + 750 Moduli disponibili

+ 1200 Sviluppatori (senza contare i cont...
Drupal overview
                   il core

           + 750 Moduli disponibili

+ 1200 Sviluppatori (senza contare i cont...
Drupal overview
                        il core

               + 750 Moduli disponibili

  + 1200 Sviluppatori (senza con...
Drupal overview
simple third-party integration




                                 +
Drupal overview
                    simple third-party integration




Drupal +7.x integrato nel core




                ...
Drupal overview
simple third-party integration




                                 +
Drupal overview
                simple third-party integration




- Collezionare dati da tutte le piattaforme e creare nu...
Drupal overview
                simple third-party integration




- Collezionare dati da tutte le piattaforme e creare nu...
Drupal overview
                simple third-party integration




- Collezionare dati da tutte le piattaforme e creare nu...
Drupal overview
                  modules




Se volessimo sviluppare un nostro SN quali sono
            i moduli indispe...
Drupal overview
                     modules
                                                                         CCK
...
Drupal overview
                                                modules
        Views                                     ...
Drupal overview
                                                modules
        Views                                     ...
Drupal overview
     modules




  Tutto qui?!



                  +
Drupal overview
       modules




  Tutto qui?!
    ovviamente no...




                       +
Drupal overview
                                                  modules

                                       Altri mo...
Drupal overview
                                                  modules

                                       Altri mo...
+
FACEBOOK CONNECT



              +
Modulo Fbconnect

http://drupal.org/project/fbconnect



                           +
+
+
+
+
+
+
+
+
Integrazione con i commenti




                      +
Integrazione con i commenti




                      +
Integrazione con i commenti
                   FB Comments box ?
“A Comments Box is a standalone social widget for any web...
FB Comments box


<fb:comments></fb:comments>




                                   +
FB Comments box




                  +
FB Comments box




                  +
FB Comments box




                  +
Ok bellissimo....ma come funziona ??



                            +
1) Crea un applicazione su facebook

       http://www.facebook.com/developers




                                       ...
2) AppID, API key, Secret API key




                           +
3) Configurazione principale




                        +
4) Configurazione Drupal




                      +
COOL!


        +
hook_init()
“This hook is run at the beginning of the page request. It is typically used to set up global parameters which...
_fbconnect_render_js()
                     Bootstrap Facebook connect API

1) Inizializza cross domain channel   2) Boots...
Esempio: Scriviamo nel feed facebook dell’utente che ha lasciato un commento.




                                        ...
+
+
Cos’altro possiamo fare ?
FQL
                             Facebook query language


                                  Javascript client
           ...
XFBML
         Ricordate la form dei commenti ?
          <fb:comments></fb:comments>



     •              fb:connect-fo...
E le canvas page ?



                     +
Modulo FB

http://drupal.org/project/fb



                        +
Questions?

         +
Rimaniamo in contatto!


 Stefano Mainardi                Paolo Mainardi
   stefano@twinbit.it              paolo@twinbit....
Grazie!
Upcoming SlideShare
Loading in …5
×

Sviluppare applicazioni Facebook utilizzando Drupal

13,195 views

Published on

Introduzione allo sviluppo di applicazioni Facebook utilizzando Drupal come piattaforma. Talk tenuto da Stefano e Paolo Mainardi al Phpday 2009

Published in: Technology
  • Be the first to comment

Sviluppare applicazioni Facebook utilizzando Drupal

  1. 1. Sviluppare applicazioni FB usando Drupal PHPDay 2009 - Social tag #phpday09 +
  2. 2. Sviluppare applicazioni FB usando Drupal e non solo.... PHPDay 2009 - Social tag #phpday09 +
  3. 3. Chi siamo? +
  4. 4. Chi siamo? Stefano Mainardi, sviluppatore PHP, CEO di Twinbit e fondatore del network italiano ILDN Piacere di conoscervi! stefano@twinbit.it twitter : stefanomainardi +
  5. 5. Chi siamo? Paolo Mainardi, sviluppatore PHP, CTO di Twinbit e Stefano Mainardi, fondatore del network italiano sviluppatore PHP, CEO di ILDN Twinbit e fondatore del network italiano ILDN Piacere di conoscervi! Piacere di conoscervi! paolo@twinbit.it stefano@twinbit.it twitter : paolomainardi twitter : stefanomainardi +
  6. 6. Chi siamo? Paolo Mainardi, sviluppatore PHP, CTO di Twinbit e Stefano Mainardi, fondatore del network italiano sviluppatore PHP, CEO di ILDN Twinbit e fondatore del network italiano ILDN Piacere di conoscervi! Piacere di conoscervi! paolo@twinbit.it stefano@twinbit.it twitter : paolomainardi twitter : stefanomainardi Piacere, io sono Drupal! :-) +
  7. 7. Quanti di voi utilizzano Drupal? +
  8. 8. Quanti di voi sono sviluppatori Facebook? +
  9. 9. Drupal = MAKE IT EASY +
  10. 10. Drupal = MAKE IT EASY non reinventiamo la ruota +
  11. 11. Drupal overview il core + 750 Moduli disponibili +
  12. 12. Drupal overview il core + 750 Moduli disponibili + 1200 Sviluppatori (senza contare i contributor) +
  13. 13. Drupal overview il core + 750 Moduli disponibili + 1200 Sviluppatori (senza contare i contributor) + 40 lingue di localizzazione +
  14. 14. Drupal overview il core + 750 Moduli disponibili + 1200 Sviluppatori (senza contare i contributor) + 40 lingue di localizzazione + Community internazionale attiva e competente +
  15. 15. Drupal overview il core + 750 Moduli disponibili + 1200 Sviluppatori (senza contare i contributor) + 40 lingue di localizzazione + Community internazionale attiva e competente + Drupal.org è una miniera d’oro! +
  16. 16. Drupal overview il core + 750 Moduli disponibili + 1200 Sviluppatori (senza contare i contributor) + 40 lingue di localizzazione + Community internazionale attiva e competente + Drupal.org è una miniera d’oro! Adatto per lo sviluppo di Social Network ed applicazioni Sociali +
  17. 17. Drupal overview simple third-party integration +
  18. 18. Drupal overview simple third-party integration Drupal +7.x integrato nel core e molto altro... +
  19. 19. Drupal overview simple third-party integration +
  20. 20. Drupal overview simple third-party integration - Collezionare dati da tutte le piattaforme e creare nuovi mashup +
  21. 21. Drupal overview simple third-party integration - Collezionare dati da tutte le piattaforme e creare nuovi mashup - Integrare nel nostro progetto servizi esterni +
  22. 22. Drupal overview simple third-party integration - Collezionare dati da tutte le piattaforme e creare nuovi mashup - Integrare nel nostro progetto servizi esterni - Portare traffico e visitatori! +
  23. 23. Drupal overview modules Se volessimo sviluppare un nostro SN quali sono i moduli indispensabili? +
  24. 24. Drupal overview modules CCK Content Construction Kit Ci permette di modellare i nostri contenuti Photo courtesy of : http://www.flickr.com/photos/8362529@N08/ +
  25. 25. Drupal overview modules Views CCK Ci permette di estrarre e Content Construction Kit presentare i contenuti come vogliamo Ci permette di modellare i nostri contenuti Photo courtesy of : http://www.flickr.com/photos/8362529@N08/ +
  26. 26. Drupal overview modules Views CCK Ci permette di estrarre e Content Construction Kit presentare i contenuti come vogliamo Ci permette di modellare i nostri contenuti Workflow-ng Ad ogni azione corrisponde una reazione! Photo courtesy of : http://www.flickr.com/photos/8362529@N08/ +
  27. 27. Drupal overview modules Tutto qui?! +
  28. 28. Drupal overview modules Tutto qui?! ovviamente no... +
  29. 29. Drupal overview modules Altri moduli consigliati • Messaggi privati: http://drupal.org/project/privatemsg • Buddylist: http://drupal.org/project/buddylist (in alternativa http://drupal.org/project/user_relationship) • Inviti e Contact grabber: http://drupal.org/project/invite e http://drupal.org/project/dcl_importer • Gruppi: http://drupal.org/project/og • Sharing: http://drupal.org/project/forward (o http://drupal.org/project/send), http://drupal.org/project/addthis • Mashup semplice: http://drupal.org/project/emfield , http://drupal.org/project/ipaper • Notifiche: http://drupal.org/project/notifications (o http://drupal.org/project/subscriptions) +
  30. 30. Drupal overview modules Altri moduli consigliati • Messaggi privati: http://drupal.org/project/privatemsg • Buddylist: http://drupal.org/project/buddylist (in alternativa http://drupal.org/project/user_relationship) • Inviti e Contact grabber: http://drupal.org/project/invite e http://drupal.org/project/dcl_importer • Gruppi: http://drupal.org/project/og • Sharing: http://drupal.org/project/forward (o http://drupal.org/project/send), http://drupal.org/project/addthis • Mashup semplice: http://drupal.org/project/emfield , http://drupal.org/project/ipaper • Notifiche: http://drupal.org/project/notifications (o http://drupal.org/project/subscriptions) Tutto il resto su http://drupal.org/project/modules +
  31. 31. +
  32. 32. FACEBOOK CONNECT +
  33. 33. Modulo Fbconnect http://drupal.org/project/fbconnect +
  34. 34. +
  35. 35. +
  36. 36. +
  37. 37. +
  38. 38. +
  39. 39. +
  40. 40. +
  41. 41. +
  42. 42. Integrazione con i commenti +
  43. 43. Integrazione con i commenti +
  44. 44. Integrazione con i commenti FB Comments box ? “A Comments Box is a standalone social widget for any website or iframe application.” http://wiki.developers.facebook.com/index.php/Comments_Box E’ possibile integrare la form dei commenti di Facebook all’interno della nostra applicazione. +
  45. 45. FB Comments box <fb:comments></fb:comments> +
  46. 46. FB Comments box +
  47. 47. FB Comments box +
  48. 48. FB Comments box +
  49. 49. Ok bellissimo....ma come funziona ?? +
  50. 50. 1) Crea un applicazione su facebook http://www.facebook.com/developers +
  51. 51. 2) AppID, API key, Secret API key +
  52. 52. 3) Configurazione principale +
  53. 53. 4) Configurazione Drupal +
  54. 54. COOL! +
  55. 55. hook_init() “This hook is run at the beginning of the page request. It is typically used to set up global parameters which are needed later in the request. when this hook is called, all modules are already loaded in memory. For example, this hook is a typical place for modules to add CSS or JS that should be present on every page. This hook is not run on cached pages - though CSS or JS added this way will be present on a cached page.” +
  56. 56. _fbconnect_render_js() Bootstrap Facebook connect API 1) Inizializza cross domain channel 2) Bootstrap facebook XFBML engine +
  57. 57. Esempio: Scriviamo nel feed facebook dell’utente che ha lasciato un commento. +
  58. 58. +
  59. 59. +
  60. 60. Cos’altro possiamo fare ?
  61. 61. FQL Facebook query language Javascript client var api = FB.Facebook.apiClient; api.fql_query(quot;SELECT fields FROM user WHERE uid = quot;+fbuid+quot;); PHP Client facebook_client()->api_client->fql_query(quot;SELECT $fields FROM user WHERE uid = $fbuidquot;); +
  62. 62. XFBML Ricordate la form dei commenti ? <fb:comments></fb:comments> • fb:connect-form • fb:eventlink • fb:name • fb:photo • ....... http://wiki.developers.facebook.com/index.php/XFBML +
  63. 63. E le canvas page ? +
  64. 64. Modulo FB http://drupal.org/project/fb +
  65. 65. Questions? +
  66. 66. Rimaniamo in contatto! Stefano Mainardi Paolo Mainardi stefano@twinbit.it paolo@twinbit.it twitter : stefanomainardi twitter : paolomainardi Ci vediamo presto ai Drupal Social Club a Milano! +
  67. 67. Grazie!

×