SlideShare a Scribd company logo
Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
ABrighterWeb.com
The Meetup
The Facebook Group
Tutorials
Catch our weekly Podcast
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Feb 21: North Fulton WordPress Meetup:
When Shortcodes Don’t Work (Micah Wood)
Feb 1: A Brighter Web: Developers:
Customizing the WordPress Admin
Feb 13: Marietta WordPress Meetup:
Overcoming Your Fear of Sales (April Wier)
Feb 15: A Brighter Web: All Users:
Fresh ideas to get your SEO improved and rank higher in Google
Upcoming Meetups
2018.atlanta.wordcamp.org
Thank You to Our Sponsor
Gutenberg
The Gutenberg Whys
For block’s sake!
Atlanta WordPress Meetup - 25 Jan 2018
Evan Mullins - https://circlecube.com/does-wordpress
Reasons Gutenberg is coming:
● Better publishing.
● Modern experience.
● Stay Relevant.
● Compete better with other publishing experiences:
Wix, squarespace & medium.
● Block level editing.
● Blocks for all the things: first content, then sidebars, widgets
& shortcodes, etc.
● It’s modular!
A standard
WordPress Post
template
The Page Mindset
TEMPLATE
BLOAT
Design Web Pages or Templates
Have you ever done an estimate for a site with X unique templates?
Been excited about the flexibility of building unique templates as needed?
Build 13 different templates, then have to make each of 13 templates responsive?
Scope creep?
Realize that templates are a bit restrictive and end up with files like
template-7b_3.php or template-no-sidebar-secondary-sidebar.php
TOO
HEAVY
Work Smarter
The Paradigm
The Paradigm Shift
Current
WordPress
Editor
Project Gutenberg
Andy Clarke, Walls Come Tumbling Down 2009
Stephen Hay, Responsive Design Workflow (2012)
Blocks, not pages
The traditional way to handle complexity
in programming is to break large complex
things into smaller well-formed
“modules”. Focusing on creating healthy
front-end modules instead of complete
pages can help break complex page
layouts into reusable solutions. This
proved to be true working on the
Microsoft.com homepage.
Dave Rupert, Responsive Deliverables (2013)
Christopher Butler
Newfangled Web
The Way You Design Content is About to Change (2014)
As many of us move away from designing pages toward
designing systems, one concept keeps cropping up:
modularity. We often hear about the benefits of a modular
approach; modules are scalable, replaceable, reusable, easy
to test, quick to put together—
“They’re just like LEGO!”
Alla Kholmatova - The Language of Modular Design (2015)
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Brad Frost - Atomic Design (2013)
How Block Content Works
Rather than one open content area — in which you could put
text and images using a WYSIWYG — or a template that has
predetermined text and media “buckets,” modular content allows
you to add any content — text or media — in blocks. It supports
building pages ad-hoc, adding text and media as you need it in a
variety of combinations. After you’ve stacked a bunch of these
content blocks, you can re-sort them any way you like. It’s
basically content Legos.
Charlotte Jackson, From Pages to Patterns (2015)
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Going from designs to modules.
Journey of a Module
● https://wordpress.org/gutenberg/
● https://matiasventura.com/post/gutenberg-or-the-ship-of-theseus/
● https://ma.tt/2017/08/we-called-it-gutenberg-for-a-reason/
● https://wordpress.org/gutenberg/handbook/language/
● https://github.com/WordPress/gutenberg
Gutenberg Resources
Modular Resources
● https://www.newfangled.com/web-design-has-changed-have-you/
● http://web.archive.org/web/20140717024257/http://www.newfangled.com/the_way_you_design_web_content_is_about_to_change
● http://stuffandnonsense.co.uk/blog/about/walls_come_tumbling_down_presentation_slides_and_transcript/
● http://bradfrost.com/blog/mobile/bdconf-stephen-hay-presents-responsive-design-workflow/
● https://alistapart.com/article/from-pages-to-patterns-an-exercise-for-everyone
● https://alistapart.com/article/language-of-modular-design
● http://daverupert.com/2013/04/responsive-deliverables/
● http://atomicdesign.bradfrost.com/
The basics of using
Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
It’s changing quickly
Replace publish dropdown menu with a sidebar panel.
Expand latest post blocks with more querying options — order by
and category.
Allow dragging multiple images to create a gallery.
Improve markdown pasting (allows lists to be interpreted).
Allow pasting copied images directly.
Pasting within lists and headings.
Improve handling of inline spans.
Allow copying a single block.
Make sure inline pasting mechanism does not take place if pasting
shortcodes.
Preserve alignment classes during raw transformations (like pasting
an old WordPress post).
Support shortcode synonyms.
Allow continued writing when pressing down arrow at the end of a
post.
Mobile design: move block controls to the bottom of a block.
Allow deleting reusable blocks globally.
Display description and type on the sidebar. (Also replace
BlockDescription component with a property.)
New table of contents and document counts design.
Add button to copy the full document quickly.
Expand inserter to three columns and a wider container.
Allow using down-arrow keys directly to navigate when searching a
block in the inserter.
Deselect images in Gallery block when losing focus.
Include post title in document outline feature.
Rework display of notices and address various issues with overlaps.
Added keyboard shortcut to toggle editor mode. Also displays the
relevant keyboard combination next to the menu item.
Improve deleting empty paragraphs when backspacing into a block
that has no merge function (example, deleting a paragraph after an
image).
Improve the way scroll-position is updated when moving a block.
Show block transformations in ellipsis menu.
Add drag and drop support for cover image.
Allow transforming operations between Heading and Cover Image
blocks.
Add focus outline for blocks that don’t have focusable fields.
Allow both navigation orientations in NavigableContainer.
Improve the behavior of focusing embed blocks.
Unify UI of audio and video blocks.
Show message on the inserter when no blocks are found.
Show message when no saved blocks are available.
Do not show the publish panel when updating / scheduling /
submitting a post.
Update quote style in front-end.
Convert text columns to a div using grid layout.
Update button block CSS and add class to link.
Allow text in Button block to wrap.
Prevent useOnce blocks from being inserted using the convenient
blocks shortcut menu.
Show correct symbol (⌘ or Ctrl) depending on system context.
Rename “insert” to “add” in the UI.
Clear block selection when opening sibling or bottom inserter.
Always show the insertion point when the inserter is opened.
Increase padding on “more options” block toggle.
Rename “Classic Text” to “Classic”.
Improve display of dotted outline around reusable
blocks.
Updated messages around reusable blocks
interactions.
Align both the quote and the citation in the visual
editor.
Exit edit mode when unfocusing a reusable block.
Set floated image width (when unresized) in % value.
Add withState higher-order component.
Initial introduction of wp.data module.
Restrict the state access to the module registering
the reducer only.
Refactor PostSchedule to make Calendar and Clock
available as reusable components.
Allow overwriting colors (defaults and theme
provided) when consuming ColorPalette component.
Switch orientation of popover component only if there
is more space for the new position.
New ImagePlaceholder reusable component that
handles upload buttons and draggable areas for the
block author.
Add speak message when a category is added.
Announce notices to assertive technologies with
speak.
Add aria-labels to Code and HTML blocks.
Warn if multiple h1 headings are being used.
Add speak message and make “block settings”
button label dynamic.
Make excerpt functionality more accessible.
Add various headings around editor areas for
screen-readers.
Improve accessibility of menu items in the main
ellipsis menu.
Add missing tooltips to icon buttons.
Render toolbar always by the block on mobile.
Improve performance of responsive calculations
using matchMedia.
Avoid shifts around toolbar and scrolling issues on
mobile.
Improve how the fixed-to-block toolbar looks on
mobile. Change how the fixed position toolbars
behave, making them sticky.
Prevent Mobile Safari from zooming the entire page
when you open the inserter.
Initial explorations to migrate to server-registered
blocks as part of raising awareness of available
blocks.
Move supportHTML property into the general
“support” object.
Replace getLatestPosts usage with withAPIData
HOC.
Convert all filters for components to behave like
HOCs (withFilters).
Replace flowRight usage with compose for HOCs.
Apply filters without function wrappers.
Display a hint that files need to be built.
Add WordPress JSDoc ESLint configuration.
Update licenses in package.json & composer.json
to adhere to SPDX v3.0 specification.
Add tests to cover
REQUEST_POST_UPDATE_SUCCESS effect.
Add tests for color palette component.
Add tests for Editable.getSettings and
adaptFormatter.
Use newly published jest-console package in test
setup.
Update info about test fixtures generation.
Also style footer in quote blocks to ensure
backwards compatibility.
Add a PHPUnit Docker Container.
Fix wrong “return to editor” link when comparing
revisions.
Fix error when pressing enter from a heading
block.
Fix error with merging lists into paragraphs.
Fix revisions button target area.
Remove duplicated styles.
Fix z-index rebase issues.
Fix tag name warning ordering in validation.
Fix text encoding of titles in url-input.
Fix endless loop in reusable blocks code.
Fix edit button in Audio block using invalid
buttonProps attribute.
Fix block creation with falsey default attribute.
Fix radio control checked property.
Fix styling issues of blocks when they are used as
part of a reusable block.
Fix list wrapping issues.
Fix problem when converting shortcodes due to
sorting.
Fix issue with time-picker not working.
Fix hide advanced settings interaction in block
menu.
Fix issue with url input on images.
Fix style regression in textual placeholder on
cover image.
Fix return type hint in gutenberg_get_rest_link().
Fix bug when changing number of Latests Posts
rapidly was leading to some numbers being
defunct.
Fix isInputField check and add tests.
Fix unsetting block alignment flagging block as
invalid.
Fix CSS bleed from admin-specific gallery styles.
Fix image handlers at the top from being
unclickable.
Fix unexpected keyboard navigations behaviour
on some nodes.
Fix inserter position for floated blocks.
Fix bug on empty cover image placeholder used
on a saved block.
Fix errors when adding duplicate categories.
Fix broken custom color bubble in ColorPalette.
Improve Tags/Categories response size by limiting the
requested fields.
Limit requested fields in category feature of “latest posts”.
Request only required post fields in latest posts.
Replace getCategories usage with withAPIData
component.
Don’t show fields that are not used in media modal when
adding a featured image.
Polish inserter tabs so the focus style isn’t clipped.
Make inspector controls available when categories are
loading.
Improve overlay over meta-boxes during save operations.
Hide excerpts panel if not supported by the CPT.
Hide Taxonomies panel if no taxonomy is available for the
current CPT.
Hide several other panels when the CPT doesn’t support
them.
Use _.includes to find available taxonomies. Mitigates
non-schema-conforming taxonomy registrations.
Defer applying filters for component until it is about to be
mounted.
Prevent “Add New” dropdown from overriding other plugin
functionality.
Improve paragraph block description.
Refactor to simplify block toolbar rendering.
Add missing aligment classes to cover image.
Add parent page dropdown to page attributes panel.
Allow pressing ENTER to change Reusable Block name.
Disable HTML mode for reusable blocks.
Add support for the “advanced” meta-box location.
Make sure super admins can publish in any site of the
network.
Rename theme support for wide images to align-wide.
Move selectors and actions files to the store folder.
Center arrows of popovers relative to their parent.
Use fainter disabled state.
Add breakpoint grid to latest posts block and update color
of date.
Move logic for auto-generating the block class name to
BlockEdit.
Respect the “enter_title_here” hook.
Prevent meta-box hooks from running multiple times.
Don’t set font-family on pullquotes.
Remove superfluous parentheses from include statements.
Remove redundant CSS property updates.
Use “columns-x” class only for grid layout in latest posts.
Use flatMap for mapping toolbar controls for a small
performance gain.
Introduce jest matchers for console object.
Updated various npm packages; update Jest. Update
node-sass. Update WordPress packages.
Switch TinyMCE to unpkg.
Reorganize handbook docs navigation.
Added FAQ section for meta-boxes compatibility.
Added initial “templates” document.
Add documentation about dynamic blocks.
Updated “outreach” docs.
Improve block-controls document.
Theme layouts
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Will it break my site?
Plugin Compatibility
https://github.com/danielbachhuber/gutenberg-plugin-compatibility
Learn more about
Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Learning to code for
Gutenberg
Gutenberg Development
Resources
Official Gutenberg Block Examples
github.com/WordPress/gutenberg-examples
Official Gutenberg Block Examples
Official Gutenberg Block Examples
github.com/ahmadawais/gutenberg-boilerplate
The Gutenberg Boilerplate
Official Gutenberg Block Examples
wordpress.org/gutenberg/handbook
The Gutenberg Handbook
4 Block Types
Official Gutenberg Block ExamplesStatic Content Blocks
Official Gutenberg Block ExamplesDynamic Content Blocks
Official Gutenberg Block ExamplesEditable Content Blocks
github.com/thatplugincompany/gutenkit-spacer-block
Official Gutenberg Block ExamplesLayout Blocks
github.com/thatplugincompany/gutenkit-spacer-block
Basic Block Architecture
Block Functions
Edit Function Save Function
The structure of your block in the
context of the Gutenberg editor.
The structure of the saved block that
appears on the front-end.
Block Functions
Block Attributes
1. Provide structured data for blocks
2. Similar to shortcode attributes
Block Attributes
@richard_tabor
@GutenKit
richtabor.com
gutenkit.com
Gutenberg.courses
Meetup: The big change coming to WordPress in 2018 - Gutenberg
Looking ahead
How will Gutenberg affect my business?
staffing • selling • pricing
How will Gutenberg affect my current
sites and clients?
updates • training
Q & A
Questions about what we just
covered, or other problems?
Meetup: The big change coming to WordPress in 2018 - Gutenberg

