Error
Class 'Vioma\FeedException' not found Error thrown with message "Class 'Vioma\FeedException' not found" Stacktrace: #25 Error in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/vioma/src/Request.php:122 #24 Vioma\Request:fetch in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/vioma/src/Vioma.php:73 #23 Vioma\Vioma:load in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/config/helpers.php:1072 #22 vioma in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php:59 #21 {closure} in [internal]:0 #20 array_map in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php:72 #19 {closure} in /srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php:324 #18 WP_Hook:apply_filters in /srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php:205 #17 apply_filters in /srv/data/htdocs/mf/ostseeblick/wp-content/plugins/sitepress-multilingual-cms/sitepress.class.php:3048 #16 SitePress:get_ls_languages in /srv/data/htdocs/mf/ostseeblick/wp-content/plugins/sitepress-multilingual-cms/classes/class-wpml-browser-redirect.php:35 #15 WPML_Browser_Redirect:enqueue_scripts in /srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php:324 #14 WP_Hook:apply_filters in /srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php:348 #13 WP_Hook:do_action in /srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php:517 #12 do_action in /srv/data/htdocs/mf/ostseeblick/wp-includes/script-loader.php:2262 #11 wp_enqueue_scripts in /srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php:324 #10 WP_Hook:apply_filters in /srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php:348 #9 WP_Hook:do_action in /srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php:517 #8 do_action in /srv/data/htdocs/mf/ostseeblick/wp-includes/general-template.php:3052 #7 wp_head in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/header.php:30 #6 require_once in /srv/data/htdocs/mf/ostseeblick/wp-includes/template.php:790 #5 load_template in /srv/data/htdocs/mf/ostseeblick/wp-includes/template.php:725 #4 locate_template in /srv/data/htdocs/mf/ostseeblick/wp-includes/general-template.php:48 #3 get_header in /srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php:257 #2 include in /srv/data/htdocs/mf/ostseeblick/wp-includes/template-loader.php:106 #1 require_once in /srv/data/htdocs/mf/ostseeblick/wp-blog-header.php:19 #0 require in /srv/data/htdocs/mf/ostseeblick/index.php:17
Stack frames (26)
25
Error
/vioma/src/Request.php122
24
Vioma\Request fetch
/vioma/src/Vioma.php73
23
Vioma\Vioma load
/config/helpers.php1072
22
vioma
/pieces/vioma/package.php59
21
{closure}
[internal]0
20
array_map
/pieces/vioma/package.php72
19
{closure}
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php324
18
WP_Hook apply_filters
/srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php205
17
apply_filters
/srv/data/htdocs/mf/ostseeblick/wp-content/plugins/sitepress-multilingual-cms/sitepress.class.php3048
16
SitePress get_ls_languages
/srv/data/htdocs/mf/ostseeblick/wp-content/plugins/sitepress-multilingual-cms/classes/class-wpml-browser-redirect.php35
15
WPML_Browser_Redirect enqueue_scripts
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php324
14
WP_Hook apply_filters
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php348
13
WP_Hook do_action
/srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php517
12
do_action
/srv/data/htdocs/mf/ostseeblick/wp-includes/script-loader.php2262
11
wp_enqueue_scripts
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php324
10
WP_Hook apply_filters
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php348
9
WP_Hook do_action
/srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php517
8
do_action
/srv/data/htdocs/mf/ostseeblick/wp-includes/general-template.php3052
7
wp_head
/header.php30
6
require_once
/srv/data/htdocs/mf/ostseeblick/wp-includes/template.php790
5
load_template
/srv/data/htdocs/mf/ostseeblick/wp-includes/template.php725
4
locate_template
/srv/data/htdocs/mf/ostseeblick/wp-includes/general-template.php48
3
get_header
/pieces/vioma/package.php257
2
include
/srv/data/htdocs/mf/ostseeblick/wp-includes/template-loader.php106
1
require_once
/srv/data/htdocs/mf/ostseeblick/wp-blog-header.php19
0
require
/srv/data/htdocs/mf/ostseeblick/index.php17
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/vioma/src/Request.php
 
        return $this;
    }
 
    public function getCacheId(): string
    {
        return sha1($this->url.'?'.http_build_query($this->params));
    }
 
    public function fetch(): ?string
    {
        $client = new Client();
 
        try {
            $response = $client->request('GET', $this->url, [
                'allow_redirects' => true,
                'query' => $this->params
            ]);
        } catch (RequestException $e) {
            throw new FeedException(
                Message::toString($e->getRequest()),
                $e->hasResponse() ? Message::toString($e->getResponse()) : null
            );
        }
 
        return (string) $response->getBody();
    }
}
 
