In this two part series, we'll give you a quick introduction to the Drupal 8 out-of-the-box site building experience. This course is for people who are completely new to Drupal. You might be a developer or a decision maker, but you need to know what makes Drupal tick, and fast.
In part 2, you’ll get an overview of site building, extending Drupal, and contributing to the Drupal community. This course includes:
• Presentations: We've condensed the most essential information about Drupal into this quick course.
• Demos: Watch me completing specific tasks as I build a site.
• Download step-by-step tutorials, and try out the tasks yourself.
No matter your experience level or background, this course will get you familiar with the next up-and-coming version of Drupal.
https://www.acquia.com/resources/acquia-tv/conference/ready-set-drupal-intro-drupal-8-part-2-december-4-2014
Ensuring Technical Readiness For Copilot in Microsoft 365
Ready. Set. Drupal! An Intro to Drupal 8, Part 2
1. Ready. Set. Drupal! Part 2
A quick introduction to the Drupal 8
out-of-the-box site building experience.
http://training.acquia.com
http://training.acquia.com/drupalready
2. Take this course!
• In a classroom or
online.
• Teach at events or
your company.
http://training.acquia.com/drupalready
3. About me
• Heather James
• Manager of Learning Services
• @learningdrupal
training.acquia.com/events
8. Ready check!
You will need
• A working copy of
Drupal 8 – most recent
Beta.
• Acquia Cloud free site
acquia.com/drupal-8
• Materials!
Nice to have
• Browser inspection tool
such as Firebug for
Firefox, or “Developer
mode” in Chrome.
• Lorem Ipsum text
generator.
http://training.acquia.com/drupalready
9. Task: Drupal 8 – Acquia Cloud
• Go to
acquia.com/drupal-
8
• Choose to try now.
• Configure your site
acquia.com/drupal-8
10. Develop locally
• Install
Dev Desktop 2
• Connect SSH key
• Clone your site
locally
docs.acquia.com/dev-desktop2/cloud/working
12. Drupal 8 status
• More beta releases!
• Release candidate:
Drupal 8.0.0
• Future minor releases
will add features:
Such as Drupal 8.1.0
Betas Test
RC1 Test
8.0 Ready!
Minor New
features
drupal.org/core/release-cycle and drupal.org/node/2135189
13. Generated lists of
content
drupal.com/showcases
Shows examples of pages created
from lists of content on the fly.
FYI: Built in Drupal 8!
15. Drupal Entities
Users Taxonomy terms
E. Webb
Germany
J. Beeman
Spain
adventure
city break
sailing
shopping
Content (nodes)
• Pet-friendly holidays
for the whole family.
• Drum and dance in
Comments
city break
dwight
8 Sept
Wow, can't
wait to get
visit.
joe
8 Sept
Me too!
Mali.
• Indian adventure on a
river boat cruise.
• Mud baths and hot
springs of Beppu.
• Hidden Paris by night
in the winter.
Blocks
Block title
Block text here.
Some information
about something.
http://link123.com
Contact forms
Subject
Message text field.
Custom fields as
needed.
Entities are one instance
of an entity type.
Each has a unique ID.
These are examples of
“Content entities” in
Drupal.
Examples of content entities in Drupal 8
16. Adding fields to content types
Generic Content type settings
Title
Author
Date published
Comments
Menu options
Revisions
Article + fields:
Image
Body text
Tags
Tips + fields:
Video
Body text
Tags
Link
Content types: Define defaults and add fields (usually)
17. Adding fields to Blocks
Default basic block has
one body text field. What
if you want an image and
a link?
With “Block Types” in
Drupal 8, you can add
fields.
Such as an image or link
field.
Add fields to block types
18. Views for lists of content
What to select & filter How to format & display
25. What is a theme?
Minimum files you need Robust example
Under construction…
26. Override in your theme
Copy a core template file to your theme, modify it.
27. Inheritance
Base
theme
page
Core
Templates
user
node
user
page
node
page
node
node
Core provides templates.
Themes can opt to override these
templates.
Or not!
Drupal theming is a process of
overriding what is there.
Drupal theming = overriding
Sub-theme
Actually
used
28. What template is being called?
• Twig debug option
indicates what
template is being
called.
• Offers suggested
templates
Twig Debug explained drupal.org/node/2358785
29. Twig template syntax
<ul>
{% for item in menu %}
<li>
<a href="{{ item.href }}">
{{ item.name }}
</a>
</li>
{% endfor %}
</ul>
{% foo %}
Used for expressions
{{ bar }}
Prints variables
drupal.org/theme-guide/8/twig
32. Lesson 7: Who is using Drupal?
Drupal and the community
33. In Lesson 7
• Presentation: Who’s using Drupal
• Demo: How to find contributed projects,
how to use the issue queue.
• Task: Test a contributed module. Learn
more about your local community
38. What does Drupal 8 run on?
• Built in PHP, HTML, CSS,
JS.
• LAMP stack is most
widely used and tested.
• Other OSs, servers, DBs
possible (in orange)
Drupal
Framework: Symfony
Language: PHP
Server: Apache Database: MySQL
Operating System: Linux
Details drupal.org/requirements
40. Contributed modules
• The majority of your
development will rely
on contributed code.
drupal.org/project/project_module
41. Reporting issues
• Use the Issue queue
• Search first
• Report issues
drupal.org/node/317
42. Open Source Software = Community
All photos by Kathleen Murtagh code sprints (CC BY
2.0)
43. How big is the community?
Hint: For latest data, check “d.o”
44. DrupalCon
• 1500-3000 attendees
– 5 days of learning and
collaboration
– Affordable tickets
– Scholarships!
• Q: Where's the next
DrupalCon?
Hint! association.drupal.org/drupalcon
“Trivia night” Photo by Josef Jerabek (CC BY-NC-ND 2.0)
https://www.flickr.com/photos/pepej/15451001565/
45. Task: Connect locally
• Attend meet-ups
• DrupalCamps (local
conferences)
• Training – Free Global
training days and paid
training.
What is happening next in your area? http://drupical.com
46. Task: Search for modules
• Search through
contributed
modules.
drupal.org/project/project_module
56. Build in Drupal 7 now
https://docs.acquia.com/articles/usi
ng-drupal-8-features-your-drupal-7-
website
Migrate NOT upgrade to D8 from
D6 or D7
Build in D7 now and be better prepped for D8.
This short course “Ready. Set. Drupal!” assumes you know absolutely nothing about Drupal. You might be a developer or a decision maker, but you need to know what makes Drupal tick, and fast. No matter your experience level or background, we’ve condensed the most essential information about Drupal into this quick course.
Soon the course will be available online. There are more free courses upcoming soon. Complete with instructor guides so you can teach your colleagues and fellow community members. We will also have two more course coming out in January: Practical Drupal a one day course… and for those that know Drupal already: A course on “what’s new in Drupal 8” and “upgrade your module to Drupal 8.”
(Replace with an introduction about yourself – you don’t need a picture, but I’m using this in a video.) Hi, I’m Heather, Manager of Learning Services at Acquia. If you have questions about training you can contact me on twitter. You can check out our public schedule of training events.
Add a slide about your company or your work. This helps people know who you are, what you’re knowledgeable about and how to find out more about you if they’re interested.)
We try and make the training we do interactive, creative and fun. The training is delivered in Classrooms for public and on-site client training, but we also have both live and self paced training.
Ask questions of the audience. Try to find out what other systems they are familiar with, you can refer to them later to make connections.
We’ll build this site in this course. It has a blog, showing articles which we can display in a grid, sort of like a Photo gallery.
In this course, I’m going to give you topical presentations and you can watch me completing specific tasks as I build a site. Then, you’ll download step-by-step tutorials and try out the tasks yourself. I think it’s best to learn by doing, but if you’re in a hurry you’ll start to get a feel for how you can work with Drupal just by watching the presentations and demos.
Soon you will be able to sign up to the online course, and just sit back and watch the videos. If you do know Drupal, and you’d like to run this course yourself, the materials are freely available for you to use. I’ll include the links in the online course to download the, materials and links to sign up online.
We have so much so show you, there’s so much you can do with Drupal. Though we have a shorttime today. So we wanted to leave you with additional tips and advice about what is possible with Drupal. Each of the steps is written out clearly so you can follow along and complete them.
If you were able to get people to install D8 ahead of time, you can skip the next task and just make sure everyone is set up now.
Otherwise in the next slide have people start setting up their sites, direct them to complete the task. As they wait for their site to set up, move on to Lesson 1.
A super easy option for trying out Drupal is Acquia’s free hosting. At the time of making this presentation, the latest Drupal 8 version is this beta. However, this will change as new versions become available. Go now to set up your new free site for Drupal 8. There are just a few settings to complete. Make sure to pick a server region closest to you, that will make it faster. After you configure the settings and click “create site” it will take a few minutes. While you wait, you can go on to the next presentation.
Important: during installation they will see the option to choose another language, if that is relevant to your group, Note that localize.drupal.org does not yet support the full Drupal 8 API and does not have all translatable strings.
The first release of Drupal 8.0 will be fully functional with all the key features working and in place.
The community has changed the release process going forward introducing minor releases every 6 months. We won’t be locked in to the features which come out with the first release. Most importantly: Backward compatibility preserved between minor releases.
The more people help, the faster we can find and fix bugs, and the faster 8.0.0 gets released. The faster 8.0.0 gets released, the faster we can start adding new features for Drupal 8.1.0.
For example, Drupal.com itself (built in Drupal 8) has a page listing examples of sites by industry. The list is generated, not static. Content editors only have to add a new entry to have it included here.
Demo: Again, visit the article creation or editing form, if you haven’t already.
So we want to control how links are input, validate they are in fact links, and also control how they display. If we had a link field on the form we could do this!
These are the entities available across the system. Entities
Content Entity types are structured data, to which you can add fields. if you can store data, that's called a “content entity.
Let’s take two example content types: Article which you’re familiar with, and “Tips” a possible new content type we could add to the site.
Content types track information such as the author, title and date published by default.
There are also some options are provided when you create the content type. You can set defaults: will we allow comments, menu links or automatically save revisions?
When you set the defaults you define a content type. To that you can add fields.
The screenshot shows a basic block with a text field. You can add images inline or links inline if you like. But you can't universally control display.
And when you want to access the advanced settings, there is the full UI.
Format: You can change for example, if content is listed in a table or in a bulleted list or what fields are displayed
Filter and Sort: You can add filters, and change the default sort orders.
Page settings: You can specific what path it’s on and who can access it.
Say for example, we have to display a featured article on the front page, and then the full article when they want to read the content; and then a gallery of all article images as way to browse the same content.
Drupal gives you control to make different modes for viewing content.
If you get to the challenge exercise you’ll see that you can make the display look like a gallery. But this bugs me, I have images which don’t match, different proportions, etc.
Later on, try this out.
Presentation: Custom themes and modules
Demo: Simple theme, template files. Simple module.
Task: Create a custom theme
Bartik has the “Classy” theme as the base theme. It shows a robust, responsive theme.
Startk shows Drupal’s core markup and output. If you’re creating a theme from scratch, this is what you start working with.
Right now, this is under development, the goal for the release candidate is to have Stark (core output) completely stripped of any classes and presentational markup.
The Drupal 8 base theme, “Classy” will provide markup and corresponding classes with CSS files to provide a base upon which to build.
Bartik uses Classy as a base theme.
Without it Drupal 8 will provide minimal or no classes. (This is planned for RC1, and not currently working this way!)
A basic theme can be made with a simple configuration file, saved into a folder of the same name.
In your root/themes/ directory.
As people arrive, you can leave this screen up. Start to check if people have an up to date version of Drupal 8 installed locally. If not, direct them to the course page, and have them start on the set up task.
You can also write on a whiteboard: The link to page for this course: http://training.acquia.com/drupalready
Also write on the WIFI connection information, your name, twitter handle.
Many core modules include template files which define how Drupal is rendered. Same for contributed modules you add, they will provide template files.
So far we’ve seen how a basic Drupal theme, even with an .info file inherits the templates of the core and contributed themes. A base theme inherits the template files, CSS and settings of an identified parent theme.
The Twig templating language used in Drupal 8 is much easier than templating in PHP directly.
It is easier to read and write HTML.
This is the first important thing to know about Drupal theming. “A blank them isn’t blank”.
Core Drupal provides templates to define how markup.
Startk shows Drupal’s core markup and output. If you’re creating a theme from scratch, this is what you start working with.
Right now, this is under development, the goal for the release candidate is to have Stark (core output) completely stripped of any classes and presentational markup.
If you want to see more examples, visit Drupalshowcase.com. This has high level information about sites built in Drupal, organized by country and industry. When you launch your Drupal site, please do submit it for the showcase.
Drupal.org’s case studies are written by the developers and give in depth information into how sites were built, what configurations and customizations were used… and always some great advice if you’re trying to achieve something similar.
In this course we’ll take a more in depth look at many of the capabilities available with Drupal 8. Drupal 8 is the next up-and-coming version of Drupal. It’s not considered ready for prime time, but if you’re thinking about building a site in the next year you might be wondering about Drupal 8.
Drupal 8 is a flexible framework. Using modern OOP PHP development practices, using the Symfony framework at the lowest levels, and outputting HTML5.
One reason that it’s so popular is because of the flexibility inherent in the system. There’s lots of options in terms of the servers, operating systems and databases required to run Drupal. The LAMP stack is the most widely used and tested.
Drupal functionality is easily extended with contributed and custom code. Leaders of Drupal agencies responded to a survey stating that on average about 80-90% of a typical project is done with core Drupal and contributed code!
Remind users that there are thousands of modules for other versions, it’s still early days. Prompt users to check drupal.org, who can get the updated number the quickest!
Depending on your audience, and how technical they are, now is a good time to introduce them to the issue queue. Especially during the testing phases, beta and so forth. Prompt the audience to visit this page and see if the number of open issues has changed!
Drupal is software but also a community. Development happens through collaboration online and at many events which happen around the world.
Drupal.org is the canonical location for collaboration, support, downloading code, accessing documentation and connecting to regional and working groups. Referred to as "d.o” within the community. How many developers have contributed to Drupal? (Hint: check "d.o") – Ask someone in the audience to visit drupal.org and see if there’s been changes in numbers since this screenshot.
DrupalCon is a week long event including training, sprints, presentations, ad-hoc discussion groups called “BoFs” and social events like Trivia Night in this photo. (Tell about your own experience at community events or ask if others have been to Drupal camps or conferences).
Check out the events list on Drupical for information about the nearby events. Drupical hosts and up to date listing of events across the world.
This is node—type-page. Core modules have injected classes from core modules such as “node” telling us what type it is.
The base theme: Bootsrap. See classes like col-sm-4
Boostrap is a common tool for building designs quickly with robust components available. And a responsive grid system.
CSS3 transformation
Javascript to make it responsive
And
- Field re-write capability in views to group fields together and mark them up with classes as needed
- use custom jquery to grab size of image on page load and use it to set image of back panel, and then grab height on screen resize as well