/**
* Content 404 page
*
* @package Inc/Views/Main
*/
/**
* Class Hestia_Content_404
*/
class Hestia_Content_404 extends Hestia_Abstract_Main {
/**
* Init Content 404 view
*/
public function init() {
add_action( 'hestia_do_404', array( $this, 'render_404_page' ) );
}
/**
* Render 404 page.
*/
public function render_404_page() {
$default = hestia_get_blog_layout_default();
$sidebar_layout = apply_filters( 'hestia_sidebar_layout', get_theme_mod( 'hestia_blog_sidebar_layout', $default ) );
$wrap_class = apply_filters( 'hestia_filter_index_search_content_classes', 'col-md-8 blog-posts-wrap' );
$layout_classes = hestia_layout();
do_action( 'hestia_before_index_wrapper' );
echo '
';
echo '
';
echo '
';
do_action( 'hestia_before_index_posts_loop' );
echo '
';
if ( $sidebar_layout === 'sidebar-left' ) {
get_sidebar();
}
echo '
';
do_action( 'hestia_before_index_content' );
echo '
';
echo '';
echo '
';
echo '
';
esc_html_e( 'It seems we can’t find what you’re looking for. Perhaps searching can help.', 'hestia' );
echo '
';
get_search_form();
echo '
';
echo '
';
echo ' ';
echo '
';
if ( $sidebar_layout === 'sidebar-right' ) {
get_sidebar();
}
echo '
';
echo '
';
echo '
';
do_action( 'hestia_after_archive_content' );
}
}
/**
* Compatibility with Elementor Header Footer plugin.
*
* @package Hestia
*/
/**
* Class Hestia_Header_Footer_Elementor
*/
class Hestia_Header_Footer_Elementor extends Hestia_Abstract_Main {
/**
* Check if plugin is installed.
*/
private function should_load() {
if ( ! defined( 'ELEMENTOR_VERSION' ) ) {
return false;
}
if ( ! class_exists( 'Header_Footer_Elementor', false ) ) {
return false;
}
return true;
}
/**
* Init function.
*/
public function init() {
if ( ! $this->should_load() ) {
return;
}
$this->add_theme_builder_hooks();
}
/**
* Replace theme hooks with the one from the plugin.
*/
private function add_theme_builder_hooks() {
add_filter( 'body_class', array( $this, 'add_body_class' ) );
add_action( 'hestia_do_header', array( $this, 'do_header' ), 0 );
add_action( 'hestia_do_footer', array( $this, 'do_footer' ), 0 );
}
/**
* Add body class to know to disable parallax on header.
*
* @param array $classes Classes on body.
* @return array
*/
public function add_body_class( $classes ) {
$classes[] = 'header-footer-elementor';
return $classes;
}
/**
* Replace Header hooks.
*/
public function do_header() {
if ( ! hfe_header_enabled() ) {
return;
}
hfe_render_header();
remove_all_actions( 'hestia_do_header' );
remove_all_actions( 'hestia_do_top_bar' );
}
/**
* Replace Footer hooks.
*/
public function do_footer() {
if ( ! hfe_footer_enabled() ) {
return;
}
hfe_render_footer();
remove_all_actions( 'hestia_do_footer' );
}
}
Casilando Gambling establishment Remark 10 casino 21 casino 100 free spins Free Spins No-deposit + 100% to £300
rootAdmin4970
April 23, 2026
Master Chefs Gambling establishment lucky 88 win Bonus Codes & No deposit Bonuses 2026
rootAdmin4970
April 23, 2026
No-deposit Incentive Requirements & 100 percent fruit party slot free Gambling enterprise Also provides 2026
rootAdmin4970
April 23, 2026
King from 150 options local casino slot the fresh falcon huntress stardust your own Nile Harbors Comment: Delight in Egypt-inspired Online game by the Aristocrat We Put you within the Continue Command!
rootAdmin4970
April 23, 2026
Casilando Gambling establishment Remark 10 casino 21 casino 100 free spins Free Spins No-deposit + 100% to £300
rootAdmin4970
April 23, 2026
Master Chefs Gambling establishment lucky 88 win Bonus Codes & No deposit Bonuses 2026
rootAdmin4970
April 23, 2026
No-deposit Incentive Requirements & 100 percent fruit party slot free Gambling enterprise Also provides 2026
rootAdmin4970
April 23, 2026
King from 150 options local casino slot the fresh falcon huntress stardust your own Nile Harbors Comment: Delight in Egypt-inspired Online game by the Aristocrat We Put you within the Continue Command!
rootAdmin4970
April 23, 2026
/**
* Class that handle the show/hide hooks.
*
* @package Hestia
*/
/**
* Class Hestia_View_Hooks
*/
class Hestia_View_Hooks_With_Upsell {
/**
* Initialize function.
*/
public function init() {
if ( ! $this->should_load() ) {
return;
}
add_action( 'admin_bar_menu', array( $this, 'admin_bar_menu' ), 99 );
add_action( 'wp', array( $this, 'render_hook_placeholder' ) );
add_action( 'wp_head', array( $this, 'render_hook_placeholder_css' ) );
}
/**
* Check user role before allowing the class to run
*
* @return bool
*/
private function should_load() {
return current_user_can( 'administrator' );
}
/**
* Admin Bar Menu
*
* @param array $wp_admin_bar Admin bar menus.
*/
function admin_bar_menu( $wp_admin_bar = array() ) {
if ( is_admin() ) {
return;
}
$title = __( 'Show Hooks', 'hestia' );
$href = add_query_arg( 'hestia_preview_hook', 'show' );
if ( isset( $_GET['hestia_preview_hook'] ) && 'show' === $_GET['hestia_preview_hook'] ) {
$title = __( 'Hide Hooks', 'hestia' );
$href = remove_query_arg( 'hestia_preview_hook' );
}
$wp_admin_bar->add_menu(
array(
'title' => sprintf( '%s
', $title ),
'id' => 'hestia_preview_hook',
'parent' => false,
'href' => $href,
)
);
}
/**
* Beautify hook names.
*
* @param string $hook Hook name.
*
* @return string
*/
public static function beautify_hook( $hook ) {
$hook_label = str_replace( '_', ' ', $hook );
$hook_label = str_replace( 'hestia', ' ', $hook_label );
$hook_label = str_replace( 'woocommerce', ' ', $hook_label );
$hook_label = ucwords( $hook_label );
return $hook_label;
}
/**
* Render hook placeholder.
*/
public function render_hook_placeholder() {
if ( ! isset( $_GET['hestia_preview_hook'] ) || 'show' !== $_GET['hestia_preview_hook'] ) {
return;
}
$hooks = $this->hook_lists();
foreach ( $hooks as $hooks_in_category ) {
foreach ( $hooks_in_category as $hook_value ) {
$hook_label = self::beautify_hook( $hook_value );
add_action(
$hook_value,
function () use ( $hook_label ) {
echo '
';
echo '
';
echo '
' . esc_html( $hook_label ) . ' ';
echo '
';
echo '
';
echo '
';
}
);
}
}
}
/**
* Hook lists.
*/
private function hook_lists() {
$hooks = array(
'header' => array(
'hestia_before_header_content_hook',
'hestia_before_header_hook',
'hestia_after_header_hook',
'hestia_after_header_content_hook',
),
'footer' => array(
'hestia_before_footer_hook',
'hestia_after_footer_hook',
'hestia_before_footer_content_hook',
'hestia_after_footer_content_hook',
'hestia_before_footer_widgets_hook',
'hestia_after_footer_widgets_hook',
),
'frontpage' => array(
'hestia_before_big_title_section_hook',
'hestia_before_big_title_section_content_hook',
'hestia_top_big_title_section_content_hook',
'hestia_big_title_section_buttons',
'hestia_bottom_big_title_section_content_hook',
'hestia_after_big_title_section_content_hook',
'hestia_after_big_title_section_hook',
'hestia_before_team_section_hook',
'hestia_before_team_section_content_hook',
'hestia_top_team_section_content_hook',
'hestia_bottom_team_section_content_hook',
'hestia_after_team_section_content_hook',
'hestia_after_team_section_hook',
'hestia_before_features_section_hook',
'hestia_before_features_section_content_hook',
'hestia_top_features_section_content_hook',
'hestia_bottom_features_section_content_hook',
'hestia_after_features_section_content_hook',
'hestia_after_features_section_hook',
'hestia_before_pricing_section_hook',
'hestia_before_pricing_section_content_hook',
'hestia_top_pricing_section_content_hook',
'hestia_bottom_pricing_section_content_hook',
'hestia_after_pricing_section_content_hook',
'hestia_after_pricing_section_hook',
'hestia_before_about_section_hook',
'hestia_after_about_section_hook',
'hestia_before_shop_section_hook',
'hestia_before_shop_section_content_hook',
'hestia_top_shop_section_content_hook',
'hestia_bottom_shop_section_content_hook',
'hestia_after_shop_section_content_hook',
'hestia_after_shop_section_hook',
'hestia_before_testimonials_section_hook',
'hestia_before_testimonials_section_content_hook',
'hestia_top_testimonials_section_content_hook',
'hestia_bottom_testimonials_section_content_hook',
'hestia_after_testimonials_section_content_hook',
'hestia_after_testimonials_section_hook',
'hestia_before_subscribe_section_hook',
'hestia_before_subscribe_section_content_hook',
'hestia_top_subscribe_section_content_hook',
'hestia_bottom_subscribe_section_content_hook',
'hestia_after_subscribe_section_content_hook',
'hestia_after_subscribe_section_hook',
'hestia_before_blog_section_hook',
'hestia_before_blog_section_content_hook',
'hestia_top_blog_section_content_hook',
'hestia_bottom_blog_section_content_hook',
'hestia_after_blog_section_content_hook',
'hestia_after_blog_section_hook',
'hestia_before_contact_section_hook',
'hestia_before_contact_section_content_hook',
'hestia_top_contact_section_content_hook',
'hestia_bottom_contact_section_content_hook',
'hestia_after_contact_section_content_hook',
'hestia_after_contact_section_hook',
'hestia_before_portfolio_section_hook',
'hestia_before_portfolio_section_content_hook',
'hestia_top_portfolio_section_content_hook',
'hestia_bottom_portfolio_section_content_hook',
'hestia_after_portfolio_section_content_hook',
'hestia_after_portfolio_section_hook',
'hestia_before_clients_bar_section_hook',
'hestia_clients_bar_section_content_hook',
'hestia_after_clients_bar_section_hook',
'hestia_before_ribbon_section_hook',
'hestia_after_ribbon_section_hook',
),
'post' => array(
'hestia_before_single_post_article',
'hestia_after_single_post_article',
),
'page' => array(
'hestia_before_page_content',
),
'sidebar' => array(
'hestia_before_sidebar_content',
'hestia_after_sidebar_content',
),
'blog' => array(
'hestia_before_index_posts_loop',
'hestia_before_index_content',
'hestia_after_archive_content',
),
'pagination' => array(
'hestia_before_pagination',
'hestia_after_pagination',
),
);
return $hooks;
}
/**
* View hook page css.
*/
public function render_hook_placeholder_css() {
$css = '
.hestia-hook-wrapper {
text-align: center; width: 100%;
}
.hestia-hook-placeholder {
display: flex;
width: 98%;
justify-content: center;
align-items: center;
margin: 10px auto;
border: 2px dashed #A020F0;
font-size: 14px;
padding: 6px 10px;
text-align: left;
word-break: break-word;
color: #A020F0;
}
.hestia-hook-placeholder a, .hestia-hook-upsell a {
align-items: center;
justify-content: center;
min-width: 250px;
width: 100%;
font-size: 14px !important;
min-height: 32px;
text-decoration: none;
color: #A020F0 !important;
}
.hestia-hook-placeholder a:hover, .hestia-hook-upsell a:hover {
color: #A020F0 !important;
}
.hestia-hook-placeholder a:hover, .hestia-hook-placeholder a:focus {
text-decoration: none;
}
.hestia-hook-placeholder a:hover .hestia-hook-icon, .hestia-hook-placeholder a:focus .hestia-hook-icon {
box-shadow: inset 0 0 0 1px #A020F0;
color: #A020F0;
opacity: 1;
display: block;
}
.hestia-hook-placeholder a .hestia-hook-icon {
box-shadow: inset 0 0 0 1px #A020F0;
border-radius: 50%;
width: 20px;
height: 20px;
font-size: 16px;
padding: 3px 2px;
margin-left: -2px;
opacity: 0;
transform:rotate(360deg);
transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
position: absolute;
}
.hestia-hook-placeholder a .hestia-hook-label {
transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
font-size: 14px;
opacity: 1;
}
.hestia-hook-placeholder a:hover .hestia-hook-label, .hestia-hook-placeholder a:focus .hestia-hook-label {
opacity: 0;
}
.section-image .hestia-hook-wrapper {
position: relative;
z-index: 2;
}';
echo '';
}
}
Page not found – Lawyers Blog