Arguments
  1. "Class 'Vioma\FeedException' not found"
    
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/vioma/src/Vioma.php
        ?PsrLoggerInterface $logger = null
    ) {
        $this->cache = $cache;
 
        if ($logger) {
            $this->setLogger($logger);
        }
    }
 
    public function load(RequestInterface $request, bool $caching = true): ?Feed
    {
        if ($caching && $this->cache) {
            $cacheItem = $this->cache->getItem($request->getCacheId());
            if ($cacheItem->isHit()) {
                return $this->getSerializer()->deserialize($cacheItem->get(), Feed::class, 'xml');
                // return $cacheItem->get();
            }
        }
 
        if ($xml = $request->fetch()) {
            $xml = $this->sanitize($xml);
 
            /** @var Feed $feed */
            $feed = $this->getSerializer()->deserialize($xml, Feed::class, 'xml');
 
            if ($caching && $this->cache) {
                $cacheItem->set($xml);
                // $cacheItem->set($feed);
                $this->cache->save($cacheItem);
            }
 
            return $feed;
        }
 
        return null;
    }
 
    private function getSerializer(): Serializer
    {
        if (null !== $this->serializer) {
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/config/helpers.php
 
            $defaults = [
                Request::PARAM_HOTEL => $hotelId,
                Request::PARAM_LANGUAGE => null,
                // 'data_info_texts' => 1,
                // 'data_facts' => 1,
                // 'data_discount' => 1,
            ];
 
            if (defined('ICL_LANGUAGE_CODE') && !empty(ICL_LANGUAGE_CODE) ) {
                $defaults = wp_parse_args([
                    Request::PARAM_LANGUAGE => ICL_LANGUAGE_CODE
                ], $defaults);
            }
 
            $url    = trailingslashit($url) . 'xml.php';
            $params = wp_parse_args($args, $defaults);
 
            $request = new Request($url, $params);
            $feed = $vioma->load($request);
 
            // if(is_user_logged_in()) {
            //     dump($defaults);
            //     dump($params);
            //     dump($request);
            //     dump($feed);
            //     wp_die();
            // }
        }
 
        return $feed->first();
    }
}
 
if (!function_exists('get_vioma_room_groups')) {
    function get_vioma_room_groups(int $singleId = null): ?array
    {
        if(is_null(vioma())) {
            return [];
        }
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php
// Redirect from slug to id
if(!empty($packageSlug)) {
    $packageId = $package->getInfo()->isVariant() ? $package->getInfo()->getId() : $package->getId();
 
    if (wp_safe_redirect(trailingslashit($viomaPackagesPageURL) . '?package=' . $packageId, 301)) {
        exit;
    }
}
 
// Manipulate Language Switcher
add_filter('icl_ls_languages', function($languages) use ($packageId) {
 
    $languages = array_map(function($language) use ($packageId) {
 
        $langCode   = $language['code'];
        $pageId     = intval(get_option('vioma_packages_page'));
        $objectId   = icl_object_id($pageId, 'page', false, $langCode);
        $pageUrl    = apply_filters('wpml_permalink', get_the_permalink($objectId), $langCode, true);
 
        $vioma = vioma(['set_language' => $langCode]);
        $packages = $vioma->getPackages()->sortByPrice();
        $package = $packages->filter(function($package) use ($packageId) {
            $isVariant = $package->getInfo()->isVariant();
            $id = $isVariant ? $package->getInfo()->getId() : $package->getId();
            return $packageId === $id;
        })->first();
 
        if (!empty($package)) {
            $packageId = $package->getInfo()->isVariant() ? $package->getInfo()->getId() : $package->getId();
            return array_merge($language, ['url' => $pageUrl . '?package=' . $packageId]);
        }
 
    }, $languages);
 
    return array_filter($languages);
});
 
 
// Body class
add_filter('body_class', function($classes) use ($package) {
[internal]
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php
 
        $langCode   = $language['code'];
        $pageId     = intval(get_option('vioma_packages_page'));
        $objectId   = icl_object_id($pageId, 'page', false, $langCode);
        $pageUrl    = apply_filters('wpml_permalink', get_the_permalink($objectId), $langCode, true);
 
        $vioma = vioma(['set_language' => $langCode]);
        $packages = $vioma->getPackages()->sortByPrice();
        $package = $packages->filter(function($package) use ($packageId) {
            $isVariant = $package->getInfo()->isVariant();
            $id = $isVariant ? $package->getInfo()->getId() : $package->getId();
            return $packageId === $id;
        })->first();
 
        if (!empty($package)) {
            $packageId = $package->getInfo()->isVariant() ? $package->getInfo()->getId() : $package->getId();
            return array_merge($language, ['url' => $pageUrl . '?package=' . $packageId]);
        }
 
    }, $languages);
 
    return array_filter($languages);
});
 
 
// Body class
add_filter('body_class', function($classes) use ($package) {
    return array_merge($classes, ['vioma-package-' . $package->getId()]);
});
 
 
// SEO (Rank Math)
add_filter('rank_math/frontend/title', function() use ($package) {
    $separator = RankMath\Helper::get_settings('titles.title_separator');
    return $package->getName() . ' ' . $separator . ' ' . get_bloginfo('name');
});
 
