AUTONOMOUS WEBSITE
BUILDING AN
BUILD A SITE THAT
RUNS BY ITSELF
THE GOAL
EMAIL USERS A DAILY
WORKOUT BASED ON THE
EQUIPMENT THEY HAVE
AVAILABLE AND THE
MOVEMENTS THEY ARE
CAPABLE OF DOING.
THE PLAN:
THE REQUIREMENTS
▸ Have all user interaction take place
on the front end of the site
▸ Update data daily automatically
▸ Send daily emails automatically
▸ Send weekly emails automatically
THE REQUIREMENTS
▸ Have all user interaction take place
on the front end of the site
▸ Update data daily automatically
▸ Send daily emails automatically
▸ Send weekly emails automatically
▸ Build it all in 2 weeks
“THERE’S A PLUGIN FOR THAT,
RIGHT?”
Me
“YOU BET THERE IS!”
The WP Community
1) LIMIT SPAM USER SIGNUPS
▸ Any time you have a site that allows for registrations, you
need a way to block user spam.
1) LIMIT SPAM USER SIGNUPS
PLUGIN: GRAVITY FORMS USER REGISTRATION ADD-ON
2) KEEP USERS OFF THE ADMIN PAGE
▸ Main objective, control the user experience
2) KEEP USERS OFF THE ADMIN PAGE
PLUGIN: REMOVE DASHBOARD ACCESS
3) REDIRECT USERS AT LOGIN
▸ When a user logs in, send them to the most important page.
In this case, the user settings page.
▸ If an admin logs in, redirect them to the dashboard.
3) REDIRECT USERS AT LOGIN
PLUGIN: PETER'S LOGIN REDIRECT
4) CUSTOMIZED LOGIN PAGE
▸ Again, it’s all about controlling the user experience.
4) CUSTOMIZED LOGIN PAGE
PLUGIN: CUSTOM LOGIN PAGE CUSTOMIZER
5) CUSTOM MENUS BASED ON USER TYPE
▸ The site will have 3 types of users
▸ Site visitor / logged out users
▸ Logged in users
▸ Admins
▸ Did I mention controlling the user experience?
5) CUSTOM MENUS BASED ON USER TYPE
PLUGIN: NAV MENU ROLES
CUSTOM CODE
ADD USERS
5) CUSTOM MENUS BASED ON USER TYPE
PLUGIN: NAV MENU ROLES
Admin
Logged In User
Site Visitor
6) LOG IN/OUT MENU ITEM
▸ Logged in users don’t need a “log in” link
▸ Visa versa for logged out users
6) LOG IN/OUT MENU ITEM
PLUGIN: BAW LOGIN/LOGOUT MENU
FULL MENU
7) HIDE CONTENT PAGES FROM NON-MEMBERS
▸ If a user is not logged in, the system doesn’t know which
user’s data to display. Therefore, if a visitor isn’t logged in, we
hide the content and display a login link.
▸ For admins, I wanted to control that experience as well.
7) HIDE CONTENT PAGES FROM NON-MEMBERS
7) HIDE CONTENT PAGES FROM NON-MEMBERS
7) HIDE CONTENT PAGES FROM NON-MEMBERS
PLUGIN: MEMBERS
8) RUN FUNCTIONS AUTOMATICALLY
▸ Send daily emails automatically each night
▸ Send weekly emails automatically each Sunday
▸ Update system data automatically each night
“THE SOFTWARE UTILITY CRON IS A TIME-BASED JOB SCHEDULER
IN UNIX-LIKE COMPUTER OPERATING SYSTEMS. PEOPLE WHO SET
UP AND MAINTAIN SOFTWARE ENVIRONMENTS USE CRON TO
SCHEDULE JOBS (COMMANDS OR SHELL SCRIPTS) TO RUN
PERIODICALLY AT FIXED TIMES, DATES, OR INTERVALS.”
wikipedia
WHAT IS A CRON JOB?
CUSTOM CODE
DAILY FUNCTIONS
8) RUN FUNCTIONS AUTOMATICALLY
PLUGIN: WP-CRONTROL
UPTIMEROBOT.COM
9) SEND EMAILS WITH HIGH DELIVERABILITY
▸ Sending emails from shared hosting has a lower chance of
making it to your users
▸ Services like Mailchimp, Constant Contact, SendGrid work
with providers like yahoo & gmail to ensure higher
deliverability
9) SEND EMAILS WITH HIGH DELIVERABILITY
PLUGIN: SENDGRID
9) SEND EMAILS WITH HIGH DELIVERABILITY
PLUGIN: SENDGRID
CUSTOM CODE
BUILD THE EMAIL TEMPLATE
9) SEND EMAILS WITH HIGH DELIVERABILITY
PLUGIN: SENDGRID
“WAIT, SO THAT’S ALL THERE
IS TO IT?”
You
“NOPE”
Me
RESOURCES WE COVERED
▸ Gravity Forms User Registration Add-On

