I use drupal / 我是 OO 師,我用 Drupal

2,483 views
2,344 views

Published on

從設計,工程,到系統的各種角度,分享使用 Drupal 的經驗。

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,483
On SlideShare
0
From Embeds
0
Number of Embeds
109
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

I use drupal / 我是 OO 師,我用 Drupal

  1. 1. 我是 O O 師,我用 DRUPAL All you need is Drupal By Chris
  2. 2. 吳政斌 Chris Senior Drupal Developer Fliegen Creative Studio DrupalTaiwan.org Designer F2E CMS Builder WebAdmin Chocolate Design chris @ laconique.com.tw amouro @ gmail.com fb.com/amourow
  3. 3. 吳政斌 Chris Senior Drupal Developer Fliegen Creative Studio DrupalTaiwan.org Designer F2E CMS Builder WebAdmin Chocolate Design chris @ laconique.com.tw amouro @ gmail.com fb.com/amourow
  4. 4. 吳政斌 Chris Senior Drupal Developer Fliegen Creative Studio DrupalTaiwan.org Designer F2E CMS Builder WebAdmin Chocolate Design chris @ laconique.com.tw amouro @ gmail.com fb.com/amourow
  5. 5. Drupal ? http://www.flickr.com/photos/efe6/
  6. 6. @Webchick / Angela Byron the first women on Linux journal that makes Linux history
  7. 7. Design | FrontEnd | Backend ?
  8. 8. As a Designer ?
  9. 9. THEME •  Basetheme •  Frameworks
  10. 10. DRUPAL AWARE DESIGN •  有效的運用區域 •  運用預設的 Class
  11. 11. THEME SETTING
  12. 12. BLOCK
  13. 13. BLOCK
  14. 14. D7UX •  Our UX Principles: 1.  Make the most frequent tasks easy and less frequent tasks achievable. 2.  Design for the 80% 3.  Privilege the Content Creator 4.  Make the default settings smart
  15. 15. DEV TOOLS •  Firebug, Chrome DevTools
  16. 16. THEME SETTING •  Add CSS in .info – stylesheets[all][] = style.css – stylesheets[all][] = reset.css •  Customize tpl.php
  17. 17. As a Programmer ?
  18. 18. WORKING WITH JS •  jQuery 1.4.4 in D7 – 1.5.1, 1.7.1, 1.8.2 (jQuery update) •  Add JavaScript in .info – scripts[] = respond.js – scripts[] = foo.js •  API – drupal_add_js() drupal_add_js(drupal_get_path('theme', 'example'). '/foo.js', $options);
  19. 19. QUERY WITH VIEWS
  20. 20. QUERY WITH VIEWS
  21. 21. QUERY WITH VIEWS
  22. 22. MODULES •  Slider – Views slideshow – Nivo slider – Galleria – Image Flow – jCarousel – 3D Views Carousel
  23. 23. VIEWS + VIEWS SLIDESHOW
  24. 24. VIEWS + IMAGE FLOW
  25. 25. FIELD WIDGET
  26. 26. HOOKS API •  Creating a new node – hook_node_presave() – hook_node_insert() •  Updating •  Validating – hook_validate()
  27. 27. HOOKS API •  hook_node_view
  28. 28. HOOKS API •  hook_form_alter
  29. 29. DATABASE •  Database abstraction layer – Built on top of the PDO library. – Different driver for each db type •  MySQL, PostgresSQL, SQLite, MongoDB*, SQL Server* <?php // Create an object of type SelectQuery and directly // add extra detail to this query object: a condition, fields and a range $query = db_select('users', 'u') ->condition('u.uid', 0, '<>') ->fields('u', array('uid', 'name', 'status', 'created', 'access')) ->range(0, 50); ?>
  30. 30. As a WebAdmin ?
  31. 31. PERFORMANCE IN CORE •  Database cache •  Aggregation – CSS – JS
  32. 32. CDN •  Domain mapping •  File Conveyor – AWS S3 – CloudFront
  33. 33. APC •  Store opcode for php
  34. 34. MEMCACHE •  Move db cache to memory – https://drupal.org/project/memcache – https://drupal.org/project/memcache_storage
  35. 35. BOOST •  Static page cache for Anonymous
  36. 36. VARNISH •  Reverse proxy – https://drupal.org/project/varnish
  37. 37. INTEGRATION •  APC – cache – cache_bootstrap •  Memcache – cache_field – cache_menu – … •  DB – cache_filter •  Varnish – Static page
  38. 38. THE MOST GEEKY CMS •  Shell Command! •  Drush = Drupal Shell Command – Ref. http://2013.drupalcamp.tw/session/99 •  > druah status
  39. 39. THE MOST GEEKY CMS > drush dl superfish views jquery_update > drush en –y superfish > drush mb foo_module --write --name=“Foo” –dep=“views”
  40. 40. Chris Wu 吳政斌 chris @ laconique.com.tw amouro @ gmail.com fb.com/amourow

×