add_filter('rank_math/frontend/description', function() use ($package) {
    return wp_trim_words($package->getInfo()->getTeaser(), 35);
});
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php
 
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        $num_args = count( $args );
 
        do {
            $this->current_priority[ $nesting_level ] = current( $this->iterations[ $nesting_level ] );
 
            $priority = $this->current_priority[ $nesting_level ];
 
            foreach ( $this->callbacks[ $priority ] as $the_ ) {
                if ( ! $this->doing_action ) {
                    $args[0] = $value;
                }
 
                // Avoid the array_slice() if possible.
                if ( 0 === $the_['accepted_args'] ) {
                    $value = call_user_func( $the_['function'] );
                } elseif ( $the_['accepted_args'] >= $num_args ) {
                    $value = call_user_func_array( $the_['function'], $args );
                } else {
                    $value = call_user_func_array( $the_['function'], array_slice( $args, 0, $the_['accepted_args'] ) );
                }
            }
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
/srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php
        $all_args = func_get_args(); // phpcs:ignore PHPCompatibility.FunctionUse.ArgumentFunctionsReportCurrentValue.NeedsInspection
        _wp_call_all_hook( $all_args );
    }
 
    if ( ! isset( $wp_filter[ $hook_name ] ) ) {
        if ( isset( $wp_filter['all'] ) ) {
            array_pop( $wp_current_filter );
        }
 
        return $value;
    }
 
    if ( ! isset( $wp_filter['all'] ) ) {
        $wp_current_filter[] = $hook_name;
    }
 
    // Pass the value to WP_Hook.
    array_unshift( $args, $value );
 
    $filtered = $wp_filter[ $hook_name ]->apply_filters( $value, $args );
 
    array_pop( $wp_current_filter );
 
    return $filtered;
}
 
