QUyển sách hay drupal 7
this print for content only—size & color not accurate CYAN MAGENTA YELLOW BLACK PANTONE 123 C BOOKS FOR PROFESSIONALS BY PROFESSIONALS ® Todd Tomlinson US $49.99 Shelve in: PHP User level: Beginner–Intermediate THE APRESS ROADMAP Pro Drupal Building Online Communities with Drupal, phpBB, and WordPress Beginning Drupal 7 Foundation Drupal 7 www.apress.com SOURCE CODE ONLINE Companion eBook See last page for details on $10 eBook version ISBN 978-1-4302-2859-2 9 781430 228592 5 49 9 9 Beginning Drupal 7 Dear Reader, Drupal is one of the fastest-growing web development frameworks. It’s extremely powerful, capable of hosting high-traffic, high-security sites like whitehouse.gov as well as small business sites and storefronts. And now Drupal 7 offers even more powerful solutions with a more intuitive and easy-to-use interface. Whether you are designing a small site for a business, a non-profit, or just for fun, or if you are developing a larger site and want to try out Drupal 7, Beginning Drupal 7 will help you get started. You’ll learn: • How to configure the different elements of a Drupal 7 site • How to make your site truly interactive • How to customize the look of your site using themes • How to securely administer your Drupal 7 site In my 35-year career in the IT industry there have been very few technologies that have excited me as much as Drupal. I decided to write this book because my clients frequently ask how they could quickly get up to speed on the Drupal platform so that they could begin building rich and sometimes complex solu- tions. To address the need, I’ve taken all of my experiences of helping dozens of clients through the Drupal learning process and have embedded that knowledge and experience into this book. I hope you’ll walk with me as I take you through the journey of learning how to build rich and powerful web sites using Drupal 7. You’ll learn everything from installing Drupal to managing your site once you’ve completed it. If you stick with me along the path you’ll walk away with enough experience under your belt to quickly and easily create functionally rich and beautifully designed Drupal 7 sites on your own. Todd Tomlinson Tomlinson Drupal 7 Companion eBook Available Beginning Drupal 7 7.5 x 9.25 spine = 0.75" 336 page count (PPI: 444) THE EXPERT’S VOICE ® IN OPEN SOURCE Todd Tomlinson An easy to follow reference to help the novice or professional quickly and effectively learn the Drupal platform Beginning Beginning Drupal 7 ■ ■ ■ TODD TOMLINSON ii Beginning Drupal 7 Copyright © 2010 by Todd Tomlinson All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher. ISBN-13 (pbk): 978-1-4302-2859-2 ISBN-13 (electronic): 978-1-4302-2860-8 Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1 Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. President and Publisher: Paul Manning Lead Editors: Michelle Lowman, Brian MacDonald Technical Reviewers: Steve Edwards, Todd Kelsey Editorial Board: Clay Andres, Steve Anglin, Mark Beckner, Ewan Buckingham, Gary Cornell, Jonathan Gennick, Jonathan Hassell, Michelle Lowman, Matthew Moodie, Duncan Parkes, Jeffrey Pepper, Frank Pohlmann, Douglas Pundick, Ben Renow-Clarke, Dominic Shakeshaft, Matt Wade, Tom Welsh Coordinating Editor: Jim Markham Copy Editor: Tracy Brown Collins Compositor: Kimberly Burton Indexer: BIM Indexing & Proofreading Services Artist: April Milne Cover Designer: Anna Ishchenko Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax 201-348-4505, e-mail orders-ny@springer-sbm.com, or visit www.springeronline.com. For information on translations, please e-mail rights@apress.com , or visit www.apress.com. Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Special Bulk Sales–eBook Licensing web page at www.apress.com/info/bulksales. The information in this book is distributed on an “as is” basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work. iii There are so many people to thank for making this book possible, including two very special people who had a huge influence on my life and my desire to write. This book is dedicated to them. Grant Wiley (1925-1996), president of Sportland Distributing, gave me the opportunity to enter the world of information technology back in 1976. If it weren’t for Grant’s support and encouragement, I might be still slinging boxes in a warehouse somewhere. He took a chance by asking me to read through the IBM manuals so that I could take over the responsibility for the newly installed IBM System/32. Grant taught me everything about business that you don’t learn in business school, concepts that I’ve carried with me and applied while consulting for dozens of the largest companies in the world. I also want to thank my 98-year-old grandmother, Gladys Tomlinson, who at 96 published her first book. Thank you, Grandma, for all you’ve done for me over the years, and for the influence that you have had on my life. iv Contents at a Glance ■About the Author . xv ■About the Technical Reviewer xvi ■Acknowledgements . xvii ■Introduction xviii ■Chapter 1: Introduction to Drupal 1 ■Chapter 2: Creating and Managing Content 9 ■Chapter 3: Creating and Managing Users . 25 ■Chapter 4: Taxonomy . 37 ■Chapter 5: Creating Menus 51 ■Chapter 6: Installing Themes 59 ■Chapter 7: Drupal Blocks 71 ■Chapter 8: Drupal Modules . 83 ■Chapter 9: Enabling Interactive Capabilities 97 ■Chapter 10: Content Types . 119 ■Chapter 11: Views 151 ■Chapter 12: Panels . 175 ■Chapter 13: Theming .197 ■Chapter 14: Administering Your Drupal Site 215 ■Chapter 15: Putting It All Together . 229 ■Chapter 16: Case Study 239 ■Appendix A: Installing Drupal . 257 ■Appendix B: Additional Resources . 267 ■Appendix C: Social Networking 271 ■Appendix D: E-commerce . 283 ■Index 295 v Contents ■About the Author . xv ■About the Technical Reviewer xvi ■Acknowledgements . xvii ■Introduction xviii ■Chapter 1: Introduction to Drupal 1 Content Management Systems 1 Drupal . 2 Drupal Core . 2 Contributed Modules 3 Drupal Themes . 5 Creating Content 5 Summary .8 ■Chapter 2: Creating and Managing Content .9 Understanding the Basics 9 Creating Content in Drupal .10 Teasers and Full Nodes 12 Editing Content 12 Other Content Options 14 Menu Settings 14 Revision Information . 16 URL Path Settings . 17 Comment Settings 18 ■ CONTENTS CONTENTS vi Authoring Information . 20 Publishing Options 20 Deleting Content 21 Finding Content 22 Summary .23 ■Chapter 3: Creating and Managing Users 25 Users, Roles, and Permissions 25 User Accounts 26 Configuring User Account Settings 26 Creating Roles 28 Assigning Permissions .29 Creating User Accounts .31 User Generated Accounts 34 Resetting User’s Passwords 35 Summary .35 ■Chapter 4: Taxonomy .37 Taxonomy Overview .37 Creating Vocabularies 38 Assigning a Taxonomy Vocabulary to a Content Type .42 Selecting a Taxonomy Term when Creating Content .45 Creating Human- and Search-Engine-Friendly Lists .47 Hierarchical Terms .48 Assigning More Than One Vocabulary .50 Summary .50 ■Chapter 5: Creating Menus 51 Ordering From the Menu 51 ■ CONTENTS vii Adding an Item to a Menu 53 Adding a Content Item to a Menu . 53 Adding a Menu Item for an External Page 54 Creating a New Menu 56 Summary .58 ■Chapter 6: Installing Themes .59 How a Drupal Theme Works 61 Finding a New Theme 62 Installing a Theme .64 The Administration Theme .67 Configuration Options 68 Summary .69 ■Chapter 7: Drupal Blocks .71 Blocks, Blocks, and More Blocks .71 Making Blocks Appear on Pages .71 Finding the List of Available Blocks .72 Re-Arranging Blocks 74 Reassigning and Deactivating Blocks 74 Configuring Blocks .74 Using Blocks from Contributed Modules 77 Creating Custom Blocks .79 Summary .81 ■Chapter 8: Drupal Modules 83 Contributed Modules 83 How to Download, Install, and Configure a Module .84 Configuring Modules and Setting Permissions 87 ■ CONTENTS CONTENTS viii Enabling Other Modules .89 Disabling a Module . 89 Upgrading a Module . 90 Uninstalling a Module . 91 The Top Eleven Modules 92 Content Construction Kit (CCK) . 92 Views 92 Panels . 92 Imagecache 93 Nicemenus 93 Nodequeues 93 WYSIWYG 93 Pathauto . 94 Webform . 94 Backup and Migrate . 94 Ubercart 94 Summary .95 ■Chapter 9: Enabling Interactive Capabilities .97 Blogging .97 Enabling Blogs 97 Creating a Blog Entry 98 Displaying Blog Entries . 99 Adding a List of the Most Recent Blog Entries . 100 Forums .101 Setting Up Your First Forum . 102 Polls .108 Creating Your First Poll . 109 [...]... Drupal Database 260 Creating a User Account 260 Configuring Drupal .262 Summary .265 ■Appendix B: Additional Resources .2 67 Drupal Modules 2 67 Drupal Themes .2 67 Drupal Documentation 2 67 Where to Go When you Have Problems 268 How to Backup Your Drupal Site 269 Where to Host Your Drupal. .. .269 Drupal Podcasts 269 ■Appendix C: Social Networking 271 Expanding Your Reach by Sharing . 271 Integrating Your Site with Social Networking Sites . 273 Integrating Drupal with Facebook 273 Integrating Drupal with Twitter 274 Integrating Drupal with Flickr 274 Integrating with YouTube 275 Displaying... Networking Sites 275 Creating a Social Networking Website on Drupal 275 The Organic Groups Module 278 Setting Up Organic Groups 278 Setting Up Content Types 278 Configure the Organic Groups Module 278 xiii ■ CONTENTS CONTENTS Activating OG Blocks 279 Setting Up Access Configuration 279 Setting Up Permissions... Accounts 256 Summary .256 ■Appendix A: Installing Drupal 2 57 The Foundation Required to Install Drupal 2 57 Setting Up the Server 258 Installing Drupal 258 Downloading Drupal 259 Decompressing the Drupal Installation Package 259 Moving the Drupal Distribution to the Root Directory of Your Web Server 259 Creating... 172 Summary . 173 ■Chapter 12: Panels 175 Available Layouts 178 Is It a Page, a Page, or Is It a Page? 178 Creating a Panel Page 178 Modifying an Existing Panel Page 188 Using the Flexible Layout Option 192 Adding Other Things to Panel Panes 196 Summary .196 ■Chapter 13: Theming 1 97 Picking... 225 Summary .2 27 ■Chapter 15: Putting It All Together 229 Now What? 229 Look At Other Drupal- Based Sites for Ideas 229 Keep Tabs on Drupal and Contributed Modules 230 Get Involved in Your Local Drupal Users Group 230 A Methodology for Building Your Site on Drupal 231 Summary .2 37 ■Chapter 16: Case Study ... Pathauto: This module creates search engine-friendly URLs by automatically generating a “pretty” URL that is based on the page’s title (such as www .drupal7 book.com/examples instead of the default Drupal URL of www .drupal7 book.com?node=1234) CHAPTER 1 ■ INTRODUCTION TO DRUPAL • Scheduler: Provides the ability to specify the date that a node will become published on the site, and the date when a node will no... capabilities 1 CHAPTER 1 ■ INTRODUCTION TO DRUPAL There are hundreds of CMSes available (check out www.cmsmatrix.org) They range from simple blogging-only platforms, such as WordPress, to complex enterprise class content management solutions, such as Drupal Drupal Drupal is a free and open source CMS written in PHP and distributed under the GNU General Public License Drupal stems from a project by a Dutch... SQLite, or PostgreSQL) to store content and settings Drupal Core When you download and install Drupal, you are installing what is commonly called as Drupal core Core represents the “engine” that powers a Drupal- based website, along with a number of out-of-the-box features that enable the creation of a relatively full-featured website The primary components of Drupal core include capabilities to create and... forward to seeing your works on the web and hope to bump into you at an upcoming DrupalCon xviii CHAPTER 1 ■■■ Introduction to Drupal This chapter provides a basic overview of what a content management system (CMS) is, how Drupal fills the role as a CMS, the major building blocks of Drupal, and how to create content on your new Drupal website Content Management Systems In its simplest form, a CMS is a software . beautifully designed Drupal 7 sites on your own. Todd Tomlinson Tomlinson Drupal 7 Companion eBook Available Beginning Drupal 7 7.5 x 9.25 spine = 0 .75 " 336. quickly and effectively learn the Drupal platform Beginning Beginning Drupal 7 ■ ■ ■ TODD TOMLINSON ii Beginning Drupal 7 Copyright © 2010 by Todd Tomlinson