2. To retrieve files, connect to “Workshop India” Adhocwifi network. Look for Adraze The reqiured file will be in the public folder. Copy to desktop. Adraze/users/public/drupal workshop
3. welcome Introduction to www architecture. Technology stack. HTML/CSS PHP/MySQL Drupal fundamentals Open source technology
4. The World Wide Web March 1989 – Tim Berners-Lee proposed www as a web of “Hypertext Documents” to be viewed by browsers and set up within a client server architecture. URL HTTP HTML 1993 – Mosaic browser Evolved from the need to provide a uniform method of content transfer and cataloguing over the internet.
5. The Address of a webpage Host name. can be anything. Even NULL. Usually represents sub domain of main site. http://www.my-website.com?q=login#middle Portion of site to show first Not sent to server. Handled by browser Communication protocol used ftp:// - files Smtp:// - mail Web site name. DNS lookup will give IP address Query passed to web server for side server procsessing
6. Technology Stack Server - A server is a computer which provides information or services to other computers on a network. Operating system- The software that runs the server. Unix, Linux, BSD, OS X and Windows are some examples. Database - A structured collection of records. Drupal uses a database to store most content and configuration settings for your site, some content such as media files are generally stored in the server's file system. Web server- The software component responsible for serving web pages. Examples are Apache and Microsoft IIS. PHP - PHP is a programming language that allows web developers to create dynamic content that interacts with databases. Drupal - A framework for building dynamic web sites offering a broad range of features and services.
7. Client Server Model – HTTP model Server 1. Browser sends request for particular HTTP file Client 2. HTML file on disk sent to browser directly
8. Client Server Model – CGI model Server 2. Server finds and calls required CGI application. Client 1. Browser sends request for particular HTTP file 4. Server sends formatted HTML back to browser CGI application 3.After execution CGI app sends result to server.
9. Client Server Model – Side server scripting Server 2. Server reads scripts embedded & executes them. Client 1. Browser sends request for particular HTTP file with scripts embedded in it. 4. Server sends formatted HTML back to browser Database 3. Database for storage & retrieval of data as defined in script.
11. The Web we know now, which loads into a browser window in essentially static screenfulls, is only an embryo of the Web to come. [...]The Web will be understood not as screenfulls of text and graphics but as a transport mechanism, the ether through which interactivity happens. It will [...] appear on your computer screen, [...] on your TV set [...] your car dashboard [...] your cell phone [...] hand-held game machines [...] maybe even your microwave oven Web 2.0 The term "Web 2.0" was coined in 1999. Darcy DiNucci in her article "Fragmented Future,"
19. Choosing the Right Tools Understanding your needs. Understanding the capabilities and limitations of various technologies. Implementation. []
20. My Favorites Django - high-level Python Web framework that encourages rapid development and clean, pragmatic design. Mostly for “high powered” applications. Drupal - free and open source Content Management System (CMS) written in PHP C# .net – too cool IDE and MSDN help references. Best for C users who don’t want to bother with PHP or python.
21. About Drupal. More CMF than CMS Balance between “specific tasks” and “ manageable abstraction” Generalized approach to core systems that allow you to tweak as much as possible for clever customized site functions. Programming on a need-to-do basis only. Time investment needed.
22. Drupal – languages used HTML – basics of any web framework. PHP – the code base of drupal SQL – database management routines CSS – theming the looks
23. HTML born from desire to separate structure from presentation. [SGML] <tag open> </tag close> ; anything in these tags are commands to browser. At its core, HTML is just text linking to other text.
24. Document type definition <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”> The document’s top tag level is HTML. The document adheres to the formal public identifier (FPI) “W3C HTML 4.01 Strict English” standards The full DTD can be found at the URL http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd.
25. Overall structure <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”> <html> <head> <meta ... meta tags go here ... > <title>title of the page/document goes here</title> <LINK rel=“stylesheet” href=“external style sheet name” type=“text/css”> <style> ... any document specific styles go here ... </style>
26. Overall structure <script> ... client-side scripts go here ... </script> </head> <body> ... body of document goes here, paragraphs modified by block elements, characters, words and sentences modified by in line elements ... </body> </html>
28. Styles <html> <head> <style> .redline { color:red; text-decoration:line-through; } </style> </head> <body> <h1>An Example of style usage</h1> <p> If its required to say, change a part of text, red and with a a strike through, you might be tempted to use <font> tags and a <del> tag.. This is not appreciated in the new HTML 4 standard. Instead, we create a style and then apply the style as <span class=“redline”>to this portion of the text, now this part between the span tags has the style applied</span> </p> </body> </html>
29. In main HTML page <html> <head> <LINK rel=“stylesheet” href=“site-styles.css” type=“text/css”> </head> <body> ... In site-styles.css .redline { color:red; text-decoration:line-through; }
30. Linking <a href=“http://www.linkhere.com”> click here</a> Links to external site <a href=“#jmp2”> jump here</a> <a name = “jmp2”> jump space 2</a> Links to Internal Bookmark
31.
32. <p>This is one paragraph</p><p>This is another paragraph</p>Any empty tag must have a closing tag or the opening tag must end with a slash (/). <br /> Comment code </table> <!-- /Top heading --> </table> <!-- /Main body --> </table> <!-- /Floating page -->
33. PHP Hypertext preprocessor Awesome language with its fundamentals in C Most common language for web applications. [facebook, amazon, youtube.] PHP Code is embedded within HTML code by <?php> </php> Secure, customizable, operating sys independent.
34. Web Server Processing of PHP The Web server starts scanning the file in HTML mode. It assumes the statements are HTML and sends them to the browser without any processing. The Web server continues in HTML mode until it encounters a PHP opening tag (<?php). When it encounters a PHP opening tag, the Web server switches to PHP mode. This is sometimes called escaping from HTML.
35. The Web server then assumes that all statements are PHP statements and executes the PHP statements. If there is output, the output is sent by the server to the browser. The Web server continues in PHP mode until it encounters a PHP closing tag (?>). When the Web server encounters a PHP closing tag, it returns to HTML mode. It resumes scanning, and the cycle continues from Step 1.
36. How PHP works. <?php echo “<p>Hello World”; ?> PHP code in original HTML document <p>Hello World What is sent to browser $number = 2; $number = 2+1; $number = (2 - 1) * (4 * 5) -17; $number2 = $number + 3; $string = “Hello World”; $string2 = $string.” again!”; Sample PHP
42. Nodes Nodes are the data pool. Everything is a node in drupal. Nodes are just pieces of content – page, story, image, text, poll, comment, etc etc Most basic “token” of drupal.
43. Modules Modules are functional plug-ins that are either part of the Drupal core (ship with Drupal) or they are contributed items that have been created by members of the Drupal community for various tasks. Easily create your own modules for small tasks. Drupalmodules.org
44. Blocks and Menus Blocks often provide the output from a module or can be created to display whatever you want, and then can be placed in various spots in your template (theme) layout. Highly configurable output control.
45. User Permissions This is where settings are configured to determine which things different user types have access to. Permissions are assigned to various roles, and in turn, users are associated with those various roles in order to grant them the associated permissions.
46. Site Template This is made up predominately of XHTML and CSS, with some PHP tokens sprinkled throughout to insert content from the system into the correct spots Overridable theme functions to give complete control for how modules generate markup [HTML].
47. When NOT to use Drupal Only a blog? Use wordpress. Need a blog with extra features like ecommerce, galleries, user interaction – go Drupal. Only a wiki? Use mediawiki. Only a Forum? Use phpBB.
48. When u NEED Drupal Flexibility - easily add cool extendable features. Interaction with other sites. Complex forms or workflows. Organize and display lists of information on a per-user basis. Custom functionality.
49. Security issues. Security always depends on good maintenance. Constantly update all modules and Drupal core to highest release version. Subscribe to Drupal Security mailing list. It actually helps.
50. GPL Incidentally, the GPL is not tied specifically to Drupal; rather Drupal makes use of the GPL, which is a kind of generic license for distributing open-source software The way things work is that the software is copyrighted, and then licensed, for everyone to use freely. anyone who makes use of this software cannot create proprietary software from it. the only time you do need to worry about the niceties of the GPL is when you decide to set up a business installing, configuring, and customizing Drupal websites for money, or modifying, and redistributing the original source code.