/**
 * Calls the callback functions that have been added to a filter hook, specifying arguments in an array.
 *
 * @since 3.0.0
 *
 * @see apply_filters() This function is identical, but the arguments passed to the
 *                      functions hooked to `$hook_name` are supplied using an array.
 *
 * @global WP_Hook[] $wp_filter         Stores all of the filters and actions.
 * @global int[]     $wp_filters        Stores the number of times each filter was triggered.
 * @global string[]  $wp_current_filter Stores the list of current filters with the current one last.
 *
 * @param string $hook_name The name of the filter hook.
 * @param array  $args      The arguments supplied to the functions hooked to `$hook_name`.
/srv/data/htdocs/mf/ostseeblick/wp-content/plugins/sitepress-multilingual-cms/sitepress.class.php
                if ( in_array( $k, $parameters_copied, true ) ) {
                    $gets_passed[ $k ] = $v;
                }
            }
        }
        if ( ! empty( $gets_passed ) ) {
            foreach ( $w_active_languages as $code => $al ) {
                if ( empty( $al['missing'] ) ) {
                    $w_active_languages[ $code ]['url'] = add_query_arg( $gets_passed, $w_active_languages[ $code ]['url'] );
                }
            }
        }
 
        // restore current $wp_query
        unset( $wp_query );
        global $wp_query; // make it global again after unset
        $wp_query = clone $_wp_query_back;
        unset( $_wp_query_back );
 
        $w_active_languages = apply_filters( 'icl_ls_languages', $w_active_languages );
 
        $w_active_languages = $languages_helper->sort_ls_languages( $w_active_languages, $template_args );
 
        // Change the url, in case languages in subdomains are set.
        if ( $this->get_setting( 'language_negotiation_type' ) == WPML_LANGUAGE_NEGOTIATION_TYPE_DOMAIN ) {
            foreach ( $w_active_languages as $lang => $element ) {
                $w_active_languages[ $lang ]['url'] = $this->convert_url( $element['url'], $lang );
            }
        }
 
        $w_active_languages = $this->maybeHideLanguages( $w_active_languages );
 
        wp_reset_query();
 
        $cache->set( $w_active_languages );
 
        $ls_languages_status->end();
 
        return $w_active_languages;
    }
/srv/data/htdocs/mf/ostseeblick/wp-content/plugins/sitepress-multilingual-cms/classes/class-wpml-browser-redirect.php
    public function init_hooks() {
        add_action( 'init', array( $this, 'init' ) );
    }
 
    public function init() {
        if ( ! isset( $_GET['redirect_to'] ) &&
            ! is_admin() && ! is_customize_preview() &&
            ( ! isset( $_SERVER['REQUEST_URI'] ) || ! preg_match( '#wp-login\.php$#', preg_replace( '@\?(.*)$@', '', $_SERVER['REQUEST_URI'] ) ) )
        ) {
            add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
        }
    }
 
    public function enqueue_scripts() {
        wp_register_script( 'wpml-browser-redirect', ICL_PLUGIN_URL . '/dist/js/browser-redirect/app.js', array(), ICL_SITEPRESS_VERSION );
 
        $args['skip_missing'] = intval( $this->sitepress->get_setting( 'automatic_redirect' ) == 1 );
 
        // Build multi language urls array
        $languages     = $this->sitepress->get_ls_languages( $args );
        $language_urls = [];
        foreach ( $languages as $language ) {
            if ( isset( $language['default_locale'] ) && $language['default_locale'] ) {
                $default_locale                   = strtolower( $language['default_locale'] );
                $language_urls[ $default_locale ] = $language['url'];
                $language_parts                   = explode( '_', $default_locale );
                if ( count( $language_parts ) > 1 ) {
                    foreach ( $language_parts as $language_part ) {
                        if ( ! isset( $language_urls[ $language_part ] ) ) {
                            $language_urls[ $language_part ] = $language['url'];
                        }
                    }
                }
            }
            $language_urls[ $language['language_code'] ] = $language['url'];
        }
        // Cookie parameters
        $http_host = $_SERVER['HTTP_HOST'] == 'localhost' ? '' : $_SERVER['HTTP_HOST'];
        $cookie    = array(
            'name'       => '_icl_visitor_lang_js',
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php
 
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        $num_args = count( $args );
 
        do {
            $this->current_priority[ $nesting_level ] = current( $this->iterations[ $nesting_level ] );
 
            $priority = $this->current_priority[ $nesting_level ];
 
            foreach ( $this->callbacks[ $priority ] as $the_ ) {
                if ( ! $this->doing_action ) {
                    $args[0] = $value;
                }
 
                // Avoid the array_slice() if possible.
                if ( 0 === $the_['accepted_args'] ) {
                    $value = call_user_func( $the_['function'] );
                } elseif ( $the_['accepted_args'] >= $num_args ) {
                    $value = call_user_func_array( $the_['function'], $args );
                } else {
                    $value = call_user_func_array( $the_['function'], array_slice( $args, 0, $the_['accepted_args'] ) );
                }
            }
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
     */
    public function do_action( $args ) {
        $this->doing_action = true;
        $this->apply_filters( '', $args );
 
        // If there are recursive calls to the current action, we haven't finished it until we get to the last one.
        if ( ! $this->nesting_level ) {
            $this->doing_action = false;
        }
    }
 
    /**
     * Processes the functions hooked into the 'all' hook.
     *
     * @since 4.7.0
     *
     * @param array $args Arguments to pass to the hook callbacks. Passed by reference.
     */
    public function do_all_hook( &$args ) {
        $nesting_level                      = $this->nesting_level++;
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        do {
            $priority = current( $this->iterations[ $nesting_level ] );
/srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php
    if ( ! isset( $wp_filter[ $hook_name ] ) ) {
        if ( isset( $wp_filter['all'] ) ) {
            array_pop( $wp_current_filter );
        }
 
        return;
    }
 
    if ( ! isset( $wp_filter['all'] ) ) {
        $wp_current_filter[] = $hook_name;
    }
 
    if ( empty( $arg ) ) {
        $arg[] = '';
    } elseif ( is_array( $arg[0] ) && 1 === count( $arg[0] ) && isset( $arg[0][0] ) && is_object( $arg[0][0] ) ) {
        // Backward compatibility for PHP4-style passing of `array( &$this )` as action `$arg`.
        $arg[0] = $arg[0][0];
    }
 
    $wp_filter[ $hook_name ]->do_action( $arg );
 
    array_pop( $wp_current_filter );
}
 
/**
 * Calls the callback functions that have been added to an action hook, specifying arguments in an array.
 *
 * @since 2.1.0
 *
 * @see do_action() This function is identical, but the arguments passed to the
 *                  functions hooked to `$hook_name` are supplied using an array.
 *
 * @global WP_Hook[] $wp_filter         Stores all of the filters and actions.
 * @global int[]     $wp_actions        Stores the number of times each action was triggered.
 * @global string[]  $wp_current_filter Stores the list of current filters with the current one last.
 *
 * @param string $hook_name The name of the action to be executed.
 * @param array  $args      The arguments supplied to the functions hooked to `$hook_name`.
 */
function do_action_ref_array( $hook_name, $args ) {
/srv/data/htdocs/mf/ostseeblick/wp-includes/script-loader.php
     * @since 2.8.0
     */
    do_action( 'wp_print_footer_scripts' );
}
 
/**
 * Wrapper for do_action( 'wp_enqueue_scripts' ).
 *
 * Allows plugins to queue scripts for the front end using wp_enqueue_script().
 * Runs first in wp_head() where all is_home(), is_page(), etc. functions are available.
 *
 * @since 2.8.0
 */
function wp_enqueue_scripts() {
    /**
     * Fires when scripts and styles are enqueued.
     *
     * @since 2.8.0
     */
    do_action( 'wp_enqueue_scripts' );
}
 
/**
 * Prints the styles queue in the HTML head on admin pages.
 *
 * @since 2.8.0
 *
 * @global bool $concatenate_scripts
 *
 * @return array
 */
function print_admin_styles() {
    global $concatenate_scripts;
 
    $wp_styles = wp_styles();
 
    script_concat_settings();
    $wp_styles->do_concat = $concatenate_scripts;
    $wp_styles->do_items( false );
 
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php
 
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        $num_args = count( $args );
 
        do {
            $this->current_priority[ $nesting_level ] = current( $this->iterations[ $nesting_level ] );
 
            $priority = $this->current_priority[ $nesting_level ];
 
            foreach ( $this->callbacks[ $priority ] as $the_ ) {
                if ( ! $this->doing_action ) {
                    $args[0] = $value;
                }
 
                // Avoid the array_slice() if possible.
                if ( 0 === $the_['accepted_args'] ) {
                    $value = call_user_func( $the_['function'] );
                } elseif ( $the_['accepted_args'] >= $num_args ) {
                    $value = call_user_func_array( $the_['function'], $args );
                } else {
                    $value = call_user_func_array( $the_['function'], array_slice( $args, 0, $the_['accepted_args'] ) );
                }
            }
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
/srv/data/htdocs/mf/ostseeblick/wp-includes/class-wp-hook.php
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
     */
    public function do_action( $args ) {
        $this->doing_action = true;
        $this->apply_filters( '', $args );
 
        // If there are recursive calls to the current action, we haven't finished it until we get to the last one.
        if ( ! $this->nesting_level ) {
            $this->doing_action = false;
        }
    }
 
    /**
     * Processes the functions hooked into the 'all' hook.
     *
     * @since 4.7.0
     *
     * @param array $args Arguments to pass to the hook callbacks. Passed by reference.
     */
    public function do_all_hook( &$args ) {
        $nesting_level                      = $this->nesting_level++;
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        do {
            $priority = current( $this->iterations[ $nesting_level ] );
/srv/data/htdocs/mf/ostseeblick/wp-includes/plugin.php
    if ( ! isset( $wp_filter[ $hook_name ] ) ) {
        if ( isset( $wp_filter['all'] ) ) {
            array_pop( $wp_current_filter );
        }
 
        return;
    }
 
    if ( ! isset( $wp_filter['all'] ) ) {
        $wp_current_filter[] = $hook_name;
    }
 
    if ( empty( $arg ) ) {
        $arg[] = '';
    } elseif ( is_array( $arg[0] ) && 1 === count( $arg[0] ) && isset( $arg[0][0] ) && is_object( $arg[0][0] ) ) {
        // Backward compatibility for PHP4-style passing of `array( &$this )` as action `$arg`.
        $arg[0] = $arg[0][0];
    }
 
    $wp_filter[ $hook_name ]->do_action( $arg );
 
    array_pop( $wp_current_filter );
}
 
/**
 * Calls the callback functions that have been added to an action hook, specifying arguments in an array.
 *
 * @since 2.1.0
 *
 * @see do_action() This function is identical, but the arguments passed to the
 *                  functions hooked to `$hook_name` are supplied using an array.
 *
 * @global WP_Hook[] $wp_filter         Stores all of the filters and actions.
 * @global int[]     $wp_actions        Stores the number of times each action was triggered.
 * @global string[]  $wp_current_filter Stores the list of current filters with the current one last.
 *
 * @param string $hook_name The name of the action to be executed.
 * @param array  $args      The arguments supplied to the functions hooked to `$hook_name`.
 */
function do_action_ref_array( $hook_name, $args ) {
/srv/data/htdocs/mf/ostseeblick/wp-includes/general-template.php
     * @param string $before           The HTML to output before the date.
     * @param string $after            The HTML to output after the date.
     */
    echo apply_filters( 'the_weekday_date', $the_weekday_date, $before, $after );
}
 
/**
 * Fires the wp_head action.
 *
 * See {@see 'wp_head'}.
 *
 * @since 1.2.0
 */
function wp_head() {
    /**
     * Prints scripts or data in the head tag on the front end.
     *
     * @since 1.5.0
     */
    do_action( 'wp_head' );
}
 
/**
 * Fires the wp_footer action.
 *
 * See {@see 'wp_footer'}.
 *
 * @since 1.5.1
 */
function wp_footer() {
    /**
     * Prints scripts or data before the closing body tag on the front end.
     *
     * @since 1.5.1
     */
    do_action( 'wp_footer' );
}
 
/**
 * Fires the wp_body_open action.
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/header.php
            'title' => $webCamLabel,
            'class' => 'd-none d-lg-block btn btn-lg btn-primary position-fixed bottom-0 end-0 mb-4 me-5',
            'target' => '_blank',
        ]);
 
        $webCamLink = $webCamLink . skeleton_link($webCamUrl, '<span>' . $webCamLabel . '</span>' . $webCamSvg, [
            'title' => $webCamLabel,
            'class' => 'd-lg-none btn btn-lg btn-primary bottom-0 end-0 mb-4 me-5',
            'target' => '_blank',
        ]);
    } else {
        $webCamLink = '';
    }
?>
<!DOCTYPE html>
<html <?php language_attributes() ?>>
    <head>
        <meta charset="<?php echo strtolower(get_bloginfo('charset')); ?>">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <?php wp_head(); ?>
    </head>
    <body <?php body_class(); ?>>
 
        <?php if ($variables->get('topLinkStatus')) : ?>
        <a class="anchor" name="start" id="start"></a>
        <?php endif; ?>
 
        <?php if (has_nav_menu('mobile') || is_active_sidebar('mobile')) : ?>
        <input id="MobileOverlayToggle" class="MobileOverlayToggle visually-hidden" type="checkbox">
        <?php endif; ?>
 
        <?php if($variables->get('searchStatus')) : ?>
        <input id="SearchOverlayToggle" class="SearchOverlayToggle visually-hidden" type="checkbox">
        <?php endif; ?>
 
        <div id="App">
 
            <?php if ($variables->get('headerStatus')) : ?>
            <header id="Header" class="<?php if (!is_front_page() /* && !$vioma->isViomaPage() */) : echo 'headroom-no-unpin'; endif; ?>">
 
/srv/data/htdocs/mf/ostseeblick/wp-includes/template.php
        extract( $wp_query->query_vars, EXTR_SKIP );
    }
 
    if ( isset( $s ) ) {
        $s = esc_attr( $s );
    }
 
    /**
     * Fires before a template file is loaded.
     *
     * @since 6.1.0
     *
     * @param string $_template_file The full path to the template file.
     * @param bool   $load_once      Whether to require_once or require.
     * @param array  $args           Additional arguments passed to the template.
     */
    do_action( 'wp_before_load_template', $_template_file, $load_once, $args );
 
    if ( $load_once ) {
        require_once $_template_file;
    } else {
        require $_template_file;
    }
 
    /**
     * Fires after a template file is loaded.
     *
     * @since 6.1.0
     *
     * @param string $_template_file The full path to the template file.
     * @param bool   $load_once      Whether to require_once or require.
     * @param array  $args           Additional arguments passed to the template.
     */
    do_action( 'wp_after_load_template', $_template_file, $load_once, $args );
}
 
Arguments
  1. "/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/header.php"
    
/srv/data/htdocs/mf/ostseeblick/wp-includes/template.php
 
    $located = '';
    foreach ( (array) $template_names as $template_name ) {
        if ( ! $template_name ) {
            continue;
        }
        if ( file_exists( $stylesheet_path . '/' . $template_name ) ) {
            $located = $stylesheet_path . '/' . $template_name;
            break;
        } elseif ( $is_child_theme && file_exists( $template_path . '/' . $template_name ) ) {
            $located = $template_path . '/' . $template_name;
            break;
        } elseif ( file_exists( ABSPATH . WPINC . '/theme-compat/' . $template_name ) ) {
            $located = ABSPATH . WPINC . '/theme-compat/' . $template_name;
            break;
        }
    }
 
    if ( $load && '' !== $located ) {
        load_template( $located, $load_once, $args );
    }
 
    return $located;
}
 
