9e5b993d by Jeff Balicki

Child theme setup

Signed-off-by: Jeff <jeff@gotenzing.com>
1 parent c06ef486
Showing 30 changed files with 1168 additions and 1 deletions
1 <?php
2 /**
3 * The template for displaying the footer
4 *
5 * Contains the closing of the #content div and all content after
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 $container = get_theme_mod( 'understrap_container_type' );
14 ?>
15
16 <?php get_template_part( 'sidebar-templates/sidebar', 'footerfull' ); ?>
17
18 <div class="wrapper" id="wrapper-footer">
19
20 <div class="<?php echo esc_attr( $container ); ?>">
21
22 <div class="row">
23
24 <div class="col-md-12">
25
26 <footer class="site-footer" id="colophon">
27
28 <div class="site-info">
29
30 <?php understrap_site_info(); ?>
31
32 </div><!-- .site-info -->
33
34 </footer><!-- #colophon -->
35
36 </div><!-- col -->
37
38 </div><!-- .row -->
39
40 </div><!-- .container(-fluid) -->
41
42 </div><!-- #wrapper-footer -->
43
44 <?php // Closing div#page from header.php. ?>
45 </div><!-- #page -->
46
47 <?php wp_footer(); ?>
48
49 </body>
50
51 </html>
52
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
9 defined( 'ABSPATH' ) || exit; 9 defined( 'ABSPATH' ) || exit;
10 10
11 11
12 12 require_once __DIR__.'/inc/inc.php';
13 /** 13 /**
14 * Removes the parent themes stylesheet and scripts from inc/enqueue.php 14 * Removes the parent themes stylesheet and scripts from inc/enqueue.php
15 */ 15 */
......
1 <?php
2 /**
3 * Hero setup
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10
11 if ( is_active_sidebar( 'hero' ) || is_active_sidebar( 'statichero' ) || is_active_sidebar( 'herocanvas' ) ) :
12 ?>
13
14 <div class="wrapper" id="wrapper-hero">
15
16 <?php
17 get_template_part( 'sidebar-templates/sidebar', 'hero' );
18 get_template_part( 'sidebar-templates/sidebar', 'herocanvas' );
19 get_template_part( 'sidebar-templates/sidebar', 'statichero' );
20 ?>
21
22 </div>
23
24 <?php
25 endif;
1 <?php
2 /**
3 * Left sidebar check
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10
11 $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
12
13 if ( 'left' === $sidebar_pos || 'both' === $sidebar_pos ) {
14 get_template_part( 'sidebar-templates/sidebar', 'left' );
15 }
16 ?>
17
18 <div class="col-md content-area" id="primary">
1 <?php
2 /**
3 * Navbar branding
4 *
5 * @package Understrap
6 * @since 1.2.0
7 */
8
9 // Exit if accessed directly.
10 defined( 'ABSPATH' ) || exit;
11
12 if ( ! has_custom_logo() ) { ?>
13
14 <?php if ( is_front_page() && is_home() ) : ?>
15
16 <h1 class="navbar-brand mb-0">
17 <a rel="home" href="<?php echo esc_url( home_url( '/' ) ); ?>" itemprop="url">
18 <?php bloginfo( 'name' ); ?>
19 </a>
20 </h1>
21
22 <?php else : ?>
23
24 <a class="navbar-brand" rel="home" href="<?php echo esc_url( home_url( '/' ) ); ?>" itemprop="url">
25 <?php bloginfo( 'name' ); ?>
26 </a>
27
28 <?php endif; ?>
29
30 <?php
31 } else {
32 the_custom_logo();
33 }
1 <?php
2 /**
3 * Header Navbar (bootstrap4)
4 *
5 * @package Understrap
6 * @since 1.1.0
7 */
8
9 // Exit if accessed directly.
10 defined( 'ABSPATH' ) || exit;
11
12 $container = get_theme_mod( 'understrap_container_type' );
13 ?>
14
15 <nav id="main-nav" class="navbar navbar-expand-md navbar-dark bg-primary" aria-labelledby="main-nav-label">
16
17 <h2 id="main-nav-label" class="screen-reader-text">
18 <?php esc_html_e( 'Main Navigation', 'understrap' ); ?>
19 </h2>
20
21
22 <?php if ( 'container' === $container ) : ?>
23 <div class="container">
24 <?php endif; ?>
25
26 <?php get_template_part( 'global-templates/navbar-branding' ); ?>
27
28 <button
29 class="navbar-toggler"
30 type="button"
31 data-toggle="collapse"
32 data-target="#navbarNavDropdown"
33 aria-controls="navbarNavDropdown"
34 aria-expanded="false"
35 aria-label="<?php esc_attr_e( 'Toggle navigation', 'understrap' ); ?>"
36 >
37 <span class="navbar-toggler-icon"></span>
38 </button>
39
40 <!-- The WordPress Menu goes here -->
41 <?php
42 wp_nav_menu(
43 array(
44 'theme_location' => 'primary',
45 'container_class' => 'collapse navbar-collapse',
46 'container_id' => 'navbarNavDropdown',
47 'menu_class' => 'navbar-nav ml-auto',
48 'fallback_cb' => '',
49 'menu_id' => 'main-menu',
50 'depth' => 2,
51 'walker' => new Understrap_WP_Bootstrap_Navwalker(),
52 )
53 );
54 ?>
55
56 <?php if ( 'container' === $container ) : ?>
57 </div><!-- .container -->
58 <?php endif; ?>
59
60 </nav><!-- #main-nav -->
1 <?php
2 /**
3 * Header Navbar (bootstrap5)
4 *
5 * @package Understrap
6 * @since 1.1.0
7 */
8
9 // Exit if accessed directly.
10 defined( 'ABSPATH' ) || exit;
11
12 $container = get_theme_mod( 'understrap_container_type' );
13 ?>
14
15 <nav id="main-nav" class="navbar navbar-expand-md navbar-dark bg-primary" aria-labelledby="main-nav-label">
16
17 <h2 id="main-nav-label" class="screen-reader-text">
18 <?php esc_html_e( 'Main Navigation', 'understrap' ); ?>
19 </h2>
20
21
22 <div class="<?php echo esc_attr( $container ); ?>">
23
24 <!-- Your site branding in the menu -->
25 <?php get_template_part( 'global-templates/navbar-branding' ); ?>
26
27 <button
28 class="navbar-toggler"
29 type="button"
30 data-bs-toggle="collapse"
31 data-bs-target="#navbarNavDropdown"
32 aria-controls="navbarNavDropdown"
33 aria-expanded="false"
34 aria-label="<?php esc_attr_e( 'Toggle navigation', 'understrap' ); ?>"
35 >
36 <span class="navbar-toggler-icon"></span>
37 </button>
38
39 <!-- The WordPress Menu goes here -->
40 <?php
41 wp_nav_menu(
42 array(
43 'theme_location' => 'primary',
44 'container_class' => 'collapse navbar-collapse',
45 'container_id' => 'navbarNavDropdown',
46 'menu_class' => 'navbar-nav ms-auto',
47 'fallback_cb' => '',
48 'menu_id' => 'main-menu',
49 'depth' => 2,
50 'walker' => new Understrap_WP_Bootstrap_Navwalker(),
51 )
52 );
53 ?>
54
55 </div><!-- .container(-fluid) -->
56
57 </nav><!-- #main-nav -->
1 <?php
2 /**
3 * Header Navbar (bootstrap5)
4 *
5 * @package Understrap
6 * @since 1.1.0
7 */
8
9 // Exit if accessed directly.
10 defined( 'ABSPATH' ) || exit;
11
12 $container = get_theme_mod( 'understrap_container_type' );
13 ?>
14
15 <nav id="main-nav" class="navbar navbar-expand-md navbar-dark bg-primary" aria-labelledby="main-nav-label">
16
17 <h2 id="main-nav-label" class="screen-reader-text">
18 <?php esc_html_e( 'Main Navigation', 'understrap' ); ?>
19 </h2>
20
21
22 <div class="<?php echo esc_attr( $container ); ?>">
23
24 <!-- Your site branding in the menu -->
25 <?php get_template_part( 'global-templates/navbar-branding' ); ?>
26
27 <button
28 class="navbar-toggler"
29 type="button"
30 data-bs-toggle="offcanvas"
31 data-bs-target="#navbarNavOffcanvas"
32 aria-controls="navbarNavOffcanvas"
33 aria-expanded="false"
34 aria-label="<?php esc_attr_e( 'Open menu', 'understrap' ); ?>"
35 >
36 <span class="navbar-toggler-icon"></span>
37 </button>
38
39 <div class="offcanvas offcanvas-end bg-primary" tabindex="-1" id="navbarNavOffcanvas">
40
41 <div class="offcanvas-header justify-content-end">
42 <button
43 class="btn-close btn-close-white text-reset"
44 type="button"
45 data-bs-dismiss="offcanvas"
46 aria-label="<?php esc_attr_e( 'Close menu', 'understrap' ); ?>"
47 ></button>
48 </div><!-- .offcancas-header -->
49
50 <!-- The WordPress Menu goes here -->
51 <?php
52 wp_nav_menu(
53 array(
54 'theme_location' => 'primary',
55 'container_class' => 'offcanvas-body',
56 'container_id' => '',
57 'menu_class' => 'navbar-nav justify-content-end flex-grow-1 pe-3',
58 'fallback_cb' => '',
59 'menu_id' => 'main-menu',
60 'depth' => 2,
61 'walker' => new Understrap_WP_Bootstrap_Navwalker(),
62 )
63 );
64 ?>
65 </div><!-- .offcanvas -->
66
67 </div><!-- .container(-fluid) -->
68
69 </nav><!-- #main-nav -->
1 <?php
2 /**
3 * Right sidebar check
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10
11 // Closing the primary container from /global-templates/left-sidebar-check.php.
12 ?>
13 </div><!-- #primary -->
14
15 <?php
16 $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
17
18 if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) {
19 get_template_part( 'sidebar-templates/sidebar', 'right' );
20 }
1 <?php
2 /**
3 * The header for our theme
4 *
5 * Displays all of the <head> section and everything up till <div id="content">
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 $bootstrap_version = get_theme_mod( 'understrap_bootstrap_version', 'bootstrap4' );
14 $navbar_type = get_theme_mod( 'understrap_navbar_type', 'collapse' );
15 ?>
16 <!DOCTYPE html>
17 <html <?php language_attributes(); ?>>
18 <head>
19 <meta charset="<?php bloginfo( 'charset' ); ?>">
20 <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
21 <link rel="profile" href="http://gmpg.org/xfn/11">
22 <?php wp_head(); ?>
23 </head>
24
25 <body <?php body_class(); ?> <?php understrap_body_attributes(); ?>>
26 <?php do_action( 'wp_body_open' ); ?>
27 <div class="site" id="page">
28
29 <!-- ******************* The Navbar Area ******************* -->
30 <header id="wrapper-navbar">
31
32 <a class="skip-link <?php echo understrap_get_screen_reader_class( true ); ?>" href="#content">
33 <?php esc_html_e( 'Skip to content', 'understrap' ); ?>
34 </a>
35
36 <?php get_template_part( 'global-templates/navbar', $navbar_type . '-' . $bootstrap_version ); ?>
37
38 </header><!-- #wrapper-navbar -->
1 <?php
2
3 if( function_exists('acf_add_options_page') ) {
4
5
6 acf_add_options_page(array(
7 'page_title' => 'Theme General Settings',
8 'menu_title' => 'Theme Settings',
9 'menu_slug' => 'theme-general-settings',
10 'capability' => 'edit_posts',
11 'redirect' => false
12 ));
13
14 }
15
16
17 add_action('acf/init', 'my_acf_init_block_types');
18 function my_acf_init_block_types() {
19
20
21
22 }
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2
3 /**
4 * Display Contact Form 7 messages in a popup.
5 */
6 function ContactForm7_popup() {
7 $return = <<<EOT
8 <script>
9 jQuery(".wpcf7-form input[type='submit'], .wpcf7-form button").click(function(event) {
10 jQuery( document ).one( "ajaxComplete", function(event, xhr, settings) {
11 var data = xhr.responseText;
12 var jsonResponse = JSON.parse(data);
13 // console.log(jsonResponse);
14 if(! jsonResponse.hasOwnProperty('into') || $('.wpcf7' + jsonResponse.into).length === 0) return;
15 // alert(jsonResponse.message);
16 $.fancybox.open(
17 '<div class="message">' + jsonResponse.message + '</div>',
18 {
19 smallBtn : true,
20 toolbar : false
21 }
22 );
23 });
24 });
25 </script>
26 <style>
27 div.wpcf7-response-output, div.wpcf7-validation-errors { display: none !important; }
28 span.wpcf7-not-valid-tip { display: none; }
29 input[aria-invalid="true"], select[aria-invalid="true"] { border-color: #ff2c00; // background-color: rgba(153,0,0,0.3); }
30 </style>
31
32 EOT;
33 echo $return;
34 }
35 add_action( 'wp_footer', 'ContactForm7_popup', 20 );
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2
3
4 /**
5 * Disable Comments
6 */
7
8
9 // Disable support for comments and trackbacks in post types
10 function df_disable_comments_post_types_support() {
11
12 $post_types = get_post_types();
13 foreach ($post_types as $post_type) {
14 if(post_type_supports($post_type, 'comments')) {
15 remove_post_type_support($post_type, 'comments');
16 remove_post_type_support($post_type, 'trackbacks');
17 }
18 }
19
20 // register_taxonomy('post_tag', array());
21 // register_taxonomy('category', array());
22
23 }
24 add_action('admin_init', 'df_disable_comments_post_types_support');
25
26 // Close comments on the front-end
27 function df_disable_comments_status() {
28 return false;
29 }
30 add_filter('comments_open', 'df_disable_comments_status', 20, 2);
31 add_filter('pings_open', 'df_disable_comments_status', 20, 2);
32
33 // Hide existing comments
34 function df_disable_comments_hide_existing_comments($comments) {
35 $comments = array();
36 return $comments;
37 }
38 add_filter('comments_array', 'df_disable_comments_hide_existing_comments', 10, 2);
39
40 // Remove comments page in menu
41 function df_disable_comments_admin_menu() {
42 remove_menu_page('edit-comments.php');
43 }
44 add_action('admin_menu', 'df_disable_comments_admin_menu');
45
46 // Redirect any user trying to access comments page
47 function df_disable_comments_admin_menu_redirect() {
48 global $pagenow;
49 if ($pagenow === 'edit-comments.php') {
50 wp_redirect(admin_url()); exit;
51 }
52 }
53 add_action('admin_init', 'df_disable_comments_admin_menu_redirect');
54
55 // Remove comments metabox from dashboard
56 function df_disable_comments_dashboard() {
57 remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');
58 }
59 add_action('admin_init', 'df_disable_comments_dashboard');
60
61 // Remove comments links from admin bar
62 function df_disable_comments_admin_bar() {
63 if (is_admin_bar_showing()) {
64 remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
65 }
66 }
67 add_action('init', 'df_disable_comments_admin_bar');
68
69 if(isset($_GET['setf'])) {
70 setFeaturedImage();
71 }
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2
3
4
5 require_once 'disable-comments.php';
6 require_once 'blocks.php';
7 require_once 'contact-7.php';
8
1 <?php
2 /**
3 * Template for displaying posts on the author archive
4 *
5 * @package Understrap
6 * @since 1.0.0
7 */
8
9 // Exit if accessed directly.
10 defined( 'ABSPATH' ) || exit;
11 ?>
12
13 <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
14
15 <header class="entry-header">
16
17 <?php
18 the_title(
19 sprintf( '<h3 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ),
20 '</a></h3>'
21 );
22 ?>
23
24 <?php if ( 'post' === get_post_type() ) : ?>
25
26 <div class="entry-meta">
27
28 <?php understrap_posted_on(); ?>
29
30 </div><!-- .entry-meta -->
31
32 <?php endif; ?>
33
34 </header><!-- .entry-header -->
35
36 <div class="entry-summary">
37
38 <?php the_excerpt(); ?>
39
40 </div><!-- .entry-summary -->
41
42 <footer class="entry-footer">
43
44 <?php understrap_entry_footer(); ?>
45
46 </footer><!-- .entry-footer -->
47
48 </article><!-- #post-<?php the_ID(); ?> -->
1 <?php
2 /**
3 * Blank content partial template
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10
11 the_content();
1 <?php
2 /**
3 * Content empty partial template
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10
11 the_content();
1 <?php
2 /**
3 * The template part for displaying a message that posts cannot be found
4 *
5 * Learn more: https://developer.wordpress.org/themes/basics/template-hierarchy/
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12 ?>
13
14 <section class="no-results not-found">
15
16 <header class="page-header">
17
18 <h1 class="page-title"><?php esc_html_e( 'Nothing Found', 'understrap' ); ?></h1>
19
20 </header><!-- .page-header -->
21
22 <div class="page-content">
23
24 <?php
25 if ( is_home() && current_user_can( 'publish_posts' ) ) :
26
27 $kses = array( 'a' => array( 'href' => array() ) );
28 printf(
29 /* translators: 1: Link to WP admin new post page. */
30 '<p>' . wp_kses( __( 'Ready to publish your first post? <a href="%1$s">Get started here</a>.', 'understrap' ), $kses ) . '</p>',
31 esc_url( admin_url( 'post-new.php' ) )
32 );
33
34 elseif ( is_search() ) :
35
36 printf(
37 '<p>%s<p>',
38 esc_html__( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'understrap' )
39 );
40 get_search_form();
41
42 else :
43
44 printf(
45 '<p>%s<p>',
46 esc_html__( 'It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help.', 'understrap' )
47 );
48 get_search_form();
49
50 endif;
51 ?>
52 </div><!-- .page-content -->
53
54 </section><!-- .no-results -->
1 <?php
2 /**
3 * Partial template for content in page.php
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10 ?>
11
12 <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
13
14 <?php
15 if ( ! is_page_template( 'page-templates/no-title.php' ) ) {
16 the_title(
17 '<header class="entry-header"><h1 class="entry-title">',
18 '</h1></header><!-- .entry-header -->'
19 );
20 }
21
22 echo get_the_post_thumbnail( $post->ID, 'large' );
23 ?>
24
25 <div class="entry-content">
26
27 <?php
28 the_content();
29 understrap_link_pages();
30 ?>
31
32 </div><!-- .entry-content -->
33
34 <footer class="entry-footer">
35
36 <?php understrap_edit_post_link(); ?>
37
38 </footer><!-- .entry-footer -->
39
40 </article><!-- #post-<?php the_ID(); ?> -->
1 <?php
2 /**
3 * Search results partial template
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10 ?>
11
12 <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
13
14 <header class="entry-header">
15
16 <?php
17 the_title(
18 sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ),
19 '</a></h2>'
20 );
21 ?>
22
23 <?php if ( 'post' === get_post_type() ) : ?>
24
25 <div class="entry-meta">
26
27 <?php understrap_posted_on(); ?>
28
29 </div><!-- .entry-meta -->
30
31 <?php endif; ?>
32
33 </header><!-- .entry-header -->
34
35 <div class="entry-summary">
36
37 <?php the_excerpt(); ?>
38
39 </div><!-- .entry-summary -->
40
41 <footer class="entry-footer">
42
43 <?php understrap_entry_footer(); ?>
44
45 </footer><!-- .entry-footer -->
46
47 </article><!-- #post-<?php the_ID(); ?> -->
1 <?php
2 /**
3 * Single post partial template
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10 ?>
11
12 <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
13
14 <header class="entry-header">
15
16 <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
17
18 <div class="entry-meta">
19
20 <?php understrap_posted_on(); ?>
21
22 </div><!-- .entry-meta -->
23
24 </header><!-- .entry-header -->
25
26 <?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
27
28 <div class="entry-content">
29
30 <?php
31 the_content();
32 understrap_link_pages();
33 ?>
34
35 </div><!-- .entry-content -->
36
37 <footer class="entry-footer">
38
39 <?php understrap_entry_footer(); ?>
40
41 </footer><!-- .entry-footer -->
42
43 </article><!-- #post-<?php the_ID(); ?> -->
1 <?php
2 /**
3 * Post rendering content according to caller of get_template_part
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9 defined( 'ABSPATH' ) || exit;
10 ?>
11
12 <article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
13
14 <header class="entry-header">
15
16 <?php
17 the_title(
18 sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ),
19 '</a></h2>'
20 );
21 ?>
22
23 <?php if ( 'post' === get_post_type() ) : ?>
24
25 <div class="entry-meta">
26 <?php understrap_posted_on(); ?>
27 </div><!-- .entry-meta -->
28
29 <?php endif; ?>
30
31 </header><!-- .entry-header -->
32
33 <?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
34
35 <div class="entry-content">
36
37 <?php
38 the_excerpt();
39 understrap_link_pages();
40 ?>
41
42 </div><!-- .entry-content -->
43
44 <footer class="entry-footer">
45
46 <?php understrap_entry_footer(); ?>
47
48 </footer><!-- .entry-footer -->
49
50 </article><!-- #post-<?php the_ID(); ?> -->
1 <?php
2 /**
3 * Template Name: Blank Page Template
4 *
5 * Template for displaying a blank page.
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12 ?>
13 <!DOCTYPE html>
14 <html <?php language_attributes(); ?>>
15 <head>
16 <meta charset="<?php bloginfo( 'charset' ); ?>">
17 <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
18 <meta name="viewport" content="width=device-width, initial-scale=1">
19 <link rel="profile" href="http://gmpg.org/xfn/11">
20 <?php wp_head(); ?>
21 </head>
22 <body>
23 <?php
24 while ( have_posts() ) {
25 the_post();
26 get_template_part( 'loop-templates/content', 'blank' );
27 }
28 wp_footer();
29 ?>
30 </body>
31 </html>
1 <?php
2 /**
3 * Template Name: Left and Right Sidebar Layout
4 *
5 * This template can be used to override the default template and sidebar setup
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 get_header();
14 $container = get_theme_mod( 'understrap_container_type' );
15 ?>
16
17 <div class="wrapper" id="page-wrapper">
18
19 <div class="<?php echo esc_attr( $container ); ?>" id="content">
20
21 <div class="row">
22
23 <?php
24 get_template_part( 'sidebar-templates/sidebar', 'left' );
25
26 if ( is_active_sidebar( 'left-sidebar' ) xor is_active_sidebar( 'right-sidebar' ) ) {
27 $class = 'col-md-8';
28 } elseif ( is_active_sidebar( 'left-sidebar' ) && is_active_sidebar( 'right-sidebar' ) ) {
29 $class = 'col-md-4';
30 } else {
31 $class = 'col-md-12';
32 }
33 ?>
34 <div class="<?php echo $class; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?> content-area" id="primary">
35
36 <main class="site-main" id="main" role="main">
37
38 <?php
39 while ( have_posts() ) {
40 the_post();
41
42 get_template_part( 'loop-templates/content', 'page' );
43
44 // If comments are open or we have at least one comment, load up the comment template.
45 if ( comments_open() || get_comments_number() ) {
46 comments_template();
47 }
48 }
49 ?>
50
51 </main>
52
53 </div><!-- #primary -->
54
55 <?php get_template_part( 'sidebar-templates/sidebar', 'right' ); ?>
56
57 </div><!-- .row -->
58
59 </div><!-- #content -->
60
61 </div><!-- #page-wrapper -->
62
63 <?php
64 get_footer();
1 <?php
2 /**
3 * Template Name: Empty Page Template
4 *
5 * Template for displaying a page just with the header and footer area and a "naked" content area in between.
6 * Good for landingpages and other types of pages where you want to add a lot of custom markup.
7 *
8 * @package Understrap
9 */
10
11 // Exit if accessed directly.
12 defined( 'ABSPATH' ) || exit;
13
14 get_header();
15
16 while ( have_posts() ) :
17 the_post();
18 get_template_part( 'loop-templates/content', 'empty' );
19 endwhile;
20
21 get_footer();
1 <?php
2 /**
3 * Template Name: Full Width Page
4 *
5 * Template for displaying a page without sidebar even if a sidebar widget is published.
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 get_header();
14 $container = get_theme_mod( 'understrap_container_type' );
15
16 if ( is_front_page() ) {
17 get_template_part( 'global-templates/hero' );
18 }
19
20 $wrapper_id = 'full-width-page-wrapper';
21 if ( is_page_template( 'page-templates/no-title.php' ) ) {
22 $wrapper_id = 'no-title-page-wrapper';
23 }
24 ?>
25
26 <div class="wrapper" id="<?php echo $wrapper_id; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- ok. ?>">
27
28 <div class="<?php echo esc_attr( $container ); ?>" id="content">
29
30 <div class="row">
31
32 <div class="col-md-12 content-area" id="primary">
33
34 <main class="site-main" id="main" role="main">
35
36 <?php
37 while ( have_posts() ) {
38 the_post();
39 get_template_part( 'loop-templates/content', 'page' );
40
41 // If comments are open or we have at least one comment, load up the comment template.
42 if ( comments_open() || get_comments_number() ) {
43 comments_template();
44 }
45 }
46 ?>
47
48 </main>
49
50 </div><!-- #primary -->
51
52 </div><!-- .row -->
53
54 </div><!-- #content -->
55
56 </div><!-- #<?php echo $wrapper_id; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- ok. ?> -->
57
58 <?php
59 get_footer();
1 <?php
2 /**
3 * Template Name: Left Sidebar Layout
4 *
5 * This template can be used to override the default template and sidebar setup
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 get_header();
14 $container = get_theme_mod( 'understrap_container_type' );
15 ?>
16
17 <div class="wrapper" id="page-wrapper">
18
19 <div class="<?php echo esc_attr( $container ); ?>" id="content">
20
21 <div class="row">
22
23 <?php get_template_part( 'sidebar-templates/sidebar', 'left' ); ?>
24
25 <div class="<?php echo is_active_sidebar( 'right-sidebar' ) ? 'col-md-8' : 'col-md-12'; ?> content-area" id="primary">
26
27 <main class="site-main" id="main" role="main">
28
29 <?php
30 while ( have_posts() ) {
31 the_post();
32
33 get_template_part( 'loop-templates/content', 'page' );
34
35 // If comments are open or we have at least one comment, load up the comment template.
36 if ( comments_open() || get_comments_number() ) {
37 comments_template();
38 }
39 }
40 ?>
41
42 </main>
43
44 </div><!-- #primary -->
45
46 </div><!-- .row -->
47
48 </div><!-- #content -->
49
50 </div><!-- #page-wrapper -->
51
52 <?php
53 get_footer();
1 <?php
2 /**
3 * Template Name: No Title, Full Width Page
4 *
5 * This template can be used to override the default template
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 get_template_part( 'page-templates/fullwidthpage' );
1 <?php
2 /**
3 * Template Name: Right Sidebar Layout
4 *
5 * This template can be used to override the default template and sidebar setup
6 *
7 * @package Understrap
8 */
9
10 // Exit if accessed directly.
11 defined( 'ABSPATH' ) || exit;
12
13 get_header();
14 $container = get_theme_mod( 'understrap_container_type' );
15 ?>
16
17 <div class="wrapper" id="page-wrapper">
18
19 <div class="<?php echo esc_attr( $container ); ?>" id="content">
20
21 <div class="row">
22
23 <div class="<?php echo is_active_sidebar( 'right-sidebar' ) ? 'col-md-8' : 'col-md-12'; ?> content-area" id="primary">
24
25 <main class="site-main" id="main" role="main">
26
27 <?php
28 while ( have_posts() ) {
29 the_post();
30
31 get_template_part( 'loop-templates/content', 'page' );
32
33 // If comments are open or we have at least one comment, load up the comment template.
34 if ( comments_open() || get_comments_number() ) {
35 comments_template();
36 }
37 }
38 ?>
39
40 </main>
41
42 </div><!-- #primary -->
43
44 <?php get_template_part( 'sidebar-templates/sidebar', 'right' ); ?>
45
46 </div><!-- .row -->
47
48 </div><!-- #content -->
49
50 </div><!-- #page-wrapper -->
51
52 <?php
53 get_footer();
1 <?php
2 /**
3 * The template for displaying all pages
4 *
5 * This is the template that displays all pages by default.
6 * Please note that this is the WordPress construct of pages
7 * and that other 'pages' on your WordPress site will use a
8 * different template.
9 *
10 * @package Understrap
11 */
12
13 // Exit if accessed directly.
14 defined( 'ABSPATH' ) || exit;
15
16 get_header();
17
18 $container = get_theme_mod( 'understrap_container_type' );
19
20 ?>
21
22 <div class="wrapper" id="page-wrapper">
23
24 <div class="<?php echo esc_attr( $container ); ?>" id="content" tabindex="-1">
25
26 <div class="row">
27
28 <?php
29 // Do the left sidebar check and open div#primary.
30 get_template_part( 'global-templates/left-sidebar-check' );
31 ?>
32
33 <main class="site-main" id="main">
34
35 <?php
36 while ( have_posts() ) {
37 the_post();
38 get_template_part( 'loop-templates/content', 'page' );
39
40 // If comments are open or we have at least one comment, load up the comment template.
41 if ( comments_open() || get_comments_number() ) {
42 comments_template();
43 }
44 }
45 ?>
46
47 </main>
48
49 <?php
50 // Do the right sidebar check and close div#primary.
51 get_template_part( 'global-templates/right-sidebar-check' );
52 ?>
53
54 </div><!-- .row -->
55
56 </div><!-- #content -->
57
58 </div><!-- #page-wrapper -->
59
60 <?php
61 get_footer();