http://www.gravityforms.com/add-ons/user-registration/
▸ Remove Dashboard Access

https://wordpress.org/plugins/remove-dashboard-access-for-non-admins/
▸ Peter's Login Redirect

https://wordpress.org/plugins/peters-login-redirect/
▸ Custom Login Page Customizer

https://wordpress.org/plugins/login-customizer/
▸ Nav Menu Roles

https://wordpress.org/plugins/nav-menu-roles/
▸ BAW Login/Logout menu

https://wordpress.org/plugins/baw-login-logout-menu/
▸ Members

https://wordpress.org/plugins/members/
▸ WP Crontrol

https://wordpress.org/plugins/wp-crontrol/
▸ Sendgrid

https://wordpress.org/plugins/sendgrid-email-delivery-simplified/
ADDITIONAL RESOURCES
▸ Akismet
▸ CMB2
▸ FacetWP
▸ Google Analytics by Yoast
▸ Gravity Forms
▸ Jetpack
▸ Pretty Link Pro
▸ Yoast SEO
▸ uptimerobot.com
THANK YOU
JOHN HAWKINS
▸ john@vegasgeek.com
▸ Blog: VegasGeek.com
▸ All the social medias: vegasgeek
Director of Products

WebDevStudios

pluginize.com

Building an Autonomous Website

  • 1.
  • 2.
    BUILD A SITETHAT RUNS BY ITSELF THE GOAL
  • 3.
    EMAIL USERS ADAILY WORKOUT BASED ON THE EQUIPMENT THEY HAVE AVAILABLE AND THE MOVEMENTS THEY ARE CAPABLE OF DOING. THE PLAN:
  • 4.
    THE REQUIREMENTS ▸ Haveall user interaction take place on the front end of the site ▸ Update data daily automatically ▸ Send daily emails automatically ▸ Send weekly emails automatically
  • 5.
    THE REQUIREMENTS ▸ Haveall user interaction take place on the front end of the site ▸ Update data daily automatically ▸ Send daily emails automatically ▸ Send weekly emails automatically ▸ Build it all in 2 weeks
  • 6.
    “THERE’S A PLUGINFOR THAT, RIGHT?” Me
  • 7.
    “YOU BET THEREIS!” The WP Community
  • 8.
    1) LIMIT SPAMUSER SIGNUPS ▸ Any time you have a site that allows for registrations, you need a way to block user spam.
  • 10.
    1) LIMIT SPAMUSER SIGNUPS PLUGIN: GRAVITY FORMS USER REGISTRATION ADD-ON
  • 11.
    2) KEEP USERSOFF THE ADMIN PAGE ▸ Main objective, control the user experience
  • 12.
    2) KEEP USERSOFF THE ADMIN PAGE PLUGIN: REMOVE DASHBOARD ACCESS
  • 13.
    3) REDIRECT USERSAT LOGIN ▸ When a user logs in, send them to the most important page. In this case, the user settings page. ▸ If an admin logs in, redirect them to the dashboard.
  • 14.
    3) REDIRECT USERSAT LOGIN PLUGIN: PETER'S LOGIN REDIRECT
  • 15.
    4) CUSTOMIZED LOGINPAGE ▸ Again, it’s all about controlling the user experience.
  • 16.
    4) CUSTOMIZED LOGINPAGE PLUGIN: CUSTOM LOGIN PAGE CUSTOMIZER
  • 17.
    5) CUSTOM MENUSBASED ON USER TYPE ▸ The site will have 3 types of users ▸ Site visitor / logged out users ▸ Logged in users ▸ Admins ▸ Did I mention controlling the user experience?
  • 18.
    5) CUSTOM MENUSBASED ON USER TYPE PLUGIN: NAV MENU ROLES
  • 19.
  • 20.
    5) CUSTOM MENUSBASED ON USER TYPE PLUGIN: NAV MENU ROLES Admin Logged In User Site Visitor
  • 21.
    6) LOG IN/OUTMENU ITEM ▸ Logged in users don’t need a “log in” link ▸ Visa versa for logged out users
  • 22.
    6) LOG IN/OUTMENU ITEM PLUGIN: BAW LOGIN/LOGOUT MENU
  • 23.
  • 24.
    7) HIDE CONTENTPAGES FROM NON-MEMBERS ▸ If a user is not logged in, the system doesn’t know which user’s data to display. Therefore, if a visitor isn’t logged in, we hide the content and display a login link. ▸ For admins, I wanted to control that experience as well.
  • 25.
    7) HIDE CONTENTPAGES FROM NON-MEMBERS
  • 26.
    7) HIDE CONTENTPAGES FROM NON-MEMBERS
  • 27.
    7) HIDE CONTENTPAGES FROM NON-MEMBERS PLUGIN: MEMBERS
  • 28.
    8) RUN FUNCTIONSAUTOMATICALLY ▸ Send daily emails automatically each night ▸ Send weekly emails automatically each Sunday ▸ Update system data automatically each night
  • 29.
    “THE SOFTWARE UTILITYCRON IS A TIME-BASED JOB SCHEDULER IN UNIX-LIKE COMPUTER OPERATING SYSTEMS. PEOPLE WHO SET UP AND MAINTAIN SOFTWARE ENVIRONMENTS USE CRON TO SCHEDULE JOBS (COMMANDS OR SHELL SCRIPTS) TO RUN PERIODICALLY AT FIXED TIMES, DATES, OR INTERVALS.” wikipedia WHAT IS A CRON JOB?
  • 30.
  • 31.
    8) RUN FUNCTIONSAUTOMATICALLY PLUGIN: WP-CRONTROL
  • 32.
  • 33.
    9) SEND EMAILSWITH HIGH DELIVERABILITY ▸ Sending emails from shared hosting has a lower chance of making it to your users ▸ Services like Mailchimp, Constant Contact, SendGrid work with providers like yahoo & gmail to ensure higher deliverability
  • 34.
    9) SEND EMAILSWITH HIGH DELIVERABILITY PLUGIN: SENDGRID
  • 35.
    9) SEND EMAILSWITH HIGH DELIVERABILITY PLUGIN: SENDGRID
  • 36.
    CUSTOM CODE BUILD THEEMAIL TEMPLATE
  • 37.
    9) SEND EMAILSWITH HIGH DELIVERABILITY PLUGIN: SENDGRID
  • 38.
    “WAIT, SO THAT’SALL THERE IS TO IT?” You
  • 39.
  • 40.
    RESOURCES WE COVERED ▸Gravity Forms User Registration Add-On
 http://www.gravityforms.com/add-ons/user-registration/ ▸ Remove Dashboard Access
 https://wordpress.org/plugins/remove-dashboard-access-for-non-admins/ ▸ Peter's Login Redirect
 https://wordpress.org/plugins/peters-login-redirect/ ▸ Custom Login Page Customizer
 https://wordpress.org/plugins/login-customizer/ ▸ Nav Menu Roles
 https://wordpress.org/plugins/nav-menu-roles/ ▸ BAW Login/Logout menu
 https://wordpress.org/plugins/baw-login-logout-menu/ ▸ Members
 https://wordpress.org/plugins/members/ ▸ WP Crontrol
 https://wordpress.org/plugins/wp-crontrol/ ▸ Sendgrid
 https://wordpress.org/plugins/sendgrid-email-delivery-simplified/
  • 41.
    ADDITIONAL RESOURCES ▸ Akismet ▸CMB2 ▸ FacetWP ▸ Google Analytics by Yoast ▸ Gravity Forms ▸ Jetpack ▸ Pretty Link Pro ▸ Yoast SEO ▸ uptimerobot.com
  • 42.
    THANK YOU JOHN HAWKINS ▸john@vegasgeek.com ▸ Blog: VegasGeek.com ▸ All the social medias: vegasgeek Director of Products
 WebDevStudios
 pluginize.com