ptg and Facebook users click the Like button, all of their friends will see that they liked it and may click the link, too. This can be an easy and powerful means of promoting your site. The good news is that adding Facebook’s Like button is straightforward. To generate the code to include it on your site, go to http://developers.facebook.com/docs/reference/ plug-ins/like. Just fill out the form to get the code you need to add to your pages. When you paste that code into your page, a Like button will appear that your users can click to share your site on Facebook. You can also create a widget that tracks all the mentions of your website on Facebook. To do so, you use the Activity Feed plug, which can be found at http://developers. facebook.com/docs/reference/plug-ins/activity. As with the other widgets, you fill out the form on the page, and Facebook provides you with the code that you can paste into your own page. An example of the widget along with the form used to create it is in Figure 22.20. 686 LESSON 22: Content Management Systems and Publishing Platforms FIGURE 22.20 Preview of the Facebook Activity widget. Facebook provides a number of other widgets, too. To get an idea of all the ways you can integrate your website with Facebook, go to http://developers.facebook.com/. Download from www.wowebook.com ptg Other Applications This lesson provided a brief tour of a few popular web applications that you can use to go beyond building websites made up of static HTML pages. Not only are there lots of other applications out there, but there are also lots of other categories of applications out there. You can find guest books, shared calendars, discussion boards, tools for sharing bookmarks, and everything in between. Also, even though I focused on applications written in PHP, there are equivalents of these applications written for many other platforms, too. Spam Applications such as blogging tools and wikis enable you to build a relationship with your users by allowing them to contribute to your site, either by posting comments or contributing information of their own. Unfortunately, spammers looking to advertise their websites or raise their search engine rank also take advantage of these features by way of programs that seek out and automatically post to sites running common software, such as TypePad, WordPress, and MediaWiki (among others). There are a number of approaches to combating spam. These days, most popular applica- tions provide tools that attempt to prevent spammers from posting; but even so, some spam still makes it through. I mention this only to let you know that it’s a risk of deploy- ing these kinds of applications on the Web these days. The most important thing to remember is that you shouldn’t deploy one of these applica- tions and then abandon it. A MediaWiki installation that goes unused will be overrun with spammers in no time. The same is true for the comments sections of blogs, too. If you put up an application but then stop using it, you should remove the files or configure your web server so that it is no longer publicly accessible. Not only will it keep spam- mers from filling up your databases with junk, but it will also be an act of good citizen- ship on the Web. Summary The purpose of this lesson was to take you beyond the realm of HTML, CSS, and JavaScript and into the world of web publishing. These days, there’s more to publishing on the Web than uploading HTML files to a server. Using free or inexpensive tools, you can build interactive websites that help you keep a handle on your content and make it easy to communicate with your users. You can apply your newfound skills to personalizing and improving these tools as well as to creating the content that you use them to publish. Summary 687 22 Download from www.wowebook.com ptg Workshop This final workshop contains some questions about content management systems, as well as a quiz and exercises. Q&A Q What about security? I’ve read about security holes in some web applications. A A number of popular web applications have been found to have bugs that can cause security problems, and when you install an application, it’s important to keep an eye on subsequent releases to make sure that you install updates that fix any secu- rity holes that arise. Deploying an application and not keeping it updated can leave you vulnerable not only to malicious users who want to break into your servers, but also spammers who look for problems with applications that can send mail to use them to deliver spam. The bottom line is that putting up an application on the Web places some responsibility on the person who deployed it to keep it up-to-date and prevent it from being used for nefarious purposes. Q Is there a way to automatically keep my applications up-to-date? A Some servers run operating systems with package managers. As long as you install your applications from packages supported by the package managers, you can let the operating system keep them up-to-date. Doing so generally requires that you run your own server. If you are using a web hosting provider, you’re probably on your own when it comes to installing updates. Alternatively, you can use hosted applications. In that case, the company providing the applications is responsible for keeping them all up-to-date. Q Will my web hosting provider install and maintain any of these applications for me? A Some web hosting providers maintain installations of popular applications so that their customers don’t have to install the applications themselves. For example, there’s a list of web hosts that support WordPress at http://wordpress.org/hosting/. If you’re sure which application you want to use, it might make sense to select your hosting provider on that basis. 688 LESSON 22: Content Management Systems and Publishing Platforms Download from www.wowebook.com ptg Quiz 1. What are some of the trade-offs between hosted applications and those you install yourself? 2. Why do some applications require you to change the file permissions on the server? 3. Why do most installable applications ask you to specify a prefix for table names in a database? Quiz Answers 1. Hosted applications tend to be less work up front and easier to maintain but offer less flexibility than applications you install. 2. Applications that make changes to the file system, either because they store their data in files or because they allow users to upload files, generally require you to change the file permissions for specific directories when you install them. 3. Each application has its own table prefix to prevent naming conflicts when several applications use the same database. For example, several applications might have their own table called “users.” Adding an application-specific prefix to it will pre- vent conflicts. Exercises 1. Find out which operating system, application development environment, and data- base are available from your web host, if you have one. If you’re working on inter- nal projects, find out about your servers from the Information Technology department. 2. Install one of the applications mentioned in this lesson, or one you find yourself, and try it out. 3. Go forth and put your new web publishing skills to good use. Workshop 689 22 Download from www.wowebook.com ptg This page intentionally left blank Download from www.wowebook.com ptg APPENDIX A Sources for Further Information Haven’t had enough yet? In this appendix, you’ll find the URLs for all kinds of information about the World Wide Web, Hypertext Markup Language (HTML), and developing websites. With this information, you should find just about anything you need on the Web. Download from www.wowebook.com ptg 692 APPENDIX A: Sources for Further Information Some of the URLs in this appendix refer to FTP sites. They might be busy during business hours, and you might not access the files immediately. Try again during nonprime hours. Also, for mysterious reasons, some of these sites might be acces- sible through an FTP program but not through web browsers. If you’re consistently refused by these sites using a browser, try an FTP program instead. These sites are divided into the following categories and are listed in alphabetic order under each category: n Analytics n Browsers n Collections of HTML and web development information n Imagemaps n HTML editors and converters n HTML validators, link checkers, and simple spiders n JavaScript n Log file parsers n HTML style guides n Servers and server administration n Sound and video n Specifications for HTML, HTTP, and URLs n Server-side scripting n Web publishing tools n Other web-related topics n Tools and information for images n Web hosting providers CAUTION Download from www.wowebook.com ptg Analytics Google Analytics http://www.google.com/analytics/ Yahoo! Web Analytics http://web.analytics.yahoo.com/ Digits Counter http://www.digits.com/ LiveCounter http://www.chami.com/counter/classic/ Bravenet Counter http://www.bravenet.com/webtools/counter/StatCounter http://www.statcounter.com Site Meter http://www.sitemeter.com/ Browsers Internet Explorer http://www.microsoft.com/windows/ie/ Mozilla Firefox http://www. mozilla.com Safari http://www.apple.com/safari/ Google Chrome http://www.google.com/chrome Opera http://www.operasoftware.com wget http://www.gnu.org/software/wget/wget.html Browsers 693 Download from www.wowebook.com ptg IETester (allows testing multiple versions of IE) http://www.my-debugbar.com/wiki/IETester/HomePage Lynx (text-based browser) http://lynx.browser.org/ Links (alternative to Lynx with better table handling) http://links.sourceforge.net/ evolt Browser Archive (huge archive of old browsers) http://browsers.evolt.org/ Collections of HTML and Web Development Information The home of the WWW Consortium http://www.w3.org/ MSDN (Microsoft Developer’s Network) Online http://msdn.microsoft.com/ Mozilla Developer Center http://developer.mozilla.org Yahoo! Developer Network http://developer.yahoo.com/ Google Code http://code.google.com/ evolt.org http://www.evolt.org/ A List Apart http://www.alistapart.com/ W3Schools http://www.w3schools.com/ Smashing Magazine http://www.smashingmagazine.com/ 694 APPENDIX A: Sources for Further Information Download from www.wowebook.com ptg QuirksMode http://www.quirksmode.org/ Imagemaps Mapedit: A tool for Windows and X11 for creating imagemap map files http://www.boutell.com/mapedit/ image-maps.com (online tool for creating image maps) http://www.image-maps.com/ HTML Editors and Converters HTML-Kit http://www.chami.com/html-kit/ TopStyle http://www.topstyle4.com/ Adobe Dreamweaver http://www.adobe.com/products/dreamweaver/ BBEdit (Mac OS) http://www.barebones.com/ HTML Validators, Link Checkers, and Simple Spiders W3C Validator http://validator.w3.org/ HTML Tidy http://tidy.sourceforge.net/ WDG HTML Validator http://www.htmlhelp.com/tools/validator/ CSE HTML Validator http://www.htmlvalidator.com/ HTML Validators, Link Checkers, and Simple Spiders 695 Download from www.wowebook.com . Windows and X 11 for creating imagemap map files http://www.boutell.com/mapedit/ image-maps.com (online tool for creating image maps) http://www.image-maps.com/ HTML Editors and Converters HTML- Kit http://www.chami.com /html- kit/ TopStyle http://www.topstyle4.com/ Adobe. Validator http://validator.w3.org/ HTML Tidy http://tidy.sourceforge.net/ WDG HTML Validator http://www.htmlhelp.com/tools/validator/ CSE HTML Validator http://www.htmlvalidator.com/ HTML Validators, Link. “users.” Adding an application-specific prefix to it will pre- vent conflicts. Exercises 1. Find out which operating system, application development environment, and data- base are available from