More Related Content

PDF
Google Developer Days Brazil 2009 - Make your site social with Google Friend ...
Patrick Chanezon
 
ODP
XPages OneUIv2 Theme Deep Dive
WorkFlowStudios
 
KEY
Building a Mobile Drupal Site
Mark Jarrell
 
DOCX
Blogging with word press
Bex Lewis
 
PDF
Gutenberg (WidgiLabs Training Sessions)
Nuno Morgadinho
 
PDF
Be the Change: The Future of WordPress with WP Engine's Developer Relations Team
WP Engine
 
PDF
The Future of WordPress (WordCamp Montréal)
Jane Wells
 
PDF
David Vogelpohl — Using WordPress Blocks to Free Your Content Team from Your ...
Semrush
 
Google Developer Days Brazil 2009 - Make your site social with Google Friend ...
Patrick Chanezon
 
XPages OneUIv2 Theme Deep Dive
WorkFlowStudios
 
Building a Mobile Drupal Site
Mark Jarrell
 
Blogging with word press
Bex Lewis
 
Gutenberg (WidgiLabs Training Sessions)
Nuno Morgadinho
 
Be the Change: The Future of WordPress with WP Engine's Developer Relations Team
WP Engine
 
The Future of WordPress (WordCamp Montréal)
Jane Wells
 
