'', /*============================ Next Preview Settings ============================*/ 'layout' => 'style1', 'headingEnable' => true, 'imageShow' => true, 'titleShow' => true, 'dateShow' => true, 'navDivider' => false, 'iconShow' => true, /*============================ Navigation ============================*/ 'titlePosition' => true, // Previous 'prevHeadText' => 'Previous Post', // Next 'nextHeadText' => 'Next Post', /*============================ Divider Setting/Style ============================*/ 'dividerBorderShape' => true, /*============================ Arrow Icon ============================*/ 'arrowIconStyle' => 'Angle2', /*============================ Advance Setting ============================*/ 'advanceId' => '', 'advanceZindex' => '', 'hideExtraLarge' => false, 'hideDesktop' => false, 'hideTablet' => false, 'hideMobile' => false, 'advanceCss' => '', ); } public function register() { register_block_type( 'ultimate-post/next-previous', array( 'editor_script' => 'ultp-blocks-editor-script', 'editor_style' => 'ultp-blocks-editor-css', 'render_callback' => array($this, 'content') ) ); } public function content($attr, $noAjax) { $attr = wp_parse_args($attr, $this->get_attributes()); $block_name = 'next-previous'; $wrapper_before = $wrapper_after = $content = $next_prev_img = ''; if($attr["imageShow"]){ $next_prev_img .= "next-prev-img"; } $attr['className'] = isset($attr['className']) && $attr['className'] ? preg_replace('/[^A-Za-z0-9_ -]/', '', $attr['className']) : ''; $attr['align'] = isset($attr['align']) && $attr['align'] ? preg_replace('/[^A-Za-z0-9_ -]/', '', $attr['align']) : ''; $attr['advanceId'] = isset($attr['advanceId']) ? sanitize_html_class( $attr['advanceId'] ) : ''; $attr['blockId'] = isset($attr['blockId']) ? sanitize_html_class( $attr['blockId'] ) : ''; $attr['arrowIconStyle'] = sanitize_html_class( $attr['arrowIconStyle'] ); $attr['layout'] = sanitize_html_class( $attr['layout'] ); $allowed_html_tags = ultimate_post()->ultp_allowed_html_tags(); $attr['prevHeadText'] = wp_kses($attr['prevHeadText'], $allowed_html_tags); $attr['nextHeadText'] = wp_kses($attr['nextHeadText'], $allowed_html_tags); $arrowLeft = ''.ultimate_post()->svg_icon('left'.$attr['arrowIconStyle']).''; $arrowRight = ''.ultimate_post()->svg_icon('right'.$attr['arrowIconStyle']).''; $wrapper_before .= '
'; $wrapper_before .= '
'; $content .= '
'; $content .= $this->renderHtml($attr, $arrowLeft, $arrowRight, true); if ($attr['navDivider'] && $attr['dividerBorderShape']) { $content .= ''; } $content .= $this->renderHtml($attr, $arrowLeft, $arrowRight, false); $content .= '
'; $wrapper_after .= '
'; $wrapper_after .= '
'; return $wrapper_before.$content.$wrapper_after; } public function renderHtml($attr, $arrowLeft, $arrowRight, $left) { $output = ''; $post_data = $left ? get_previous_post() : get_next_post(); if ($post_data) { $img_overlay = $attr['iconShow'] && $attr['layout'] == 'style2' ? " ultp-npb-overlay" : ''; $imageData = '
'; $imageData .= ($attr['iconShow'] && $attr['layout'] == 'style2') ? ($left ? $arrowLeft : $arrowRight) : ''; if (has_post_thumbnail($post_data->ID)) { $imageData .= $attr['imageShow'] ? get_the_post_thumbnail($post_data->ID) : ''; } $imageData .= '
'; $output .= ''; if ($attr['headingEnable'] && !$attr['titlePosition'] && ( $attr['layout'] == 'style2' )) { $output .= '
'.($left ? $attr['prevHeadText'] : $attr['nextHeadText']).'
'; } if ($left && $attr['iconShow'] && $attr['layout'] != 'style2') { $output .= $arrowLeft; } $output .= '
'; if ($attr['headingEnable'] && !$attr['titlePosition'] && $attr['layout'] != 'style2') { $output .= '
'.($left ? $attr['prevHeadText'] : $attr['nextHeadText']).'
'; } $output .= '
'; if ($left) { $output .= $imageData; } if ($left == false && $attr['layout'] == 'style3' ) { $output .= $imageData; } $output .= '
'; if ($attr['headingEnable'] && $attr['titlePosition']) { $output .= '
'.($left ? $attr['prevHeadText'] : $attr['nextHeadText']).'
'; } if ($attr['dateShow']) { $output .= '
'.get_the_date(get_option('date_format'), $post_data->ID).'
'; } if ($attr['titleShow']) { $output .= '
'.get_the_title($post_data->ID).'
'; } $output .= '
'; if ($left == false && $attr['layout'] != 'style3' ) { $output .= ''.$imageData.''; } $output .= '
'; $output .= '
'; if ($left == false && $attr['iconShow'] && $attr['layout'] != 'style2') { $output .= $arrowRight; } $output .= '
'; } return $output; } }