Advertisement
Guenni007

footer

Nov 17th, 2024
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 10.55 KB | None | 0 0
  1. <?php
  2. if( ! defined( 'ABSPATH' ) ) {  exit;  }    // Exit if accessed directly
  3.  
  4. /*
  5. * Please do not modify this file on your child theme to add scripts to Footer (before closing of Body tag) section.
  6. * Refer to this post - https://kriesi.at/documentation/enfold/add-custom-js-or-php-script/#add-a-script-to-footer-section and use functions.php file instead
  7. */
  8.  
  9. global $avia_config;
  10.  
  11. /* new position of ending the main container   see lines 311 - 317 ********/
  12. ?>
  13. <!-- end main -->
  14. </div>
  15. <?php
  16.  
  17.  
  18.         /**
  19.          * Fixes a bug started with WP 5.8.1
  20.          */
  21.          if( ! isset( $the_id ) )
  22.          {
  23.              $the_id = avia_get_the_id();
  24.          }
  25.  
  26.         /**
  27.          * Fired before footer output starts
  28.          *
  29.          * @since ???
  30.          */
  31.         do_action( 'ava_before_footer' );
  32.  
  33.         $blank = isset( $avia_config['template'] ) ? $avia_config['template'] : '';
  34.  
  35.         //  reset wordpress query in case we modified it
  36.         wp_reset_query();
  37.  
  38.         //  get link to previous and next post/portfolio entry
  39.         $avia_post_nav = avia_post_nav();
  40.  
  41.         //  set in header.php
  42.         $footer_option = $avia_config['footer_option'];
  43.  
  44.         if( 'nofooterarea' != $footer_option && 'curtain_footer' == $avia_config['footer_behavior'] )
  45.         {
  46.             $data = is_numeric( $avia_config['footer_media'] ) ? " data-footer_max_height='{$avia_config['footer_media']}'" : '';
  47.  
  48.             echo '<div class="av-curtain-footer-container"' . $data . '>';
  49.         }
  50.  
  51.         /**
  52.          * Fired after a possible footer container has been added and actual footer output starts
  53.          *
  54. .        * @since 4.8.6.3
  55.          */
  56.         do_action( 'ava_before_footer_output' );
  57.  
  58.         /*
  59.          * Check if we should display a page content as footer
  60.          */
  61.         if( ! $blank && in_array( $footer_option, array( 'page_in_footer_socket', 'page_in_footer' ) ) )
  62.         {
  63.             /**
  64.              * Allows 3rd parties to change page id's, e.g. translation plugins
  65.              */
  66.             $post = AviaCustomPages()->get_custom_page_object( 'footer_page', '' );
  67.  
  68.             if( ( $post instanceof WP_Post ) && ( $post->ID != $the_id ) )
  69.             {
  70.                 /**
  71.                  * Make sure that footerpage is set to fullwidth
  72.                  */
  73.                 $old_avia_config = $avia_config;
  74.  
  75.                 $avia_config['layout']['current'] = array(
  76.                                             'content'   => 'av-content-full alpha',
  77.                                             'sidebar'   => 'hidden',
  78.                                             'meta'      => '',
  79.                                             'entry'     => '',
  80.                                             'main'      => 'fullsize'
  81.                                         );
  82.  
  83.                 $builder_stat = ( 'active' == Avia_Builder()->get_alb_builder_status( $post->ID ) );
  84.                 $avia_config['conditionals']['is_builder'] = $builder_stat;
  85.                 $avia_config['conditionals']['is_builder_template'] = $builder_stat;
  86.  
  87.                 /**
  88.                  * @used_by         config-bbpress\config.php
  89.                  * @since 4.5.6.1
  90.                  * @param WP_Post $post
  91.                  * @param int $the_id
  92.                  */
  93.                 do_action( 'ava_before_page_in_footer_compile', $post, $the_id );
  94.  
  95.                 $content = Avia_Builder()->compile_post_content( $post );
  96.  
  97.                 /**
  98.                  * Remove leading <p> tag that is added by 'the_content' filter
  99.                  * https://kriesi.at/support/topic/small-gutenburg-issue/
  100.                  *
  101.                  * @since 4.8.8
  102.                  */
  103.                 $content = trim( $content );
  104.                 if( 0 === strpos( $content, '<p>' ) )
  105.                 {
  106.                     $content = substr( $content, 3 );
  107.                 }
  108.  
  109.                 $avia_config = $old_avia_config;
  110.  
  111.                 /**
  112.                  * @since 4.7.4.1
  113.                  * @param string
  114.                  * @param WP_Post $post
  115.                  * @param int $the_id
  116.                  */
  117.                 $extra_class = apply_filters( 'avf_page_as_footer_extra_classes', 'footer-page-content footer_color', $post, $the_id );
  118.  
  119.                 /**
  120.                  * Wrap footer page in case we need extra CSS changes
  121.                  *
  122.                  * @since 4.7.4.1
  123.                  */
  124.                 echo '<div class="' . $extra_class . '" id="footer-page">';
  125.                 echo    $content;
  126.                 echo '</div>';
  127.             }
  128.         }
  129.  
  130.         /**
  131.          * Check if we should display a footer
  132.          */
  133.         if( ! $blank && $footer_option != 'nofooterarea' )
  134.         {
  135.             if( in_array( $footer_option, array( 'all', 'nosocket' ) ) )
  136.             {
  137.                 //get columns
  138.                 $columns = avia_get_option('footer_columns');
  139.         ?>
  140.                 <div class='container_wrap footer_color' id='footer'>
  141.  
  142.                     <div class='container'>
  143.  
  144.                         <?php
  145.                         do_action('avia_before_footer_columns');
  146.  
  147.                         //create the footer columns by iterating
  148.                         switch( $columns )
  149.                         {
  150.                             case 1:
  151.                                 $class = '';
  152.                                 break;
  153.                             case 2:
  154.                                 $class = 'av_one_half';
  155.                                 break;
  156.                             case 3:
  157.                                 $class = 'av_one_third';
  158.                                 break;
  159.                             case 4:
  160.                                 $class = 'av_one_fourth';
  161.                                 break;
  162.                             case 5:
  163.                                 $class = 'av_one_fifth';
  164.                                 break;
  165.                             case 6:
  166.                                 $class = 'av_one_sixth';
  167.                                 break;
  168.                             default:
  169.                                 $class = '';
  170.                                 break;
  171.                         }
  172.  
  173.                         $firstCol = "first el_before_{$class}";
  174.  
  175.                         //display the footer widget that was defined at appearenace->widgets in the wordpress backend
  176.                         //if no widget is defined display a dummy widget, located at the bottom of includes/register-widget-area.php
  177.                         for( $i = 1; $i <= $columns; $i++ )
  178.                         {
  179.                             $class2 = ''; // initialized to avoid php notices
  180.                             if( $i != 1 )
  181.                             {
  182.                                 $class2 = " el_after_{$class} el_before_{$class}";
  183.                             }
  184.  
  185.                             echo "<div class='flex_column {$class} {$class2} {$firstCol}'>";
  186.  
  187.                             if( ! ( function_exists( 'dynamic_sidebar' ) && dynamic_sidebar( 'Footer - Column ' . $i ) ) )
  188.                             {
  189.                                 avia_dummy_widget( $i );
  190.                             }
  191.  
  192.                             echo '</div>';
  193.  
  194.                             $firstCol = '';
  195.                         }
  196.  
  197.                         do_action( 'avia_after_footer_columns' );
  198.  
  199.     ?>
  200.  
  201.                     </div>
  202.  
  203.                 <!-- ####### END FOOTER CONTAINER ####### -->
  204.                 </div>
  205.  
  206.     <?php   } //endif   array( 'all', 'nosocket' ) ?>
  207.  
  208.  
  209.     <?php
  210.  
  211.             //copyright
  212.             $copyright = do_shortcode( avia_get_option( 'copyright', '&copy; ' . __( 'Copyright', 'avia_framework' ) . "  - <a href='" . home_url( '/' ) . "'>" . get_bloginfo('name') . '</a>' ) );
  213.  
  214.             // you can filter and remove the backlink with an add_filter function
  215.             // from your themes (or child themes) functions.php file if you dont want to edit this file
  216.             // you can also remove the kriesi.at backlink by adding [nolink] to your custom copyright field in the admin area
  217.             // you can also just keep that link. I really do appreciate it ;)
  218.             $kriesi_at_backlink = kriesi_backlink( get_option( THEMENAMECLEAN . "_initial_version" ), 'Enfold' );
  219.  
  220.  
  221.             if( $copyright && strpos( $copyright, '[nolink]' ) !== false )
  222.             {
  223.                 $kriesi_at_backlink = '';
  224.                 $copyright = str_replace( '[nolink]', '', $copyright );
  225.             }
  226.  
  227.             /**
  228.              * @since 4.5.7.2
  229.              * @param string $copyright
  230.              * @param string $copyright_option
  231.              * @return string
  232.              */
  233.             $copyright_option = avia_get_option( 'copyright' );
  234.             $copyright = apply_filters( 'avf_copyright_info', $copyright, $copyright_option );
  235.  
  236.             if( in_array( $footer_option, array( 'all', 'nofooterwidgets', 'page_in_footer_socket' ) ) )
  237.             {
  238.  
  239.                 $aria_label = 'aria-label="' . __( 'Copyright and company info', 'avia_framework' ) . '"';
  240.  
  241.                 /**
  242.                  * @since 6.0.3
  243.                  * @param string $aria_label
  244.                  * @param string $context
  245.                  * @param mixed $additional_args
  246.                  * @return string
  247.                  */
  248.                 $aria_label = apply_filters( 'avf_aria_label_for_footer', $aria_label, __FILE__, null );
  249.  
  250.             ?>
  251.  
  252.                 <footer class='container_wrap socket_color' id='socket' <?php echo $aria_label . ' ' . avia_markup_helper( array( 'context' => 'footer' ) ); ?>>
  253.                     <div class='container'>
  254.  
  255.                         <span class='copyright'><?php echo $copyright . $kriesi_at_backlink; ?></span>
  256.  
  257.                         <?php
  258.                             if( avia_get_option( 'footer_social', 'disabled' ) != 'disabled' )
  259.                             {
  260.                                 $social_args = array( 'outside'=>'ul', 'inside'=>'li', 'append' => '' );
  261.                                 echo avia_social_media_icons( $social_args, false );
  262.                             }
  263.  
  264.                             $avia_theme_location = 'avia3';
  265.                             $avia_menu_class = $avia_theme_location . '-menu';
  266.  
  267.                             $args = array(
  268.                                         'theme_location'    => $avia_theme_location,
  269.                                         'menu_id'           => $avia_menu_class,
  270.                                         'container_class'   => $avia_menu_class,
  271.                                         'items_wrap'        => '<ul role="menu" class="%2$s" id="%1$s">%3$s</ul>',
  272.                                         'fallback_cb'       => '',
  273.                                         'depth'             => 1,
  274.                                         'echo'              => false,
  275.                                         'walker'            => new avia_responsive_mega_menu( array( 'megamenu' => 'disabled' ) )
  276.                                     );
  277.  
  278.                             $menu = wp_nav_menu( $args );
  279.  
  280.                             if( $menu )
  281.                             {
  282.                                 echo "<nav class='sub_menu_socket' " . avia_markup_helper( array( 'context' => 'nav', 'echo' => false ) ) . '>';
  283.                                 echo    $menu;
  284.                                 echo '</nav>';
  285.                             }
  286.                         ?>
  287.  
  288.                     </div>
  289.  
  290.                 <!-- ####### END SOCKET CONTAINER ####### -->
  291.                 </footer>
  292.  
  293.  
  294.             <?php
  295.             } //end nosocket check - array( 'all', 'nofooterwidgets', 'page_in_footer_socket' )
  296.  
  297.         } //end blank & nofooterarea check
  298.  
  299.         /**
  300.          * Fired before a possible footer container is closed
  301.          *
  302. .        * @since 4.8.6.3
  303.          */
  304.         do_action( 'ava_after_footer_output' );
  305.  
  306.         if( 'nofooterarea' != $footer_option && 'curtain_footer' == $avia_config['footer_behavior'] )
  307.         {
  308.             echo '</div>';  //  class="av-curtain-footer-container"
  309.         }
  310.  
  311. /*************************
  312. ?>
  313. <!-- end main -->
  314. </div>
  315.  
  316. <?php
  317. *************************/
  318.  
  319.         /**
  320.          * Fired after footer container is closed
  321.          *
  322. .        * @since 4.8.6.3
  323.          */
  324.         do_action( 'ava_after_footer' );
  325.  
  326.         //display link to previous and next portfolio entry
  327.         echo    $avia_post_nav;
  328.  
  329.         echo "<!-- end wrap_all --></div>";
  330.  
  331.  
  332.         if( isset( $avia_config['fullscreen_image'] ) )
  333.         { ?>
  334.             <!--[if lte IE 8]>
  335.             <style type="text/css">
  336.             .bg_container {
  337.             -ms-filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='<?php echo $avia_config['fullscreen_image']; ?>', sizingMethod='scale')";
  338.             filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='<?php echo $avia_config['fullscreen_image']; ?>', sizingMethod='scale');
  339.             }
  340.             </style>
  341.             <![endif]-->
  342.         <?php
  343.             echo "<div class='bg_container' style='background-image:url(" . $avia_config['fullscreen_image'] . ");'></div>";
  344.         }
  345.     ?>
  346.  
  347.  
  348. <a href='#top' title='<?php _e( 'Scroll to top', 'avia_framework' ); ?>' id='scroll-top-link' <?php echo av_icon_string( 'scrolltop' ); ?> tabindex='-1'><span class="avia_hidden_link_text"><?php _e( 'Scroll to top', 'avia_framework' ); ?></span></a>
  349.  
  350. <div id="fb-root"></div>
  351.  
  352. <?php
  353.  
  354.     /* Always have wp_footer() just before the closing </body>
  355.      * tag of your theme, or you will break many plugins, which
  356.      * generally use this hook to reference JavaScript files.
  357.      */
  358.     wp_footer();
  359.  
  360. ?>
  361. </body>
  362. </html>
  363.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement