good morning everyone this is
understanding Rupa thank you very much
for being here
my name is Martita lien act I am known
as dinner Conan drupada or Twitter and
pretty much anywhere in the Internet I
am from Nicaragua
it is 88 degrees there right now and so
if you ever want to escape the call of
the Midwest that's a beautiful place to
go and you can get really hot like we
have active volcanoes and you can either
watch like an online experience or
actually leave it if you go to Nicaragua
I worked with a company called I got it
which is based in Boston where we were
actually distributed
I am from Nicaragua but have people in
Europe and America as well
and I am really passionate about
teaching I've been doing this for a
couple of years already and in the
future I'm going to start a project to
teach in Drupal in different languages
so hopefully that will come out soon and
I will start with English Spanish and
French and I am already expecting to
learn German so at some point Germans
well this is an outline of where we're
going to cover today we're going to
start with the very basics like no
assumptions not even true palates
Pacifica stuff and from there we are
going to you know build concepts
understanding so to start just like very
general thing the difference between a
web page in the web site so usually
those terms are used interchangeably but
they are a little bit different so when
you have a website let's say you know
amazon.com that had pages for individual
products and offer some services and so
on so the website in general is
amazon.com but then you have a specific
pages for each of the product and each
of the other things so in this case we
have one web page that has
excuse me one website that has six
different web pages and for example in
the article section of your company
organization for example you can have
one extra page for each individual
article so this is going to be useful
when we learn how to map that concept
that we might know already from using
the web in general and how those things
translate to Drupal and when we you know
look at a web teaching in particular we
have like a fuller hair sidebars lows
and so on main with navigation and
things like that so my objective for the
session is for all of the elements that
we see on a web page understand what
true power holders and understand how
you can modify them if you need so you
know before we start why do why do we
want to use Drupal anyways so let's see
some examples until a few months ago the
White House was built on Drupal and that
was the case for several years you know
they change to another play but just the
fact that it was running Drupal for
several years is already approved that
Drupal you know is secured at the very
least
whether that count is also a bill on
Drupal and this is actually like the
biggest drupal website it serves over 1
million visits per month and this is not
only through the website but also
through web applications like if you
have that on your phone you know you
want to know what is the weather like in
Chicago right now it will actually
connect to a Drupal packet that Ronnie's
is also build on Drupal and the
interesting thing about this one is that
the rain of the event the whole thing is
like live stream and you also have
direct registration interviews photos
you know written articles are you and
all the multimedia
one single night with massive traffic
from all over the world Drupal can
handle that easy economic forum also not
very edited but at the top right we have
a language sweet future so your Drupal
site can be multilingual
and you know there are a lot of
functionality out of the box but if you
want to invent the pirate language for
example you can do that XO minor tongue
this creature was supposed to show the
responsiveness of Drupal but this is
Krisha so it doesn't respond to anything
but in theory depending on the device
that you're using it is phone a tablet
desktop computer or even a quirky
monitor the content of the website is
going to adapt to you know use as much
space as possible and use it in a very
optimal way and then I have traditional
regalia so this is a small business in
Spain 15 Barcelona where they you know
they have an online store powered by
Drupal to say send a products they sell
oranges tangerine's sweets
honey memory and lemons so yes Drupal
can power you know really high profile
websites but it can also power your own
small business or your own you know
nonprofit organization or your own pride
Tesla Motors is also village robot we
haven't made it to their cars yet but
rumors have said that you know we just
put a patent heavy and space and some
weight report was helping doctor and in
general these are some of the features
like just to recap security multilingual
support ecommerce integration high
traffic you know
management responsiveness of the content
and media handling so hopefully this
will you know give you some clues why a
lot of organizations are not through any
practice in particular universities I
know that in the States at least they
use heavily Drupal and other countries
like externalized on the Drupal platform
for the government sites for example
Australia and Germany the government
sites most of them are lot of trooper so
another few skaters for the educational
role and tech sectors and maybe I
persuade you to to use Drupal but what
inequalities depending on who you ask
Drupal is different things I'm going to
talk about three today but I wonder
we're going to focus is this one Drupal
as a CMS so as far a CMS that is nice
for a content management system it
allows multiple people to participate in
the creation of content and on top of
that it allows you to create publication
workflows let's imagine that the work
for our newspaper you know we have the
journalist who writes the article but
this needs to go through a review
process because before it get it gets
published on the website so we can have
for example one person that normal is
reading the article but it cannot make
it public out of the box then we have
the editor which reviews and make
modification the editor is not able to
create but he or she is able to modify
what someone else every wrote but let's
say that in this case we need one final
check or approval from the department
chief before things go live
so the editor will pass along the
article to the next person and that the
furniture this person is not able to
create or modify content only to check
if everything is okay and if that is
okay if that is the case make it public
so you can have very
I'm great controls over who can create
modify or delete content uneven you it
like you can define who has access to
that content that is it is already
available you can also have contacted
easily and this is how triple names the
way to track changes on the on the
content that you create let's say that
you know something wrong goes to the
website you know something user either
made a mistake or did it on purpose
Drupal will keep track of all the
changes that you went to the website
like another PI letter image pretty much
anything that you do Drupal analysis
comes enable or after the box it will
keep track of those things and it will
tell you when the change was made like
date and time and who did it so you know
if it was a mistake you just like revert
back to that previous version of the
content and what was it if you do ask
you know on purpose that something put
something improper on the website you
can do the same you can be very back to
a previous revision and then you can
blow the user so that user does not have
access to do more hang on the website
and you can have very very granular
access controls let's imagine that we
have our e-commerce website and we want
to show that content exactly the same to
everyone but we have some VIP customers
you know they buy from us frequently so
the Dakotan is going to be the same
except for the price if it's just like a
general
they see the regular price but if if
this is like a reactive customer they
are going to see the price with at least
one already applied so the images by SKU
the product description like the product
name everything is going to be the same
except for that price itself so the
possibilities of you know managing
access controls in Drupal are create
very flexible framework and one thing to
remember it is that if the file does not
solve your need out of the box you are
free to extend it you know through
programming to do exactly what you need
so it's extensible buy it by design and
probably one of the most important
things to me I have no Paulista
community so you know lots of people
from all over the world participating in
making Drupal better it is it has been
around for more than 15 years so it's a
solid product already and just the fact
that I came here from Nicaragua to
present this session you know it's a
testament that we are a worldwide
community and in the in the Chicago area
you know that a lot of companies that
work with Drupal there are initial
groups that happens that like have
meetings at least once a month so if you
really want to get into Drupal
I highly recommend that you get involved
with the community sometimes like when I
started it took me about six months to
learn what I'm going where I'm going to
teach you in an hour so I remember going
to my first meetup on yeah hi I have
been banging my head against this
problem for days and I just asked
someone else with the experience and in
less than five minutes I had a solution
so try to get it back with the community
so some basic concepts and again I feel
free to interrupt me any time if I'm
going too fast just let me know so the
first thing to know about
police what we call core so core is the
minimum package that you need to install
in order to have a trooper price if you
don't have core it is something else
dupa core comes with a lot of things the
two most important ones are modules and
themes and we're going to cover them in
a moment
and it is called the thing that serves
at that framework so if you want to
extend trooper to something else
Drupal core explain to provide you the
tools and the mechanisms to achieve that
so we said that we have modules and
themes with Drupal for what is the model
our model is something responsible for
adding functionality to your website
let's say that you have a personal blog
and every time that you publish a new
article you want something to happen
that something might be sending a tweet
or a manatee or posting to your Facebook
wall up automatically anything that has
to do with functionality is provided by
a volume on the other hand we have
themes themes control the appearance of
your website like the layout how it's
going to behave in different devices
like the color scheme the phones to be
used all of those things are controlled
by by by things so there is mostly a
very clear delineation of the
responsibilities functionality those are
provided by models appearance those are
provided by themes and remember this in
the context of 2.4 look like corn chips
with curly 50-ish modules not all of
those are enabled out of the box because
you know Drupal is supposed to be
generic and not all the website will
need all the things that Drupal can do
so both modules and theme can be enabled
or disabled on demand
depending on your specific use cases and
this is a Drupal core part of the box
but you know again through polish meant
to be extensible and we have something
called the country repository
country in this context stands for
contribution and this is code that
people at you and me that participate in
the community have been available for
everyone to use let's say that you know
through blackboard for example doesn't
have an integration with PayPal out of
the box but there is a lot of use cases
where you want to interact with PayPal
so there were a group of developers who
you know dedicated some time to write
that integration and created a module
that will allow you to accept either
payments or donation through PayPal and
in medium they make the module available
in the content repository for everyone
to use the same applies for themes and
something that is called distribution so
Drupal can be used for so many different
use cases and sometimes you just need
like a an extra layer of configuration
bundle out of the box so those are
distribution this dilution are a prefect
expression of Drupal with modules from
the country repository and themes from
the cosmic repository that are already
pre-configured for example we have one
called common kickstart that if you want
to expand it from your solution on true
pal you know you can go download through
procore and some modules and some things
and do yourself the configuration or you
just download the distribution and it
comes like out of the box already
configured to have a you know current
workflow discount shipping and so many
other things another example of
distributions there's one called
open Church for churches open open
outreach for NGOs and there's also other
distribution for Qatar for like
newspapers or the Mormons
or and so on so all the things that you
try to get from Drupal for different
reasons do it from Drupal ductwork so
contrary to other place like WordPress
where you know there is a big ecosystem
of premium themes and you know just go
to this website and download these and
go to their website don't know that it
trooper that or we try to centralize
that and mostly for security reasons
there is a team of probably 45 or so
people around the globe that they focus
on keeping that code on drupal.org
secure there are some guidelines around
that for but pretty much if if you have
if you see a green shield for for Drupal
or a model or a theme or a distribution
you know it is covered by the security
team and that recommendation anything
that gets on the front for Drupal Drupal
at work and the only time that you want
to them
is that if when you go to the pad at
work they point you to some other place
to download something in which case you
need to you know do some checking but
that's the general recommendation so
we're going to get started with you know
the CMS the content part of things any
question okay so I'm going to be making
it stop after every section and if you
raise your hand understand that if there
are questions otherwise I will just
continue so the Drupal has been around
for a long time and sometimes it uses
some terminology that is not very
alienated or self-explanatory
one of those is the word know so what is
a note I know it is a piece of
information that can tell a story by
itself and then now serves like the
basic element that's going to be used to
store information and Drupal so let's
say that we have this card
what can we tell
this card it is a red card it has two
doors four wheels and you know I can say
that make that one of the year so many
other properties so the note is going to
be this piece of things where I'm going
to store this information it's going to
be a container this is an example of a
note in RuPaul and there are some
properties that are common to every note
in the in in a Drupal website for
example every note has a title that's
mandatory
every note also has an author and a
publication date which includes like
date and time every note has a URL so
you know it has to be in EPA identified
in some way by the system and that is
called node ID for an ID for sure know
for sure
thanks I know where the node IDs a
number but it starts with one the finish
time that you create a node and it
increments by 1 every time you create a
new node so 1 2 3 and so on but let's
say that I wrote a very interesting
article a nice I tell you I'll go to my
website I think that comic slash know it
slash 1582 right by the time that you
get home you might have already forgot
that so in addition to having these node
IDs to be able to reach and note on that
other page we also have something that
is called URL aliens so just like more
like human readable way to call to call
a note like in this case it is the comma
slash blog it's large artery in this
resolves that may be easier to know if
you understand like the context of what
I'm talking about and there are many
other properties like if I notice either
published or not published for example
but you know this is kind of the
baseline of of what I know I notice
about
okay so we've note we are able to store
information about cars again like gear
make modern type of fuel number of doors
number of windows and so on we can use
an O to describe a car fully but in the
in real life different objects have
different properties for example you
know we have cars but but other things
have wheels we can have motorcycles
bicycles three cycles in addition to
cars and in real life these things have
you know very different properties for
example as far as I know we're psychos
cannot be worse for a motorcycle it
doesn't make sense to say how many doors
or how many windows they have so when we
have in real life some concepts that are
very different from one another yes they
are all going to be stored in nose but
we need a way to differentiate and a way
to differentiate from for example a
motorcycle and a car in Drupal it's good
content so this is like a second layer
of abstraction coated that is you know
this abstraction that will allow you to
give notes that share similar
characteristics or the stripes the same
idea and by this you know this can be
physical things like cars or motorcycles
or you know if three cycles 1o seconds
or things like that but it can also be
non touchable things like events so this
event had a day had a registration price
it has a location for the event and you
know so many other properties so you can
use a content like to describe an event
and then you know we store that
information in Drupal you can also have
for example article the article list can
be also a prototype where you have you
know the title tagline an image and
Quantic cotton itself and you know many
many examples and we're going to see
others along the way but other than you
know making these grouping of nodes
there are way that content network they
also allowed to ease the management of
that of the information on the website
let's say that I am an online dealer
when I sell motorcycles and cars I can
have in my website are a specific page
that lists all the nodes in my website
that a lot of the current content type
so by that I already like sort out
everything else like motorcycles I can
have another place where I only store
information about motorcycles so you
know show all the nodes in the website
that are this motorcycle container and
at this point you might be confusing up
so you're talking about nodes and
content types what's the relationship
between them and this is very important
to understand so every node is someone a
specific content that you cannot have
one node that we don't do for example a
car and a motorcycle that's not possible
directly around that is possible and
actually expected for example you can
have a car content type that you're
going to use a sub template to a stone
information aboutdifferent currently 10
have a quantitative article that will
save as a template to store articles on
the website and you will have many of
those so one node belong to the water
specific content type one content that
can have many notes associated with them
and in this image the numbers in those
blue circles represent the variety and
if you see throughout the image those
numbers are not repeated because no
deities cannot cannot be repeated they
are unique and in fact if you delete one
for example if I D
no number 2.21 we reuse like it will
always keep incrementing and things
delete it won't be reused so this is
like really important to understand like
these two concepts are like the basic
for everything else in question okay so
we we you know we have this online
dealer and we are not able to separate
all the you know cars from all the
motorcycles in this in this page I only
want to show cars but most of the time
when like someone is looking for a car
or in general just searching for
something they look for a specific
attribute like in the case of a car I'm
a one you know a toyota yaris 2010 red
for example so I am looking for specific
things just having these you know long
is all the cars in my website is not
enough so I need to be able to do a
specific search to search on a specific
attributes so the way that we accomplish
this in Drupal is using fields and
fields are awesome I used to have a very
long boring and the scripture is like
here which I'm going to show you later
but before showing that I want to
explain the awesomeness of fields so
anyone here has ever use either Facebook
or Twitter some people so let's let's
focus on Facebook for the moment when
you are going to write a fake facebook
post you are basically free to do papers
for everyone you can write a poem you
can you know just go ranting about
things you can think people you can
imagine videos you can you know please
type anything like random words in the
numbers basically if you're free to do
whatever you want and with tweets it's
about the same you have a lot of freedom
in the way that you enter the content
but this model
some work when you try to look for
something and you try to search for
something let's imagine that you know
this dealer business also has a Facebook
page and you know they are very
successful every day a new card comes in
an old car drops out of the inventory so
you know people will interact you know
this is the photo this is a red-letter
Yaris 2010 but every day that's going to
be you know going more postman post and
even though both Facebook and Twitter
have search functionality if you have
ever use it in for this use case you
will know that it gets really hard
easily because of many reasons one of
these reasons is that free text is not
easily searchable so people can write
whatever they want in whatever it's
tight and format day one and that does
not necessarily match the user criteria
like they might you know just think
differently or not use abbreviations or
things like that so the free text is
hard to search also when you have free
text and that freedom you are also able
to enter in consistent data like you
know when this event happened it
happened on of airplane 19 2017 or you
use Nov with the dog on a radiation or
you use like numbers instead of letters
to describe a month or for the year you
put two digits instead of four or you
use a - instead of five - yeah - instead
of a slash for that separator or if you
are like in Nicaragua we put a day
before the month so each person entering
the content might do it in a different
way and good luck trying to you know use
Facebook or Twitter to understand what
you enter if the person who were in
early folks at you know the post for the
tweet use something else it's not very
hard it's not very easy excision
also you can enter inconsistent data
putting Banita
and this is going to make people cry so
how are you - ten years old that make
any sense
when is your birthday February 31st that
doesn't exist
where's the prize so I use the dollar
sign but the euro currency once your
email no not a real image your miss
cannot sign when it's the phone hi
beautiful happy face that's not even a
number so again because you are free to
do whatever you want you can do those
things very easily and you know
consequences I guess so oh I'm going to
make you poor try free tags
inconsistent data and invalid dinner so
how do we make people happy because we
want you know to put happy so people can
find the stuffers we do that using
fields so fields are able to enforce
validation criteria and there are many
different type of fields we're going to
cover some of them today for example on
the right we have an overview so for an
offer field let's say that this is the
price of an event like this one I got to
point and we can say that the event
might be free but I'm not paying someone
to come to my event at least not today
so the minimum value for the price which
is going to be zero from zero I don't
define a maximum because if someone is
willing to pay a million dollars to come
I will greatly accept it we are in the
stage right now so there is no need to
confuse people or to ask people about
currencies we use dollars all over the
place so I make it very clear and
specific dollar sign us the critical and
anyone both entering the content and
then consuming the content will
understand that I am talking about
dollars are not Europe or corridors
getting in trouble so and in this case I
can make this field required so I cannot
be
then without a specific I specify not a
price on the on the other picture we
have an image field so for an image
field I have different criteria to
validate for example what are the allow
file extension like PNG jpg gif and so
on for example if either one people
uploading animated gif of cards on the
website that this will give from that
list and Drupal will validate that those
things cannot be uploaded I can also
define like minimum or maximum
resolutions I can also define maximum in
our file size and other things not one
important for accessibility reasons I'm
a little bit for SEO as well is the alt
attribute so sometimes when an image
cannot be displayed for some reason
maybe it's not available anymore or
there are a lot of images and they are
not loading quickly so there is
something called alternative text that's
going to be used while the image is
loading and with with a field you can
actually enforce that to be entered and
that is not only life of course it is
supposed to be meaningful because for
example someone using a speech reader on
their browser they won't be able to want
to see that picture understand the
picture but if you put some meaningful
text they will at least have a sense of
what you're trying to convey with the
image so you can enforce all of these
things with fields and again there are
different type of fields and using that
makes people happy so what is the recipe
for happiness you use one field for each
piece of information that you want to
restore
let's go back to that example of cars
you are going to use one field for the
year one for the main one for the model
one for the type of fuel one for that
type
for the number of windows from the
number of doors and so on anything that
you want to store you're going to use a
specific field and after doing that you
need to also decide what type of field
is the one that you want to use because
as I mentioned before each of them will
provide you with different validation
criteria in blue but we have integers
decimals images phones in and URLs and
all of these come with out of the box
validation so if you want to enter you
know an email that is missing that side
for example Drupal will stop you right
away he won't allow you to save the node
because you're missing something and so
this with this ability now fields are
also are also also in the way that you
can ask for information and display the
information after afterwards so let's
think about you know an event like this
one I'd look at them it has a location
how many different ways exist to
represent a location you know a point on
earth at least for it so you can
actually put like the name like link
home Student Center you can also put
like that lucky to technology took on
the globe you can display a map and ask
the user to click on the map to identify
the location but also like in the same
way that we have PDF for Word document
some four months document format uses
specifically to restore geographical
information when if those is called KML
so in theory I could provide a field
where they upload a file like instead of
opening an image they upload a KML file
that stores geological information and
then Drupal can read that information to
others to understand where these events
happened so one field can provide more
than one way to collect the information
in practical terms it doesn't exist in
Drupal our field to if to collect
geographical information that allows for
this for but combining different
contributed mornings you can accomplish
this functionality if you wanted but
pointing to remember is that you have a
field and the field exposes in many ways
to collect the information and once the
information is collected it is storing
this in in a standard way so you can
present it any way you want as well so
maybe you asked for latitude and
longitude when requesting well when
displaying to the user
you show a map with a winner marker so
the way that the information comes in
it's not necessarily the same that it
comes out you can change that as the
field allows you to do where each field
will define how you can enter and how
you can display information but more
importantly you can aggregate the
information so maybe you have a lot of
events you have a lot of events and you
want to show a map of all the events
happening at the same time so you can do
this again with fields and this is a
real website for Drew Pakal so another
you know test that Drupal is worldwide
these are events happening all over the
place all the time so one thing
interesting about this website is that
it combines information from different
fields to to show them up for example
there must be a
I feel that explore the location which
is where the pointer is going to be
played on but you also see that it is
color coded so there is an honor field
that defines what type of event disease
and we're combining doctor
things to show a marker that has a
specific color on the map and other
things that can be done fields can be
shown or hidden individually so you can
have for example an event that has ten
different fields but you were you didn't
notice it but someone came a few minutes
ago to tell how many people attended
this session so this information is
really only for the camera organizers
but probably not relevant to us
attendees so you can have a field in
that session a content type that say how
many people attended but that's going to
be hidden for the general public and
only that camera organizers are going to
be able to see it so you can have you
know that contact ID in your template to
collect information you can have a lot
of things but you're not required to
show all of them or you can decide for
these people I show some elements for
this other group of people I show
different elements so it is very
flexible and you are able to do this on
a field by field basis yeah some general
examples single line text field
multi-line text field those were
different in profile we also have
numbers so when it says establish in
because I is supposed to store right
here and here are only numbers and not
only numbers only integers you don't say
in two thousand six point five so but
when we configure is field in the
configuration we were able to define a
prefix so that every time someone enters
the content oh this is about when this
organization established and when people
see that content oh this is what you
know when this is when you see someone I
started so it is very clear and because
it is a number field you have all the
validation that
we also have URLs taxonomy is no
birthdates time someone there are likely
trying like doses of pills available and
all of them in court and many more in
the contributed space so this is the
slide and fields allow you to structure
the information of your website
they said discrete pieces of information
like the year that make the model and so
on and once you have this information in
fields you can display them in different
formats you can filter what elements you
want to show or not you can sort that
information in any way that you might
want you can take for example I want to
show all the cars sorted by the year
like the newest configuration for
example so so far we have only talked
about the center the middle part we have
known where this knob is one specific
content type let's say an article it has
a pedal a title and an image and the
description but what about the rest what
a lot of all the squares around out the
middle in this image everything else is
a block so what is a block in Drupal a
blog is a container of extra information
to display I know the main content of
the page
you know the main page content is you
know but everything around it those are
gloves and a little bit of a segue
before talking one of our blocks is that
they are always placed in the theme
region so if you install Drupal out of
the box it comes with these blue
appearance and that is that a core team
called party-party defines many
different regions each of them is
represented by a yellow box in that in
the screenshot so whatever you see
what that means you can place blocks in
that place you can place content there
remember that the English the one
responsible for controlling how the
different layout is going to behave so
for example mark has a region called
featured table that has a great
background if we start but out of the
box we never see that gray stripe why
because out of the box
Drupal doesn't flake place any block in
that region so Bartok decides to
collapse it because I've seen a region
means to hide so if there is no content
there we just had and the same happens
for the left and right sidebar if there
is no content in those regions Bartok is
going to expand thus that to the content
region which is the middle one to use
you know all the space available at the
bottom where we have the black
background on you see four boxes one
next to each other
the those are fully regions and in this
case but it doesn't collapse them so if
you put a block in the footer region if
we not expand an automatically if the
other ones are anything so remember the
way that the theme is going to behave
over the site's way to behave in terms
of layout that is going to be determined
by the theme now let's talk more about
blocks lot can be either I started or
dynamic so this refers to that content
or the information that they are going
to display let's say you know we have a
copyright 2018 at the web page there is
something that you want to change once a
year so you know general sense there is
a static content so something is going
to be the same or almost the same all
the time then there is a static load you
can also have dynamic blocks these are
things that change regularly like the
latest blog post if you publish
something every day
going to be changing every day if you
publish something every hour that's
going to be changing every hour and a
lot of these things can be automated so
that you don't have to do anything
manually other than creating the content
you create the content and automatically
the blog gets updated with the latest
information blogs can also enforce
miscibility rules so you can say this
blog only makes sense in the context of
an article for example if you have more
articles written by the same author if
you go see an event it doesn't make
sense to have more articles written by
the same event so you can define
disability locks based on content types
you can also do it based on language
maybe this only makes sense in the
Spanish version of the website you can
also do it by pages like this only makes
sense in the front page in the contact
page in the marketing section of the
website you can define rules based on
the on the path or the section of the
website that you are visiting and you
can also do it by roles and we're going
to cover those later blogs can also be
aware of the environment so let's say
more articles written by the same author
when blooper is going to display this
blog is going to see okay I am going to
show this for node 5 node 5 was written
by Mauricio so let's look for more notes
written by Mauricio and show them me in
this blog so this is also possible and
similar to content types
blogs can also have fields and this is
new in Drupal a Super seven you have to
use a model called green ve am to have
blocks with fields the Drupal a this
comes out of the box and you know one
useless can be you have this a special
offer block that has four fields a title
a description a new Mexican an
expiration date and you know lots of
this type are going to be shown on the
sidebar always until the expiration date
comes so you can define someone clay
using gloves and everything that I
mention about feels before I applied for
blogs and applied for other things as
well another very important concept for
Drupal is views so we can literally
spend the whole time talking about deals
but we don't have that time for that so
I'm going to show you two slides and try
to explain use as much as safe as
possible so in group and give us a way
to release information so tuple is a
listing of information on the website
that can be a list of knowledge and it's
of users comments content that and
fields anytime that you want to make a
list of something chances are high that
you might want to insert before that and
what is the job of a view I'm just going
to ask on all the content of your
website and you can use it to also to
filter what things you want to show like
I want to show all the cards that I read
what our Toyota the archives you can use
views to define the search criteria and
once you find all the notes that match
your criteria you can define different
ways to present the information so you
can have an HTML table or you can create
an RSS feed for that or you can download
a PDF document with that listing or a
CSV or Excel spreadsheet or you know as
we saw before you can have interactive
maps images light shows and many other
things so that news views collects notes
or other type of information on the
website and display them in many
different forums we have an example here
in this case we have a view with for 4
with 5 columns a couple of things to to
know I am showing field information here
and for example the first column has the
played the year the
and the model remember the
recommendation you need to use one field
for each of this stuff but we and then
it's that case like under the hood you
have a Content plate with fields
individually for each of those elements
but when you display the view you can
actually modify how it's going to be
presented and instead of each of those
using one coordinate you just can put
them together but you also have images
and one interesting thing about images
is that Drupal has a mechanism to
pre-process them automatically let's in
mind that you know we are all work for
this car dealer and we take pictures
with our phones each phone is different
you know different resolution different
quality and manual properties but when
displaying on the website we want to try
to be as consistent as possible so in
Troopa we can have a way to say okay no
matter the size of the image make it a
smaller no merit aspect ratio naked 4 by
for greatest scales or other image
aspects so no you just define I want to
apply these effects to the image and the
probability neuromarketing another thing
that is possible with you you can define
like a default way to present the
information but you can also allow the
user to modify that criteria to their
needs so above the table and below the
text access cards we see some like text
boxes those are called views exposed
filters and they allow you to you know
the user to say okay I want all the cars
representation is going to be updated to
respect that I want to show only Cleopas
I want to
on the Yaris they want to show by year
descending for example or ascending like
the newest fear sort out the fears some
of this is possible because we use
fields so things are going to allow me
to want it to to expose certain search
or or filtering criteria or certain
criteria for the user to you know to try
on the top left we also have a small car
only one and there is also a view in the
feeling just a moment ago I said that
views are used to show least something
and when I think of the word listen it
is two or more elements but in this case
I have a view of only one element and in
some cases cases that make sense if you
read the text it says random car so you
can define a view that shows one card
only but randomly every time that you
refresh the page a new car will appear
another use case for this kind of a
scenario when you have a listing of only
one element you know it can be the most
popular article the most committed
article the most visited page on the
website every time that you have the
most of something or the best or you
know things like that you can also have
a view that shows that way the
top-ranked and just to clarify bills can
be used to show like the main content of
the website like that table but views
can also be used to create blocks so in
the top left that was a lot created
using a view now you might ask why so
much clear I mean I thought that people
was hard you're not confusing me with
all these concepts it is really
important to understand all these pieces
because
yes so we go if you're a front-end
developer and you want to print one line
of text you will have like 10 level of
deeps to accomplish that if you are a
developer you will have pretty complex
data structures that are like one
instead of the other to accomplish what
you need but what is relevant to us
Drupal nest concepts so all the things
that we have talked today note content
type regions have blocks views all of
the all of them interact together to
fill a page so let's imagine we have
this piece of information more articles
written by the same author to create
that we were at least interacted with
five different concepts on the almost
layer we have the theme region so this
is going to determine where this
information is going to be displayed
let's say the theme region is the right
sidebar because this is complementary
stuff accounting like more articles
written by the same person this is a
blogging itself so I have that blog more
articles by the same person because this
is a listing the listing was was created
using a view that view was configured to
show articles those articles are of one
a faceted content type but only the hood
those are notes in and let's say that I
want to show like the title and tagline
and the date of when the article was
published those are individual fields on
the known so for one small piece of
information I am already interacted with
five different concepts and each of
those is going to behave in a different
way it's going to be configured in a
different way if you want to modify this
you have to go to different places so
it's very very important if you going to
remember
of the session remember this image when
assembling a Drupal page under of
concepts are going to interact
simultaneously for example I might want
to show you know all the users of my
website I can replace the blue box from
node and say show a list of users for
example what I want to show at is I
started blog I would only have a future
and a blog and I don't have all our
inner layers the point being that for
everything that you shall wanna do per
page there will be many things interact
at the same time and with this now we
have seen like the mail that the mill
can be either unknown or it can be a
deal and all the things are round
those are blogs that are built in
different ways there are many ways to
build laws so I mean this is very
important any question with that so as I
said before for each of those things you
will have different section of the
website of the local administration our
interface when you are going to modify
how they behave so it is super important
to understand what they are to know what
they are so users let's talk about users
a user is a visitor to my website anyone
that goes to my website is a user for a
Drupal
again look I can handle multiple users
as I said before show an example all the
users have a user name have an email
they optionally can have an image and
you can attach fields to use of like
again
because it the right display about
fields for content types
for blocks users can also have fields
so in this case I I have a bio field
similar to note user also have a unique
know medica identifier which is called
user ID or UID for sure and you know
domain is slash user slash one again
that's kind of high to the number
numbers so you can define but IDs s for
users as well so in this case and I
think that promise much people is slash
militia unit the users can also have
language settings so if they speak more
than one language and your website is
available in more than one language they
can decide in which language to use and
if the language that they choose is not
available you can define like a foreign
language the English for example user
can also define time zones and this is
like even in the States
like you know you have at least four
time zones in the continental you know
part of the United States this let's
assume we were streaming it was supposed
to start in every am you know central
time but it is noon Eastern Time
it is nine Pacific time I guess it's
cold so when when you have users they
can define the time zone and if you have
events the dew point will do out of my
types of compression to adapt to each a
specific user for example and let's
let's assume that I want to give you
know Mauricio the permission to add
content to my website how do I do that
how going - clinicians so it's a
combination of two words roles and
permissions our role is a collection of
permissions are we going to see what
permissions are in a moment but roles
are are used to assign privilege to a
group of users they came up
you're higher in organization out of the
box
duper comes with three rows one is the
I'm gonna question you should like if we
go to you know New York Times to come to
read that content only that's like an
anonymous user we don't have an account
like the Facebook or Twitter we just go
to consumer if you have an account that
username and password you become an
authenticated user so with that you can
do things like posting comments for
example but then we also have done
illustrators where I who are able to
like do pretty much anything they want
on the website but it is really hard for
our website to you know be all or
nothing
we also have like middle level
permissions so you can't read your own
permissions like editor so the editor
can modify or not create or the
department chief you know what I
described before you can have put in
addition to whatever one of the books
you can have more roles with a specific
set of permissions and what is the
permission by the way question now can
you get great honors or is you know
having like a end user and be able to
control what content they see based on
roles yes which one you see whether you
can get them for example if you have
another musician you can determine how
much button day they can sue me once
they log in and they can yeah they have
your login and they login I mean they're
that's there they are you know coming to
the website a consumer of the website
bias one control exactly what content
they see based on their login yes so the
way that control content once a user has
to log in is actually through roles so
you create
and you know as I said before they're
rolling alkylation of permissions so for
that row row a you define the things
that they can do like post images post
comments and things like that and
apparition is actually very simple it's
like a yes or no question my permission
is this user based on their role is able
to perform a specific action on the
website and there are literally like
those things if not hundreds of
permissions in Drupal it's really Daniel
so you can say you can create cotton of
that article you can relate variations
you can post comments you can use the
Segway contact form you can view the
price field with with a discount in the
event content type and things like that
you can get like really really granular
and it's a combination of both roles and
permissions and just type in together
this is how the drupal permission system
works if you want to assign Mauricio the
possibility to see that is counted price
for an event how do you do it you don't
have signed permissions directly to
users you do it through roads remember
that a row speculation of users of
permissions and then for that user you
can assign one or more roles and the
user is going to be able to do the sum
of all the roles that they have assigned
a user can have two three roles assigned
and they were going to be able to do you
know there's some of all of those things
and that's in general how how it works
just answer the question and like the
other way is true as well like if you
want to deny access to something you
simply remove the permission of of the
role and then they
have access to them okay uh Northey our
names and maybe this very simple concept
again they are a collection of links use
to navigate the website menus can be
hierarchical so we have two examples
here at the top is like a one level
video it's only like five links and
that's how many the Drupal but you can
have hierarchies like Superman is on
someone's and with modules you can get
really crazy and I don't recommend it to
be honest but just to see the
possibilities down below query using a
model called TB mega menu and with that
you can embed YouTube videos and other
information unknown your name so if you
need to do it for some reason there are
possibilities to do it and the last
concept I'm going to cover today are
taxonomies and to be honest this word
Academy when I first heard it but it's
super simple
taxonomy is just used to classify the
content of your website and by
classification it's like also doing the
connection between them and you only
need to understand two things
vocabularies and trends so a vocabulary
is just a name the steps as a container
so I have double card whatever and
called fruits and it's going to be a
container for terms in this case I have
a term for apple strawberry orange and
grapes so the vocabulary is the mean
container and what terms are the
individual elements inside the
vocabulary and as minier things taxonomy
terms can also have fields so in this
case I associated an image field so that
in addition to displaying that you know
the fruit name I also show an image of
the fruit itself vocabularies can also
be hierarchical so you know living
organism categorization we have kingdom
phylum class you know humans are
supposed to be animal
in the qaddafi loom in the mamada class
on way like 17 level deeps we are almost
uh consultants or something like that so
you can have hierarchical structures for
tax on this as well some real life
example categorization all them all the
next thing that you need although not so
useful real-life examples you can have
when you for example we display an
article you can have other articles
tagged with one specific turn and you
start as like related content for
example and there are also models that
extend this taxonomy system so you can
show for example access controls based
on taxonomy so there is a model called
word play access that ties the
permission system with the taxonomy
system if you need it in Drupal 7 there
was a model location personalize that
for a specific ten you are able to
associate the Oracle information so for
example if we talk something like
Chicago what ye Boston and so on then
just by tagging that you can use
geological information to display
pointers on among the module is no
longer needed in Drupal 8 because the
Drupal 8 taxonomy can have things out of
the box it wasn't a case into for seven
but you can accomplish similar
functionality finally super important to
understand the concept because you will
interact with all of them when reading a
page and in fact like for one page you
can enter 200 of all these things at the
same time an FAQ that to be honest no
one else and you get it myself and it is
like there is a sailing into folder
every time that you have poor God kills
aquiline please think of the kidney and
the word heart in this case again it is
overloaded it is not what we hear in the
news like some hacker
came to my website and
you know asked me for a ransom in Drupal
but we still had we mean modifying the
code that we get from the father or if
you change one line one semicolon
anything that you change that is
consider having the Drupal and that's
bad because you know you can modify how
the system works in very weird ways most
importantly you can modify for example
of how the access control system works
and you can be granting access to people
that should have it so please do not
modify or hack or you know what you're
doing because there are some benefits
for that but in general they do it so if
you're not supposed to modify core but
you have a specific need
where are you supposed to do you use die
yeah I remember that Drupal is a
framework you use the API and to learn
more about that you can check out this
session
it's likes are available if you want to
learn what about theming and how the
Drupal you know presentation later works
you can see that session that I also
presented and I highly highly recommend
to get involved with the community
because you will get your question
answered by way way faster thank you
very much I would really like to you
know to have your kid so I know that
we're over ten already so there are no
questions otherwise I would be around
beautiful campus