/**
 * Requires the template file with WordPress environment.
 *
 * The globals are set up for the template file to ensure that the WordPress
 * environment is available from within the function. The query variables are
 * also available.
 *
 * @since 1.5.0
 * @since 5.5.0 The `$args` parameter was added.
 *
 * @global array      $posts
 * @global WP_Post    $post          Global post object.
 * @global bool       $wp_did_header
 * @global WP_Query   $wp_query      WordPress Query object.
 * @global WP_Rewrite $wp_rewrite    WordPress rewrite component.
/srv/data/htdocs/mf/ostseeblick/wp-includes/general-template.php
     * Fires before the header template file is loaded.
     *
     * @since 2.1.0
     * @since 2.8.0 The `$name` parameter was added.
     * @since 5.5.0 The `$args` parameter was added.
     *
     * @param string|null $name Name of the specific header file to use. Null for the default header.
     * @param array       $args Additional arguments passed to the header template.
     */
    do_action( 'get_header', $name, $args );
 
    $templates = array();
    $name      = (string) $name;
    if ( '' !== $name ) {
        $templates[] = "header-{$name}.php";
    }
 
    $templates[] = 'header.php';
 
    if ( ! locate_template( $templates, true, true, $args ) ) {
        return false;
    }
}
 
/**
 * Loads footer template.
 *
 * Includes the footer template for a theme or if a name is specified then a
 * specialized footer will be included.
 *
 * For the parameter, if the file is called "footer-special.php" then specify
 * "special".
 *
 * @since 1.5.0
 * @since 5.5.0 A return value was added.
 * @since 5.5.0 The `$args` parameter was added.
 *
 * @param string $name The name of the specialized footer.
 * @param array  $args Optional. Additional arguments passed to the footer template.
 *                     Default empty array.
/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php
}
 
 
// Testimonials
if (wp_count_posts('testimonial')->publish > 0) {
    array_push($sections, [
        'acf_fc_layout' => 'contents',
        'design' => [
            'width' => 16,
            'position' => 'center',
        ],
        'rows' => [
            ['acf_fc_layout' => 'testimonials'],
        ]
    ]);
}
 
$section = skeleton_sections($sections, false);
 
get_header();
echo $section;
get_footer();
 
/srv/data/htdocs/mf/ostseeblick/wp-includes/template-loader.php
            }
 
            break;
        }
    }
 
    if ( ! $template ) {
        $template = get_index_template();
    }
 
    /**
     * Filters the path of the current template before including it.
     *
     * @since 3.0.0
     *
     * @param string $template The path of the template to include.
     */
    $template = apply_filters( 'template_include', $template );
    if ( $template ) {
        include $template;
    } elseif ( current_user_can( 'switch_themes' ) ) {
        $theme = wp_get_theme();
        if ( $theme->errors() ) {
            wp_die( $theme->errors() );
        }
    }
    return;
}
 