David Vogelpohl — Using WordPress Blocks to Free Your Content Team from Your ...
Semrush
 

Similar to Meetup: The big change coming to WordPress in 2018 - Gutenberg (20)

PPTX
WordCamp Kent 2019 - WP 101: Guten.. What?
Joe Querin
 
PDF
WordPress State of the Word 2018
photomatt
 
PPTX
Faster WordPress Workflows
Eladio Jose Abquina
 
KEY
WordPress: a scalable solution for a magazine publishing business
Kate Kendall
 
PDF
Blockity McBlock Blocks, Oh My!
Evan Mullins
 
PDF
Is everything we used to do wrong?
Russ Weakley
 
PDF
jQuery Migration
Chris Pederick
 
ODP
Using WordPress for Rapid Prototyping
Drew Morris
 
KEY
WordPress - fixing sites with problems
Victoria Pickering
 
PDF
Content Architectures in WordPress 5
Jamie Schmid
 
PDF
WordPress Getting Started: WordPress block themes
Kyra Pieterse
 
PDF
Taking the plunge: Why you should use new technology on client projects
Tommy Ferry
 
PDF
Responsive Process HOW Interactive
Steve Fisher
 
KEY
Artdm 171 Week12 Templates
Gilbert Guerrero
 
PDF
mLearnCon 2014 - A responsive web solution for a complex online educational p...
Amy Som
 
PDF
Responsive Web Design Process
Steve Fisher
 
PDF
The Death of Lorem Ipsum and Pixel-Perfect Content (MinneWebCon version)
Dave Olsen
 
PPTX
Embracing Gutenberg | WordCamp Rochester 2018
Andy McIlwain
 
KEY
Object Oriented CSS
Nicole Sullivan
 
PDF
WordUp Pompey - 22nd Feb 2018 - Gutenberg
Herb Miller
 
WordCamp Kent 2019 - WP 101: Guten.. What?
Joe Querin
 
WordPress State of the Word 2018
photomatt
 
Faster WordPress Workflows
Eladio Jose Abquina
 
WordPress: a scalable solution for a magazine publishing business
Kate Kendall
 
Blockity McBlock Blocks, Oh My!
Evan Mullins
 
Is everything we used to do wrong?
Russ Weakley
 
jQuery Migration
Chris Pederick
 
Using WordPress for Rapid Prototyping
Drew Morris
 
WordPress - fixing sites with problems
Victoria Pickering
 
Content Architectures in WordPress 5
Jamie Schmid
 
WordPress Getting Started: WordPress block themes
Kyra Pieterse
 
Taking the plunge: Why you should use new technology on client projects
Tommy Ferry
 
Responsive Process HOW Interactive
Steve Fisher
 
Artdm 171 Week12 Templates
Gilbert Guerrero
 
mLearnCon 2014 - A responsive web solution for a complex online educational p...
Amy Som
 
Responsive Web Design Process
Steve Fisher
 
The Death of Lorem Ipsum and Pixel-Perfect Content (MinneWebCon version)
Dave Olsen
 
Embracing Gutenberg | WordCamp Rochester 2018
Andy McIlwain
 
Object Oriented CSS
Nicole Sullivan
 
