1 / 52

Understanding Drupal

Understanding Drupal. Steve Kessler Denver DataMan. Our Presentation. What is Drupal Drupal Core Modules Site Building Resources. Content, Content Everywhere and Giving People A Place to Drink. A great Internet site is like a well made watering hole.

ivie
Télécharger la présentation

Understanding Drupal

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Understanding Drupal Steve Kessler Denver DataMan

  2. Our Presentation • What is Drupal • Drupal Core • Modules • Site Building • Resources

  3. Content, Content Everywhere and Giving People A Place to Drink • A great Internet site is like a well made watering hole. • There is lots of information on the Internet and much of it is not worth the time it took to write it. • Internet users are saturated with JUNK and SPAM! • A great website shows users why your content is worth “drinking from” and makes it excisable so they will.

  4. The Question? What do Internet users want at your watering hole?

  5. Drupal as a CMS • Solid well developed system that can be expanded to be used in any industry segment • Content is stored separately from the way its displayed so that it can be used in many different ways on the same site • Easy control of access to specific content • Sites can be built to be easily maintained by non-technical users • Sites can be optimized for being found by search engines

  6. Open Source • The source code for everyday software and non-specialized applications should be open and built by a community of developers. • Open source code promotes ingenuity and applications that will work in the most cases • Open source allows for many users to vet code and check for best practices and optimization • Open source is not just for idealists - there is lots of money to be made in customization and providing services based on open source software (like today’s session)

  7. Popular, Powerful, Robust, Secure • Many sites are being built on Drupal • Here are some great examples that are driving Drupal innovation!

  8. The Onion

  9. Sony myplay

  10. PopSci

  11. ubuntu

  12. Popular • Drupal is gaining in popularity • Big sites and little sites are using Drupal • Drupal is being used in the real world not just hobbyist and nonprofits.

  13. Powerful and Robust • Drupal is built to run using the latest technologies that it optimizes for speed • Thousands of modules allow for modular additions to the platform including: • Ecommerce • Multimedia • Comments • Dynamic User Groups • And many, many, many, more • Highly scalable

  14. Secure • Drupal developers work to make the platform very secure • Developers are working on making Drupal easier to administer while still remaining secure • Automatic updates • Secure transfer of data between Drupal.com and your website • When problems are found they are resolved rapidly

  15. There is no longer a “Drupal Look” • Because Drupal has such flexible themes a Drupal website does not need to look like a Drupal website

  16. The Drupal Community • The Drupal community not only builds Drupal but it also provides support for Drupal. • The Drupal community is very in tune to helping users get started with Drupal. • The Drupal community is innovative and wins many awards.

  17. Drupal Voting • You can support Drupal by voting for Drupal in upcoming award programs • Look at the front page of Drupal.org for more information on these types of opportunities

  18. Summer of Code • Google pays college students around the world to help with open source project • Drupal was given 19 spots! • Summer of Code Projects will expand the core application and add many great modules.

  19. Drupal Core • Drupal Versions • Hook • Themes • Nodes • Blocks • Menus • URL’s • Taxonomy • Users

  20. Core • Drupal core houses the main features of the applicationthat are supported by the Drupal community. • Core components include: • Structures for accessing the database • The Drupal start-up sequence (bootstrap) • Support for nodes • Support for taxonomies • Support for themes • Support for menus • Basic core modules • Blogs • RSS

  21. 5 or 6 • Drupal is transitioning between a 5.X version to a 6.X version • 6.X has many exciting features that add great functionality and expanded resources for themers and Web 2.0 type development • Modules for 6.X are under development and many critical modules that we will talk about later are not released for 6.X yet • 6.X will be supported until 8.X • 5.X will probably only be supported till 7.X next year • There are some that think this schedule will change given the delay in critical contrib modules • 5.X is still an application that has many supporters and benefits

  22. Hooks • Everything ties back to Drupal using a hook. • Hooks can be thought of as internal Drupal events (Pro Drupal Development). • Hooks are how one connects into the structures provided by core .

  23. Themes • The theme layer provides the graphical presentation for site elements and output the HTML to the browser. • Themes take over the output of content displayed from the database. • Some modules will have their own themeing but in general you can override their CSS with your own • Generally when this happens you can override the module CSS . • Themes are made up of a specific series of files that we will review later . • Theme override functions

  24. Nodes • Almost any kind of object accessed in Drupal • A page is a node. • An image can be a node. • A user can be a node. • In general, a node type is created to do something or post a specific kind of content. • News story • Event • Product • Tech support article • You can also use node types to help control access.

  25. Filters • Filter s control the type of content that can be added to each page • By default there are three filters • Filtered HTML • Web page addresses and e-mail addresses turn into links automatically. • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> • Lines and paragraphs break automatically. • PHP code • Full HTML • Web page addresses and e-mail addresses turn into links automatically. • Lines and paragraphs break automatically. • Filters can be added and changed to match the needs of a site. For example if you use <b> to mean something in your style sheet you could make <b> available in the filtered HTML filter

  26. Blocks • Blocks are areas that can be displayed in regions on a theme.

  27. Weights • Through out Drupal weights are used to help place things on the screen for determining precedence • Items with lower numbered weights float to the top while items with higher weights fall to the bottom • Many weights are replaced with drag-and-drop AJAX based interfaces in 6

  28. Menus • Menus are critical to functionality of a site and are created using the menus interface and placed using the blocks interface • You will find that you often want to disable the main menu (called the navigation menu) and create your own menu structures • Menus are greatly enhanced in 6 with AJAX

  29. Modules • Drupal is a modular system • Modules can be core or contrib (contributed). • Core modules have been included in core because they are considered critical to the function of Drupal and often start out as contrib modules which get lots of attention. • 6 has many examples of contrib modules that are included as core. • Contrib modules range in quality but most are of a high quality. • Stay tuned for more information about nearly core modules

  30. URLs • Drupal has two forms of URL’s • Clean URL’s do not require showing query strings (for example, http://www.denverdataman.com/articles ). • http://denverdataman.com/?q=glossary is what a URL looks like without clean URL’s • Most sites will want to use clean URL’s

  31. Admin Page • /admin provides access to all the key administration areas of the site • The default view is By Task. The view can be changed to By Module . • By task is organized by task group like Content Management, Site Building, and E-commerce • Organized by Module provides a section for each module.

  32. Taxonomy • Taxonomy is the system that Drupal uses to manage tag like information about nodes • Taxonomy has vocabularies • Vocabularies have terms • For example • Product Vocabulary • Product 1 • Product 2 • Topic Vocabulary • Support • Installation • Customization

  33. Taxonomy Continued • You can think of Taxonomy as a tagging system • Something may be a press release, but it may also have other attributes. • Sometimes you will a vocabulary that relates to a specific functions of a module. • The classified ads module lets you create classifications of classified ads based on the classified ads vocabulary.

  34. Tagging Options • Controlled • A set of tags are available and cannot be changed without the administrator • Great for tags that are static like products, versions, key areas, or press releases. • Free tagging • Lets users add tags to the system as they add content • Great for getting the most number of labels associated with content • A single term or multiple terms can be tagged for a given node .

  35. Tagging Options Continued • Flat • A flat list of terms • Hierarchical • A taxonomy that can have hierarchical relationships • Software • Operating Systems • Office Suites • Photo Editing • Web Design

  36. Tagging Options Continued • You can have vocabularies that share terms in a hierarchy

  37. Administering Taxonomy • Taxonomy is administered under categories • admin/content/taxonomy • Taxonomies can used to display data using URLs like http://www.denverdataman.com/taxonomy/term/18 or http://www.denverdataman.com/taxonomy/term/18+20

  38. Users • Drupal creates users to represent individuals with access to the site . • By default, someone who has not logged in is Anonymous. • This name can be changed on the site information page /admin/settings/site-information • Add as many other users as needed. • Registration can be done by administrators or from a public link.

  39. Users and Roles • Groups of users are called Roles • Roles are assigned on the users page (/admin/user/user). • There are modules that allow changes to roles based on other criterion. • Users can have more than one role • The role with the greatest permission will be inherited for a specific task.

  40. Access Control • Access Control allows you to set very granular control based on roles . • Each module has its own permissions

  41. User Settings • User Settings can be configured at /admin/user/settings • This is the page where the administrator can control what happens when a new user is created, and what emails users receive upon being registered or registering .

  42. Node Types • By default Drupal creates a page and story node types • The main difference between story and page is that story is promoted to the front page. • An administrator can create more node types that match the needs of specific content . • Nodes types are an excellent way to pre-define a set of options and security permissions for content being produced • Example: Technical support articles have access to specific vocabularies, don’t get promoted to the front page, and can only be added by a specific role

  43. Contrib Modules • All of the contrib modules you use should come from the Drupal site unless you know the author or you are the author . • Make sure you choose modules that will work with your installations .

  44. Drupal Design • Themes • Templates • Folders • Installing Drupal • Installing Modules • Updating Drupal

  45. Finding Themes • Drupal.org - http://drupal.org/project/Themes • The Theme Garden • Drupal 5 - http://themegarden.org/drupal50/ • Drupal 6 - http://themegarden.org/drupal6/ • Top Notch Themes - http://www.topnotchthemes.com/

  46. Theme Considerations • Overall aesthetics • Programming quality • Does the theme match your XHTML standards for your site? • Does the page have blocks where you need them? • You can add blocks later, but it is typically better to find or build a theme with the blocks you may want to use.

  47. Template Files • Theme files end in tpl.php • There is a hierarchy of files • page.tpl.php • node.tpl.php • block.tpl.php • You can override specific pages, nodes, or blocks • page-page_name.tpl.php • node-node_name.tpl.php • block-block.name.tpl.php

  48. Drupal Directories • Modules • Themes • Sites • All • Modules • Themes • Default • Files

  49. Installing Drupal • Your installation of Drupal will depend on your server configuration . • Cron.php • One often skipped step is setting up the cron job for Drupal. • Cron.php is a file that should be ran as a cron job and performs critical tasks for Drupal. • DenverDataman.com runs cron job every 6 hours. • Some sites run it more frequently.

  50. Installing Modules • Find the module you want to install • Right click on download and copy the link location • Go to your upload folder on your server • I like to have an area where I download the TAR files before untaring them • Type wget and the URL for the module • Untar the file • Copy the module folder into /sites/all/modules • Enable the module • Configure the permissions for the module • Configure the module

More Related