settings['footer_box_border'] ?? '';
if ( 'yes' === $box_border ) {
$layout_classnames .= ' has-box-border';
}
$render_attributes = [
'class' => $layout_classnames,
];
$this->widget->add_render_attribute( 'layout', $render_attributes );
$this->maybe_add_advanced_attributes();
?>
settings['advanced_custom_css_id'];
$advanced_css_classes = $this->settings['advanced_custom_css_classes'];
$wrapper_render_attributes = [];
if ( ! empty( $advanced_css_classes ) ) {
$wrapper_render_attributes['class'] = $advanced_css_classes;
}
if ( ! empty( $advanced_css_id ) ) {
$wrapper_render_attributes['id'] = $advanced_css_id;
}
if ( empty( $wrapper_render_attributes ) ) {
return;
}
$this->widget->add_render_attribute( '_wrapper', $wrapper_render_attributes );
}
public function render_side_content(): void {
$description_text = $this->settings['footer_description'];
$description_tag = $this->settings['footer_description_tag'] ?? 'p';
$has_description = '' !== $description_text;
?>
settings['site_logo_image'];
$site_title_text = $this->widget->get_site_title();
$site_title_tag = $this->settings['site_logo_title_tag'] ?? 'h2';
$site_link_classnames = self::SITE_LINK_CLASSNAME;
$this->widget->add_render_attribute( 'site-link', [
'class' => $site_link_classnames,
] );
$site_link = $this->get_link_url();
if ( $site_link ) {
$this->widget->add_link_attributes( 'site-link', $site_link );
}
if ( $site_logo_image ) {
$this->settings['site_logo_image'] = $this->widget->add_site_logo_if_present( $this->settings['site_logo_image'] );
}
?>
widget->print_render_attribute_string( 'site-link' ); ?>>
settings, 'site_logo_image' ); ?>
%4$s%1$s>', Utils::validate_html_tag( $site_title_tag ), $this->widget->get_render_attribute_string( 'heading' ), 'class="ehp-footer__site-title"', esc_html( $site_title_text ) );
// Escaped above
Utils::print_unescaped_internal_string( $site_title_output );
} ?>
settings['footer_icons'] ?? [];
$icon_hover_animation = $this->settings['social_icons_hover_animation'] ?? '';
$footer_icons_classnames = 'ehp-footer__social-icons';
if ( empty( $icons ) ) {
return;
}
$this->widget->add_render_attribute( 'icons', [
'class' => $footer_icons_classnames,
] );
?>
widget->print_render_attribute_string( 'icons' ); ?>>
$icon ) {
$link = $icon['footer_icon_link'];
$text = $icon['footer_icon_text'];
$selected_icon = $icon['footer_selected_icon'];
$icon_classnames = 'ehp-footer__social-icon';
if ( $icon_hover_animation ) {
$icon_classnames .= ' elementor-animation-' . $icon_hover_animation;
}
$this->widget->add_render_attribute( 'icon-' . $key, [
'class' => $icon_classnames,
'aria-label' => esc_html( $text ),
] );
$this->widget->add_link_attributes( 'icon-' . $key, $link );
?>
widget->print_render_attribute_string( 'icon-' . $key ); ?>>
'true' ] ); ?>
widget->get_available_menus();
$menu_classname = 'ehp-footer__menu';
$menu_heading = $this->settings['footer_menu_heading'];
$menu_heading_tag = $this->settings['footer_menu_heading_tag'] ?? 'h6';
$has_menu_heading = '' !== $menu_heading;
if ( ! $available_menus ) {
return;
}
$args = [
'echo' => false,
'menu' => $this->settings['navigation_menu'],
'menu_class' => $menu_classname,
'menu_id' => 'menu-' . $this->widget->get_and_advance_nav_menu_index() . '-' . $this->widget->get_id(),
'fallback_cb' => '__return_empty_string',
'container' => '',
'depth' => 1,
];
add_filter( 'nav_menu_link_attributes', [ $this, 'handle_link_classes' ], 10, 4 );
$menu_html = wp_nav_menu( $args );
remove_filter( 'nav_menu_link_attributes', [ $this, 'handle_link_classes' ] );
if ( empty( $menu_html ) ) {
return;
}
if ( $this->settings['footer_menu_heading'] ) {
$this->widget->add_render_attribute( 'main-menu', 'aria-label', $this->settings['footer_menu_heading'] );
}
$this->widget->add_render_attribute( 'main-menu', [
'class' => 'ehp-footer__navigation',
] );
?>
settings['footer_contact_heading'];
$contact_tag = $this->settings['footer_contact_heading_tag'] ?? 'p';
$has_contact = '' !== $contact_text;
$contact_information_text = $this->settings['footer_contact_information'];
$contact_information_tag = $this->settings['footer_contact_information_tag'] ?? 'p';
$has_contact_information = '' !== $contact_information_text;
$this->widget->add_render_attribute( 'contact', [
'class' => 'ehp-footer__contact',
] );
?>
settings['footer_copyright'];
$copyright_tag = $this->settings['footer_copyright_tag'] ?? 'p';
$has_copyright = '' !== $copyright_text;
?>
$this->widget->get_site_url() ];
}
public function handle_link_classes( $atts, $item ) {
$classes = 'ehp-footer__menu-item';
$is_anchor = false !== strpos( $atts['href'], '#' );
$has_hover_animation = $this->settings['style_navigation_hover_animation'] ?? '';
if ( $has_hover_animation ) {
$classes .= ' elementor-animation-' . $has_hover_animation;
}
if ( ! $is_anchor && in_array( 'current-menu-item', $item->classes, true ) ) {
$classes .= ' is-item-active';
}
if ( $is_anchor ) {
$classes .= ' is-item-anchor';
}
if ( empty( $atts['class'] ) ) {
$atts['class'] = $classes;
} else {
$atts['class'] .= ' ' . $classes;
}
return $atts;
}
public function __construct( Ehp_Footer $widget ) {
$this->widget = $widget;
$this->settings = $widget->get_settings_for_display();
}
}