WordUp Pompey - 22nd Feb 2018 - Gutenberg
Herb Miller
 
Ad

More from Mickey Mellen (20)

PDF
A Brighter Web: Finding new clients for your business
Mickey Mellen
 
PDF
Website Accessibility: Help your users, help your rankings
Mickey Mellen
 
PDF
Woodstock WordPress Meetup
Mickey Mellen
 
PDF
Scorecard metrics to watch
Mickey Mellen
 
PDF
Time is money, so use some of these tools to have more of both
Mickey Mellen
 
PDF
Planning For A Great 2020
Mickey Mellen
 
PDF
Tools and Plugins to Help Get More Done and Stay Sane
Mickey Mellen
 
PDF
Googles Latest Changes, WordCamp Atlanta 2019
Mickey Mellen
 
PDF
Grow your business by gaining, pursuing and closing leads the right way
Mickey Mellen
 
PDF
Meetup: Optimizing your Site for Better SEO, Better Speed, and More Conversions
Mickey Mellen
 
PDF
Google AdWords - An Inside Look At The World's Most Powerful Online Ad Platform
Mickey Mellen
 
PDF
GDPR: Keep Your Website Out of Legal Trouble
Mickey Mellen
 
PDF
A Brighter Web Meetup: Our Favorite WordPress Plugins and Tools
Mickey Mellen
 
PDF
Meetup: Fresh ideas to get your SEO improved and rank higher in Google
Mickey Mellen
 
PDF
Meetup: Tools to grow your business
Mickey Mellen
 
PDF
WordCamp Birmingham 2017 - Blogging strategies for 2018
Mickey Mellen
 
PDF
Drive Engagement with Sight and Sound
Mickey Mellen
 
PDF
Staying on Top of the Latest News and Trends
Mickey Mellen
 
PPTX
Meetup: Psychic SEO Keyword Research
Mickey Mellen
 
PDF
Keeping Google Happy
Mickey Mellen
 
A Brighter Web: Finding new clients for your business
Mickey Mellen
 
Website Accessibility: Help your users, help your rankings
Mickey Mellen
 
Woodstock WordPress Meetup
Mickey Mellen
 
Scorecard metrics to watch
Mickey Mellen
 
Time is money, so use some of these tools to have more of both
Mickey Mellen
 
Planning For A Great 2020
Mickey Mellen
 
Tools and Plugins to Help Get More Done and Stay Sane
Mickey Mellen
 
Googles Latest Changes, WordCamp Atlanta 2019
Mickey Mellen
 
Grow your business by gaining, pursuing and closing leads the right way
Mickey Mellen
 
Meetup: Optimizing your Site for Better SEO, Better Speed, and More Conversions
Mickey Mellen
 
Google AdWords - An Inside Look At The World's Most Powerful Online Ad Platform
Mickey Mellen
 
GDPR: Keep Your Website Out of Legal Trouble
Mickey Mellen
 
A Brighter Web Meetup: Our Favorite WordPress Plugins and Tools
Mickey Mellen
 
Meetup: Fresh ideas to get your SEO improved and rank higher in Google
Mickey Mellen
 
Meetup: Tools to grow your business
Mickey Mellen
 
WordCamp Birmingham 2017 - Blogging strategies for 2018
Mickey Mellen
 
Drive Engagement with Sight and Sound
Mickey Mellen
 
Staying on Top of the Latest News and Trends
Mickey Mellen
 
Meetup: Psychic SEO Keyword Research
Mickey Mellen
 
Keeping Google Happy
Mickey Mellen
 
Ad

Recently uploaded (20)

PDF
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
PPTX
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
PDF
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
PPTX
Basics and rules of probability with real-life uses
ravatkaran694
 
PDF
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
PPTX
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
PPTX
Cleaning Validation Ppt Pharmaceutical validation
Ms. Ashatai Patil
 
PPTX
Software Engineering BSC DS UNIT 1 .pptx
Dr. Pallawi Bulakh
 
PPTX
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
PDF
Health-The-Ultimate-Treasure (1).pdf/8th class science curiosity /samyans edu...
Sandeep Swamy
 
PPTX
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
PDF
Virat Kohli- the Pride of Indian cricket
kushpar147
 
DOCX
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
PPTX
A Smarter Way to Think About Choosing a College
Cyndy McDonald
 
PDF
Module 2: Public Health History [Tutorial Slides]
JonathanHallett4
 
PPTX
How to Manage Leads in Odoo 18 CRM - Odoo Slides
Celine George
 
DOCX
Unit 5: Speech-language and swallowing disorders
JELLA VISHNU DURGA PRASAD
 
