91
So You Wanna Dev? Join the Team! WordCamp Orlando 2016 - 8 October 2016

WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Embed Size (px)

Citation preview

Page 1: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

So You Wanna Dev?Join the Team!

WordCamp Orlando 2016 - 8 October 2016

Page 3: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Internet

Throughout these slides almost everything is linked to related

content or sources.

Gotta click ‘em all!

Page 11: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 13: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

HTML - The Source<div id="home">

<div class="content">

<article>

<h2 class="noBottom">Getting someone's attention is one thing.</h2>

<h3 class="noTop">Keeping it is what counts.</h3>

<p>A second may be all the time you've got in today's rapidly changing marketing landscape of diverse audiences,

channels and techniques. Simply put, your brand needs an integrated marketing partner. Brown Bag is fully integrated,

full-service and equipped for the digital and content age - creating experiences that keep your customers' attention while

delivering measurable results that keep yours.</p>

</article>

<div class="buttons">

<a href="https://www.brownbagmarketing.com/infographic/" class="btn btn-orange">Why Integrated Marketing</a>

<a href="https://www.brownbagmarketing.com/contact/" class="btn btn-orange">Work With Us</a>

</div>

</div>

</div>

Page 14: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

HTML - In Browser

Page 15: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

<video> <canvas>

<article> <header>

<section> <main>

<footer> <audio>

Page 19: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

CSS Specificity

Page 21: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

CSSh1, h2, h3, h4, h5 {

font-size: 26px;

font-weight: 100;

text-transform: uppercase;

margin: 30px 0;

}

.noBottom {

margin-bottom: 0px;

}

.noTop {

margin-top: 0px;

}

h3 {

text-transform: none;

font-family: "somefont";

}

.content {

width: 1024px;

max-width: 100%;

margin: 0 auto;

text-align: center;

}

Page 22: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

CSS

Page 23: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

CSS3background-size:

border-radius:

border-box:

flexbox: rgba();

transition:

perspective:

transform:

Page 24: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

PHPWhat is PHP and how?

Page 25: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

PHP<div id="home">

<div class="content">

<article>

<h2 class="noBottom"><?php the_field('headline_1'); ?></h2>

<h3 class="noTop"><?php the_field('subheadline_1'); ?></h3>

<p><?php the_field('body_1'); ?></p>

</article>

<div class="buttons">

<a href="<?php the_field('button_1.1_link'); ?>" class="btn btn-orange"><?php

the_field('button_1.1_text'); ?></a>

<a href="<?php the_field('button_1.2_link'); ?>" class="btn btn-orange"><?php

the_field('button_1.2_text'); ?></a>

</div>

</div>

</div>

Page 26: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

PHP<div id="home">

<div class="content">

<article>

<h2 class="noBottom"><?php the_field('headline_1'); ?></h2>

<h3 class="noTop"><?php the_field('subheadline_1'); ?></h3>

<p><?php the_field('body_1'); ?></p>

</article>

<div class="buttons">

<a href="<?php the_field('button_1.1_link'); ?>" class="btn btn-orange"><?php

the_field('button_1.1_text'); ?></a>

<a href="<?php the_field('button_1.2_link'); ?>" class="btn btn-orange"><?php

the_field('button_1.2_text'); ?></a>

</div>

</div>

</div>

Page 27: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

PHP

Page 29: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

$wisdom: 'wisdomscript';

$raleway: 'ralewayregular';

$white: #ffffff;

$orange: #f15b22;

$orangelight: #fd6c35;

h3 { font-family: $wisdom; }

.btn {

display: inline-block;

color: $white;

font-family: $raleway;

&:hover {

color: $white;

}

&.btn-orange {

background-color: $orange;

&:hover {

background-color: $orangelight;

}

}

}

Page 31: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

javascript

Page 33: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML

document traversal and manipulation, event handling, animation, and Ajax much

simpler with an easy-to-use API that works across a multitude of browsers. With a

combination of versatility and extensibility, jQuery has changed the way that millions

of people write JavaScript.

Page 44: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 45: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 50: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Child ThemeA child theme is a theme that inherits the functionality and styling of another theme,

called the parent theme. Child themes are the recommended way of modifying an

existing theme.

● If you modify a theme directly and it is updated, then your modifications may be

