138 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			138 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| <?php
 | |
| /**
 | |
|  * Template part for displaying a post of post type 'attachment'
 | |
|  *
 | |
|  * @package kadence
 | |
|  */
 | |
| 
 | |
| namespace Kadence;
 | |
| 
 | |
| if ( ! is_singular( 'attachment' ) ) {
 | |
| ?>
 | |
| 
 | |
| <article <?php post_class( 'entry content-bg loop-entry' ); ?>>
 | |
| 	<?php
 | |
| 		$defaults = array(
 | |
| 			'enabled'   => true,
 | |
| 			'ratio'     => '2-3',
 | |
| 			'size'      => 'medium_large',
 | |
| 			'imageLink' => true,
 | |
| 		);
 | |
| 		$slug            = ( is_search() ? 'search' : get_post_type() );
 | |
| 		$feature_element = kadence()->option( $slug . '_archive_element_feature', $defaults );
 | |
| 		if ( isset( $feature_element ) && is_array( $feature_element ) && true === $feature_element['enabled'] ) {
 | |
| 			$feature_element = wp_parse_args( $feature_element, $defaults );
 | |
| 			$ratio = ( isset( $feature_element['ratio'] ) && ! empty( $feature_element['ratio'] ) ? $feature_element['ratio'] : '2-3' );
 | |
| 			$size  = ( isset( $feature_element['size'] ) && ! empty( $feature_element['size'] ) ? $feature_element['size'] : 'medium_large' );
 | |
| 			if ( isset( $feature_element['imageLink'] ) && ! $feature_element['imageLink'] ) {
 | |
| 				?>
 | |
| 				<div class="post-thumbnail kadence-thumbnail-ratio-<?php echo esc_attr( $ratio ); ?>">
 | |
| 					<div class="post-thumbnail-inner">
 | |
| 						<?php
 | |
| 						echo wp_get_attachment_image(
 | |
| 							get_the_ID(),
 | |
| 							$size,
 | |
| 							false,
 | |
| 							array(
 | |
| 								'alt' => the_title_attribute(
 | |
| 									array(
 | |
| 										'echo' => false,
 | |
| 									)
 | |
| 								),
 | |
| 							)
 | |
| 						);
 | |
| 						?>
 | |
| 					</div>
 | |
| 				</div><!-- .post-thumbnail -->
 | |
| 				<?php
 | |
| 			} else {
 | |
| 				?>
 | |
| 				<a class="post-thumbnail kadence-thumbnail-ratio-<?php echo esc_attr( $ratio ); ?>" href="<?php the_permalink(); ?>">
 | |
| 					<div class="post-thumbnail-inner">
 | |
| 						<?php
 | |
| 						echo wp_get_attachment_image(
 | |
| 							get_the_ID(),
 | |
| 							$size,
 | |
| 							false,
 | |
| 							array(
 | |
| 								'alt' => the_title_attribute(
 | |
| 									array(
 | |
| 										'echo' => false,
 | |
| 									)
 | |
| 								),
 | |
| 							)
 | |
| 						);
 | |
| 						?>
 | |
| 					</div>
 | |
| 				</a><!-- .post-thumbnail -->
 | |
| 				<?php
 | |
| 			}
 | |
| 		}		
 | |
| 	?>
 | |
| 	<div class="entry-content-wrap">
 | |
| 		<?php
 | |
| 		/**
 | |
| 		 * Hook for entry content.
 | |
| 		 *
 | |
| 		 * @hooked Kadence\loop_entry_header - 10
 | |
| 		 * @hooked Kadence\loop_entry_summary - 20
 | |
| 		 * @hooked Kadence\loop_entry_footer - 30
 | |
| 		 */
 | |
| 		do_action( 'kadence_loop_entry_content' );
 | |
| 		?>
 | |
| 	</div>
 | |
| </article>
 | |
| 
 | |
| <?php
 | |
| }
 | |
| if ( is_singular( 'attachment' ) ) {
 | |
| ?>
 | |
| 
 | |
| <article id="post-<?php the_ID(); ?>" <?php post_class( 'entry' ); ?>>
 | |
| 	<?php get_template_part( 'template-parts/content/entry_header', get_post_type() ); ?>
 | |
| 
 | |
| 	<?php get_template_part( 'template-parts/content/entry_content', get_post_type() ); ?>
 | |
| 
 | |
| 	<?php get_template_part( 'template-parts/content/entry_footer', get_post_type() ); ?>
 | |
| </article><!-- #post-<?php the_ID(); ?> -->
 | |
| 
 | |
| <?php
 | |
| }
 | |
| if ( is_singular( get_post_type() ) ) {
 | |
| 	// Show attachment navigation only when the attachment has a parent.
 | |
| 	if ( ! empty( $post->post_parent ) ) {
 | |
| 
 | |
| 		// TODO: There should be a WordPress core function for this, similar to `the_post_navigation()`.
 | |
| 		$attachment_navigation = '';
 | |
| 
 | |
| 		ob_start();
 | |
| 		previous_image_link( false );
 | |
| 		$prev_link = ob_get_clean();
 | |
| 		if ( ! empty( $prev_link ) ) {
 | |
| 			$attachment_navigation .= '<div class="nav-previous">';
 | |
| 			$attachment_navigation .= '<div class="post-navigation-sub"><span>' . esc_html__( 'Previous:', 'kadence' ) . '</span></div>';
 | |
| 			$attachment_navigation .= $prev_link;
 | |
| 			$attachment_navigation .= '</div>';
 | |
| 		}
 | |
| 
 | |
| 		ob_start();
 | |
| 		next_image_link( false );
 | |
| 		$next_link = ob_get_clean();
 | |
| 		if ( ! empty( $next_link ) ) {
 | |
| 			$attachment_navigation .= '<div class="nav-next">';
 | |
| 			$attachment_navigation .= '<div class="post-navigation-sub"><span>' . esc_html__( 'Next:', 'kadence' ) . '</span></div>';
 | |
| 			$attachment_navigation .= $next_link;
 | |
| 			$attachment_navigation .= '</div>';
 | |
| 		}
 | |
| 
 | |
| 		if ( ! empty( $attachment_navigation ) ) {
 | |
| 			echo _navigation_markup( $attachment_navigation, $class = 'post-navigation', __( 'Post navigation', 'kadence' ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 	// Show comments only when the post type supports it and when comments are open or at least one comment exists.
 | |
| 	if ( post_type_supports( get_post_type(), 'comments' ) && ( comments_open() || get_comments_number() ) ) {
 | |
| 		comments_template();
 | |
| 	}
 | |
| }
 |