PDF
RA 12028_ARAL_Orientation_Day-2-Sessions_v2.pdf
Seven De Los Reyes
 
PDF
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
Basics and rules of probability with real-life uses
ravatkaran694
 
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
Cleaning Validation Ppt Pharmaceutical validation
Ms. Ashatai Patil
 
Software Engineering BSC DS UNIT 1 .pptx
Dr. Pallawi Bulakh
 
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
Health-The-Ultimate-Treasure (1).pdf/8th class science curiosity /samyans edu...
Sandeep Swamy
 
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
Virat Kohli- the Pride of Indian cricket
kushpar147
 
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
A Smarter Way to Think About Choosing a College
Cyndy McDonald
 
Module 2: Public Health History [Tutorial Slides]
JonathanHallett4
 
How to Manage Leads in Odoo 18 CRM - Odoo Slides
Celine George
 
Unit 5: Speech-language and swallowing disorders
JELLA VISHNU DURGA PRASAD
 
RA 12028_ARAL_Orientation_Day-2-Sessions_v2.pdf
Seven De Los Reyes
 
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 

Meetup: The big change coming to WordPress in 2018 - Gutenberg

  • 9. Feb 21: North Fulton WordPress Meetup: When Shortcodes Don’t Work (Micah Wood) Feb 1: A Brighter Web: Developers: Customizing the WordPress Admin Feb 13: Marietta WordPress Meetup: Overcoming Your Fear of Sales (April Wier) Feb 15: A Brighter Web: All Users: Fresh ideas to get your SEO improved and rank higher in Google Upcoming Meetups
  • 11. Thank You to Our Sponsor
  • 13. The Gutenberg Whys For block’s sake! Atlanta WordPress Meetup - 25 Jan 2018 Evan Mullins - https://circlecube.com/does-wordpress
  • 14. Reasons Gutenberg is coming: ● Better publishing. ● Modern experience. ● Stay Relevant. ● Compete better with other publishing experiences: Wix, squarespace & medium. ● Block level editing. ● Blocks for all the things: first content, then sidebars, widgets & shortcodes, etc. ● It’s modular!
  • 18. Design Web Pages or Templates Have you ever done an estimate for a site with X unique templates? Been excited about the flexibility of building unique templates as needed? Build 13 different templates, then have to make each of 13 templates responsive? Scope creep? Realize that templates are a bit restrictive and end up with files like template-7b_3.php or template-no-sidebar-secondary-sidebar.php
  • 25. Andy Clarke, Walls Come Tumbling Down 2009
  • 26. Stephen Hay, Responsive Design Workflow (2012)
  • 27. Blocks, not pages The traditional way to handle complexity in programming is to break large complex things into smaller well-formed “modules”. Focusing on creating healthy front-end modules instead of complete pages can help break complex page layouts into reusable solutions. This proved to be true working on the Microsoft.com homepage. Dave Rupert, Responsive Deliverables (2013)
  • 28. Christopher Butler Newfangled Web The Way You Design Content is About to Change (2014)
  • 29. As many of us move away from designing pages toward designing systems, one concept keeps cropping up: modularity. We often hear about the benefits of a modular approach; modules are scalable, replaceable, reusable, easy to test, quick to put together— “They’re just like LEGO!” Alla Kholmatova - The Language of Modular Design (2015)
  • 31. Brad Frost - Atomic Design (2013)
  • 32. How Block Content Works Rather than one open content area — in which you could put text and images using a WYSIWYG — or a template that has predetermined text and media “buckets,” modular content allows you to add any content — text or media — in blocks. It supports building pages ad-hoc, adding text and media as you need it in a variety of combinations. After you’ve stacked a bunch of these content blocks, you can re-sort them any way you like. It’s basically content Legos. Charlotte Jackson, From Pages to Patterns (2015)
  • 34. Going from designs to modules. Journey of a Module
  • 35. ● https://wordpress.org/gutenberg/ ● https://matiasventura.com/post/gutenberg-or-the-ship-of-theseus/ ● https://ma.tt/2017/08/we-called-it-gutenberg-for-a-reason/ ● https://wordpress.org/gutenberg/handbook/language/ ● https://github.com/WordPress/gutenberg Gutenberg Resources Modular Resources ● https://www.newfangled.com/web-design-has-changed-have-you/ ● http://web.archive.org/web/20140717024257/http://www.newfangled.com/the_way_you_design_web_content_is_about_to_change ● http://stuffandnonsense.co.uk/blog/about/walls_come_tumbling_down_presentation_slides_and_transcript/ ● http://bradfrost.com/blog/mobile/bdconf-stephen-hay-presents-responsive-design-workflow/ ● https://alistapart.com/article/from-pages-to-patterns-an-exercise-for-everyone ● https://alistapart.com/article/language-of-modular-design ● http://daverupert.com/2013/04/responsive-deliverables/ ● http://atomicdesign.bradfrost.com/
  • 36. The basics of using Gutenberg
  • 76. Replace publish dropdown menu with a sidebar panel. Expand latest post blocks with more querying options — order by and category. Allow dragging multiple images to create a gallery. Improve markdown pasting (allows lists to be interpreted). Allow pasting copied images directly. Pasting within lists and headings. Improve handling of inline spans. Allow copying a single block. Make sure inline pasting mechanism does not take place if pasting shortcodes. Preserve alignment classes during raw transformations (like pasting an old WordPress post). Support shortcode synonyms. Allow continued writing when pressing down arrow at the end of a post. Mobile design: move block controls to the bottom of a block. Allow deleting reusable blocks globally. Display description and type on the sidebar. (Also replace BlockDescription component with a property.) New table of contents and document counts design. Add button to copy the full document quickly. Expand inserter to three columns and a wider container. Allow using down-arrow keys directly to navigate when searching a block in the inserter. Deselect images in Gallery block when losing focus. Include post title in document outline feature. Rework display of notices and address various issues with overlaps. Added keyboard shortcut to toggle editor mode. Also displays the relevant keyboard combination next to the menu item. Improve deleting empty paragraphs when backspacing into a block that has no merge function (example, deleting a paragraph after an image). Improve the way scroll-position is updated when moving a block. Show block transformations in ellipsis menu. Add drag and drop support for cover image. Allow transforming operations between Heading and Cover Image blocks. Add focus outline for blocks that don’t have focusable fields. Allow both navigation orientations in NavigableContainer. Improve the behavior of focusing embed blocks. Unify UI of audio and video blocks. Show message on the inserter when no blocks are found. Show message when no saved blocks are available. Do not show the publish panel when updating / scheduling / submitting a post. Update quote style in front-end. Convert text columns to a div using grid layout. Update button block CSS and add class to link. Allow text in Button block to wrap. Prevent useOnce blocks from being inserted using the convenient blocks shortcut menu. Show correct symbol (⌘ or Ctrl) depending on system context. Rename “insert” to “add” in the UI. Clear block selection when opening sibling or bottom inserter. Always show the insertion point when the inserter is opened. Increase padding on “more options” block toggle. Rename “Classic Text” to “Classic”. Improve display of dotted outline around reusable blocks. Updated messages around reusable blocks interactions. Align both the quote and the citation in the visual editor. Exit edit mode when unfocusing a reusable block. Set floated image width (when unresized) in % value. Add withState higher-order component. Initial introduction of wp.data module. Restrict the state access to the module registering the reducer only. Refactor PostSchedule to make Calendar and Clock available as reusable components. Allow overwriting colors (defaults and theme provided) when consuming ColorPalette component. Switch orientation of popover component only if there is more space for the new position. New ImagePlaceholder reusable component that handles upload buttons and draggable areas for the block author. Add speak message when a category is added. Announce notices to assertive technologies with speak. Add aria-labels to Code and HTML blocks. Warn if multiple h1 headings are being used. Add speak message and make “block settings” button label dynamic. Make excerpt functionality more accessible. Add various headings around editor areas for screen-readers. Improve accessibility of menu items in the main ellipsis menu. Add missing tooltips to icon buttons. Render toolbar always by the block on mobile. Improve performance of responsive calculations using matchMedia. Avoid shifts around toolbar and scrolling issues on mobile. Improve how the fixed-to-block toolbar looks on mobile. Change how the fixed position toolbars behave, making them sticky. Prevent Mobile Safari from zooming the entire page when you open the inserter. Initial explorations to migrate to server-registered blocks as part of raising awareness of available blocks. Move supportHTML property into the general “support” object. Replace getLatestPosts usage with withAPIData HOC. Convert all filters for components to behave like HOCs (withFilters). Replace flowRight usage with compose for HOCs. Apply filters without function wrappers. Display a hint that files need to be built. Add WordPress JSDoc ESLint configuration. Update licenses in package.json & composer.json to adhere to SPDX v3.0 specification. Add tests to cover REQUEST_POST_UPDATE_SUCCESS effect. Add tests for color palette component. Add tests for Editable.getSettings and adaptFormatter. Use newly published jest-console package in test setup. Update info about test fixtures generation. Also style footer in quote blocks to ensure backwards compatibility. Add a PHPUnit Docker Container. Fix wrong “return to editor” link when comparing revisions. Fix error when pressing enter from a heading block. Fix error with merging lists into paragraphs. Fix revisions button target area. Remove duplicated styles. Fix z-index rebase issues. Fix tag name warning ordering in validation. Fix text encoding of titles in url-input. Fix endless loop in reusable blocks code. Fix edit button in Audio block using invalid buttonProps attribute. Fix block creation with falsey default attribute. Fix radio control checked property. Fix styling issues of blocks when they are used as part of a reusable block. Fix list wrapping issues. Fix problem when converting shortcodes due to sorting. Fix issue with time-picker not working. Fix hide advanced settings interaction in block menu. Fix issue with url input on images. Fix style regression in textual placeholder on cover image. Fix return type hint in gutenberg_get_rest_link(). Fix bug when changing number of Latests Posts rapidly was leading to some numbers being defunct. Fix isInputField check and add tests. Fix unsetting block alignment flagging block as invalid. Fix CSS bleed from admin-specific gallery styles. Fix image handlers at the top from being unclickable. Fix unexpected keyboard navigations behaviour on some nodes. Fix inserter position for floated blocks. Fix bug on empty cover image placeholder used on a saved block. Fix errors when adding duplicate categories. Fix broken custom color bubble in ColorPalette. Improve Tags/Categories response size by limiting the requested fields. Limit requested fields in category feature of “latest posts”. Request only required post fields in latest posts. Replace getCategories usage with withAPIData component. Don’t show fields that are not used in media modal when adding a featured image. Polish inserter tabs so the focus style isn’t clipped. Make inspector controls available when categories are loading. Improve overlay over meta-boxes during save operations. Hide excerpts panel if not supported by the CPT. Hide Taxonomies panel if no taxonomy is available for the current CPT. Hide several other panels when the CPT doesn’t support them. Use _.includes to find available taxonomies. Mitigates non-schema-conforming taxonomy registrations. Defer applying filters for component until it is about to be mounted. Prevent “Add New” dropdown from overriding other plugin functionality. Improve paragraph block description. Refactor to simplify block toolbar rendering. Add missing aligment classes to cover image. Add parent page dropdown to page attributes panel. Allow pressing ENTER to change Reusable Block name. Disable HTML mode for reusable blocks. Add support for the “advanced” meta-box location. Make sure super admins can publish in any site of the network. Rename theme support for wide images to align-wide. Move selectors and actions files to the store folder. Center arrows of popovers relative to their parent. Use fainter disabled state. Add breakpoint grid to latest posts block and update color of date. Move logic for auto-generating the block class name to BlockEdit. Respect the “enter_title_here” hook. Prevent meta-box hooks from running multiple times. Don’t set font-family on pullquotes. Remove superfluous parentheses from include statements. Remove redundant CSS property updates. Use “columns-x” class only for grid layout in latest posts. Use flatMap for mapping toolbar controls for a small performance gain. Introduce jest matchers for console object. Updated various npm packages; update Jest. Update node-sass. Update WordPress packages. Switch TinyMCE to unpkg. Reorganize handbook docs navigation. Added FAQ section for meta-boxes compatibility. Added initial “templates” document. Add documentation about dynamic blocks. Updated “outreach” docs. Improve block-controls document.
  • 79. Will it break my site?
  • 86. Learning to code for Gutenberg
  • 88. Official Gutenberg Block Examples github.com/WordPress/gutenberg-examples Official Gutenberg Block Examples
  • 89. Official Gutenberg Block Examples github.com/ahmadawais/gutenberg-boilerplate The Gutenberg Boilerplate
  • 90. Official Gutenberg Block Examples wordpress.org/gutenberg/handbook The Gutenberg Handbook
  • 92. Official Gutenberg Block ExamplesStatic Content Blocks
  • 93. Official Gutenberg Block ExamplesDynamic Content Blocks
  • 94. Official Gutenberg Block ExamplesEditable Content Blocks github.com/thatplugincompany/gutenkit-spacer-block
  • 95. Official Gutenberg Block ExamplesLayout Blocks github.com/thatplugincompany/gutenkit-spacer-block
  • 97. Block Functions Edit Function Save Function The structure of your block in the context of the Gutenberg editor. The structure of the saved block that appears on the front-end. Block Functions
  • 98. Block Attributes 1. Provide structured data for blocks 2. Similar to shortcode attributes Block Attributes
  • 103. How will Gutenberg affect my business? staffing • selling • pricing
  • 104. How will Gutenberg affect my current sites and clients? updates • training
  • 105. Q & A Questions about what we just covered, or other problems?