lost. By using a child theme you will ensure that your modifications are preserved.

● Using a child theme can speed up development time.

● Using a child theme is a great way to learn about WordPress theme development.

Read More at https://codex.wordpress.org/Child_Themes

Page 51: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

The functions file. A file in a theme that doesn’t display

content but houses your php functions.

This is where you place that snippet of code you find

in a forum that will fix all your problems. You add your

own custom php functions or WordPress hooks and

customizations.

Note that this file is tied to the theme, if you’re

someone who switches themes often, you may be

better served creating a function plugin and placing

your code there.

functions.php

Page 55: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 56: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Simple PHP EditsRearrange elements, remove elements, edit html tags…

If you want to change more than just the stylesheet, your child theme can override any

file in the parent theme: simply include a file of the same name in the child theme

directory, and it will override the equivalent file in the parent theme directory when

your site loads.

See the Template Hierarchy for details about how WordPress decides what template to use.

Page 57: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

HooksHooks are provided by WordPress to allow you to 'hook into' the rest of WordPress. That is, your functions hook into WordPress functions. Then when the WordPress functions are called at any time, it sets your code in motion. Still Lost?

Page 58: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Hooksactions

Actions are the hooks that the WordPress core

launches at specific points during execution, or

when specific events occur. Your plugin can specify

that one or more of its PHP functions are executed

at these points, using the Action API.

filters

Filters are the hooks that WordPress launches to

modify text of various types before adding it to the

database or sending it to the browser screen. Your

plugin can specify that one or more of its PHP

functions is executed to modify specific types of

text at these times, using the Filter API.

Page 60: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

The LoopThe Loop is the code

that queries the

database to get your

posts. It will grab them

all at once and loop

through them while

building the page.

Page 61: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

The Loop

Note: there are php

methods or Template

Tags that we “must be

within The Loop” in

order to use them.

Page 62: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Template HierarchyThe template hierarchy is the system WordPress uses to identify which template file to

use when displaying a given page on a site.

Page 63: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Template Hierarchy

Page 64: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Custom FieldsWhen a big WYSIWYG editor won’t work.

Page 65: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Advanced Custom Fields Plugin: ACFWhen you want powerful options with your custom fields use ACF

Page 66: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Native Custom Fields Advanced Custom Fields

Page 67: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 68: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Custom Post TypesWhen a simple blog post

won’t work. You can create a

custom post type (CPT) for

anything you can think of,

and when you combine a

CPT with custom fields, you

begin to harness the true

CMS power of WordPress

Page 69: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Version control

SVN - WordPress core and repositories

Git - everyone elss

Page 70: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

git & svn are version control systems (vcs)

Page 72: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 75: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

API

An application programming

interface (API) is a set of subroutine definitions,

protocols, and tools for building software and

applications. A good API makes it easier to develop a

program by providing all the building blocks, which are

then put together by the programmer.

Page 76: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

REST

REpresentational State Transfer

It describes how one system can communicate state with another. One example would

be the state of a product (its name, description etc) represented as JSON. The

generalised idea of state is termed a resource.

Page 77: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

JSON

JavaScript Object Notation is a lightweight data-interchange format.

It is easy for humans to read and write. It is easy for machines to parse and generate. It

is a text format that is completely language independent but uses conventions that are

familiar to programmers. These properties make JSON an ideal data-interchange

language.

JSON is built on two structures:

● A collection of name/value pairs. (object).

● An ordered list of values. (array).

Page 78: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

WP REST API

Page 79: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Multisite

Page 81: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

SEOSearch Engine Optimization being google-able

On Page: domain name, internal links/navigation, content, freshness, keyword density,

site speed, SSL, etc

Off Page: quantity and quality of inbound links, social media

Out of the box WordPress has many helpful features that make your site search engine

friendly on-page: clean code, content first, crawlability, pretty permalinks, etc.

Plugins can still add more: Yoast, All in One SEO Pack… and more

Page 82: WordCamp Orlando 2016 - So you wanna dev? Join the Team!
Page 83: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Slack

Page 84: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Responsive Design

Page 88: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

DRYDon’t repeat yourself!

Page 90: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Questions

?

Page 91: WordCamp Orlando 2016 - So you wanna dev? Join the Team!

Thank You

!

Slides available at https://circlecube.com/does-wordpress/