123 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			123 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
|  * The template for displaying all pages.
 | |
|  *
 | |
|  * This is the template that displays all pages by default.
 | |
|  * Please note that this is the WordPress construct of pages
 | |
|  * and that other 'pages' on your WordPress site will use a
 | |
|  * different template.
 | |
|  *
 | |
|  * @package Generate
 | |
|  */
 | |
| 
 | |
| // No direct access, please
 | |
| if ( ! defined( 'ABSPATH' ) ) exit;
 | |
| 
 | |
| get_header();
 | |
| $sections = ( isset( $post ) ) ? get_post_meta( $post->ID, '_generate_sections', TRUE) : '';
 | |
| $sidebars = apply_filters( 'generate_sections_sidebars', false );
 | |
| ?>
 | |
| 
 | |
| 	<div id="primary" <?php echo $sidebars ? generate_content_class() : 'class="content-area grid-parent grid-100"' ?>>
 | |
| 		<main id="main" <?php if ( function_exists( 'generate_main_class' ) ) generate_main_class(); ?>>
 | |
| 			<?php do_action('generate_before_main_content'); ?>
 | |
| 
 | |
| 			 <?php if ( post_password_required() ) : ?>
 | |
| 				<article id="post-<?php the_ID(); ?>" <?php post_class(); ?> <?php generate_article_schema( 'CreativeWork' ); ?>>
 | |
| 					<div class="inside-article">
 | |
| 						<div class="entry-content" itemprop="text">
 | |
| 							<?php the_content(); ?>
 | |
| 						</div><!-- .entry-content -->
 | |
| 					</div><!-- .inside-article -->
 | |
| 				</article><!-- #post-## -->
 | |
| 
 | |
| 			<?php else : ?>
 | |
| 
 | |
| 				<?php
 | |
| 				// check if the repeater field has rows of data
 | |
| 				if( $sections && '' !== $sections ) :
 | |
| 
 | |
| 					// loop through the rows of data
 | |
| 					$i = 0;
 | |
| 					$return = '';
 | |
| 					foreach ( $sections['sections'] as $section ) :
 | |
| 						$i++;
 | |
| 
 | |
| 						// Get the values
 | |
| 						$box_type 			= ( isset( $section['box_type'] ) ) ? $section['box_type'] : 'fluid';
 | |
| 						$inner_box_type 	= ( isset( $section['inner_box_type'] ) ) ? $section['inner_box_type'] : 'contained';
 | |
| 						$custom_classes 	= ( isset( $section['custom_classes'] ) ) ? $section['custom_classes'] : '';
 | |
| 						$custom_id 			= ( isset( $section['custom_id'] ) ) ? $section['custom_id'] : '';
 | |
| 						$parallax_effect 	= ( isset( $section['parallax_effect'] ) ) ? $section['parallax_effect'] : '';
 | |
| 						$content 			= ( isset( $section['content'] ) ) ? apply_filters( 'generate_the_section_content', $section['content'] ) : '';
 | |
| 
 | |
| 						// Set up parallax
 | |
| 						$parallax = ( 'enable' == $parallax_effect ) ? ' enable-parallax' : '';
 | |
| 						$parallax_speed = apply_filters( 'generate_sections_parallax_speed', 6 );
 | |
| 						$parallax_data = ( 'enable' == $parallax_effect ) ? ' data-speed="' . intval( $parallax_speed ) . '"' : '';
 | |
| 
 | |
| 						// Set up custom classes
 | |
| 						$classes = ( ! empty( $custom_classes ) ) ? ' ' . sanitize_text_field( $custom_classes ) : '';
 | |
| 
 | |
| 						// Set up custom ID
 | |
| 						$custom_id = ( '' == $custom_id ) ? "generate-section-$i" : $custom_id;
 | |
| 
 | |
| 						// Create container arrays
 | |
| 						$container = array();
 | |
| 						$inner_container = array();
 | |
| 
 | |
| 						// Create container
 | |
| 						if ( 'contained' == $box_type ) :
 | |
| 							$container['before'] = '<div id="' . esc_attr( $custom_id ) . '" class="grid-container grid-parent generate-sections-container' . $parallax . $classes . '"' . $parallax_data . '>';
 | |
| 							$container['after'] = '</div>';
 | |
| 						else :
 | |
| 							$container['before'] = '<div id="' . esc_attr( $custom_id ) . '" class="generate-sections-container' . $parallax . $classes . '"' . $parallax_data . '>';
 | |
| 							$container['after'] = '</div>';
 | |
| 						endif;
 | |
| 
 | |
| 						// Create inner container
 | |
| 						if ( 'fluid' == $inner_box_type ) :
 | |
| 							$inner_container['before'] = '<div class="generate-sections-inside-container" itemprop="text">';
 | |
| 							$inner_container['after'] = '</div>';
 | |
| 						else :
 | |
| 							$inner_container['before'] = '<div class="grid-container grid-parent generate-sections-inside-container" itemprop="text">';
 | |
| 							$inner_container['after'] = '</div>';
 | |
| 						endif;
 | |
| 
 | |
| 						// Output the container
 | |
| 						$return .= $container['before'];
 | |
| 						$return .= $inner_container['before'];
 | |
| 
 | |
| 							// Output the content
 | |
| 							// Add \n\n to fix issue where paragraph wrapping was off
 | |
| 							$return .= "\n\n" . $content;
 | |
| 
 | |
| 						// Output the closing containers
 | |
| 						$return .= $container['after'];
 | |
| 						$return .= $inner_container['after'];
 | |
| 
 | |
| 					endforeach;
 | |
| 
 | |
| 					// Return our sections through the_content filter
 | |
| 					echo apply_filters( 'the_content', $return );
 | |
| 				else :
 | |
| 				?>
 | |
| 					<div class="generate-sections-inside-container inside-article">
 | |
| 						<div class="grid-container grid-parent generate-sections-inside-container inside-article">
 | |
| 							<?php _e( 'No sections added!', 'gp-premium' ); ?>
 | |
| 						</div>
 | |
| 					</div>
 | |
| 
 | |
| 
 | |
| 				<?php
 | |
| 				endif;
 | |
| 				?>
 | |
| 			<?php endif; ?>
 | |
| 			<?php do_action('generate_after_main_content'); ?>
 | |
| 		</main><!-- #main -->
 | |
| 	</div><!-- #primary -->
 | |
| 
 | |
| <?php
 | |
| if ( $sidebars) do_action('generate_sidebars');
 | |
| get_footer();
 |