Arguments
  1. "/srv/data/htdocs/mf/ostseeblick/wp-content/themes/ostseeblick/pieces/vioma/package.php"
    
/srv/data/htdocs/mf/ostseeblick/wp-blog-header.php
<?php
/**
 * Loads the WordPress environment and template.
 *
 * @package WordPress
 */
 
if ( ! isset( $wp_did_header ) ) {
 
    $wp_did_header = true;
 
    // Load the WordPress library.
    require_once __DIR__ . '/wp-load.php';
 
    // Set up the WordPress query.
    wp();
 
    // Load the theme template.
    require_once ABSPATH . WPINC . '/template-loader.php';
 
}
 
Arguments
  1. "/srv/data/htdocs/mf/ostseeblick/wp-includes/template-loader.php"
    
/srv/data/htdocs/mf/ostseeblick/index.php
<?php
/**
 * Front to the WordPress application. This file doesn't do anything, but loads
 * wp-blog-header.php which does and tells WordPress to load the theme.
 *
 * @package WordPress
 */
 
/**
 * Tells WordPress to load the WordPress theme and output it.
 *
 * @var bool
 */
define( 'WP_USE_THEMES', true );
 
/** Loads the WordPress Environment and Template */
require __DIR__ . '/wp-blog-header.php';
 
Arguments
  1. "/srv/data/htdocs/mf/ostseeblick/wp-blog-header.php"
    

Environment & details:

Key Value
package
"135265"
empty
empty
Key Value
wp-wpml_current_language
"en"
empty
Key Value
SERVER_SOFTWARE
"nginx/1.18.0"
REQUEST_URI
"/en/offers/?package=135265"
USER
"www-data"
HOME
"/var/www"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_ACCEPT
"*/*"
HTTP_HOST
"ostseeblick-mf.13-data.de"
SCRIPT_FILENAME
"/srv/data/htdocs/mf/ostseeblick/index.php"
REDIRECT_STATUS
"200"
SERVER_NAME
"ostseeblick-mf.13-data.de"
SERVER_PORT
"443"
SERVER_ADDR
"213.239.209.220"
REMOTE_USER
""
REMOTE_PORT
"52179"
REMOTE_ADDR
"216.73.216.112"
GATEWAY_INTERFACE
"CGI/1.1"
HTTPS
"on"
REQUEST_SCHEME
"https"
SERVER_PROTOCOL
"HTTP/2.0"
DOCUMENT_ROOT
"/srv/data/htdocs/mf/ostseeblick"
DOCUMENT_URI
"/index.php"
SCRIPT_NAME
"/index.php"
CONTENT_LENGTH
""
CONTENT_TYPE
""
REQUEST_METHOD
"GET"
QUERY_STRING
"package=135265"
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1756686547.3279
REQUEST_TIME
1756686547
empty
0. Whoops\Handler\PrettyPageHandler