cancel booking
loading... X Player Players Unit Units
loading...

All trainings suspended
at skills.lab

Due to the current restrictions set by the Federal Government, all trainings and camps at skills.lab are temporarily suspended. Therefore, we had to cancel all booked trainings. Please follow our social media channels and website for further information about when the trainings and camps will resume. In the meantime: Stay home and stay safe! Your skills.lab team

Exclusive training for kids

A kid shooting on goal during an exclusive training
The best support for the development of your child’s football skills. Book your training for kids up to 11 years and focus on nurturing individual strengths and improving individual deficits.
Your exclusive training
Exclusive trainings are tailored to meet your individual needs. Each training session can be used as an individual training or group training with up to four kids.

Professional environment

Train like the professional and youth teams of clubs like FC Bayern Munich.

Training variety

Kids can look forward to more than 60 interactive exercises: Passing, shooting, and more.

Training duration

Based on your needs, you can book a 30-minute, 60-minute, or even longer session.

Your preferred date

Full calendar? Select your preferred date coordinated with your personal calendar.

Individual coaching

Experienced skills.lab coaches host the training and work closely with the kids.

Playful development

Kids playfully improve their football skills with measurable exercises and many ball contacts.

Child-friendly balls

All exclusive trainings for kids are played with size 4 balls.

Front-row seats

Family and friends can watch the training session directly from the stand.

Your personal trainer

All kids are looked after by our experienced and certified coaches who host the training session and put together a diversified training program. In small-group trainings, the coaches work closely with the kids based on their needs and goals.
Things to know
The Arena is fully air-conditioned which guarantees the best training environment throughout the year.

Sports outfit

Bring some comfortable training clothes and a towel to your training.

Footwear

Kids can play with regular football shoes, indoor shoes, or special shoes for artificial turf.

Locker room

Feel free to use our on-site locker room and showers.

Refreshment

Get some refreshment during and after the session at our canteen.

How long should kids train?

Different kids have different levels of fitness. Depending on the individual fitness level, we recommend a training duration of 30 to 90 minutes for individual trainings and groups of up to two kids. For groups with three or four kids we recommend 60 to 90 minutes.
Whoops! There was an error.
Error
Call to undefined function wc_get_product() Error thrown with message "Call to undefined function wc_get_product()" Stacktrace: #9 Error in /var/www/content/themes/skillslab/includes/partials/cards/bulletpoints/trainingproduct.php:12 #8 include in /var/www/content/themes/skillslab/class/src/Tools/Helper.php:10 #7 Probots\Tools\Helper:includePartial in /var/www/content/themes/skillslab/class/functions/helpers.php:5 #6 loadPartial in /var/www/content/themes/skillslab/includes/layouts/card_booking.php:64 #5 include in /var/www/content/themes/skillslab/class/src/Modules/Builder.php:51 #4 Probots\Modules\Builder:getModuleHtml in /var/www/content/themes/skillslab/class/src/Modules/Builder.php:27 #3 Probots\Modules\Builder:build in /var/www/content/themes/skillslab/single-training.php:11 #2 include in /var/www/wp/wp-includes/template-loader.php:106 #1 require_once in /var/www/wp/wp-blog-header.php:19 #0 require in /var/www/index.php:17
Stack frames (10)
9
Error
/var/www/content/themes/skillslab/includes/partials/cards/bulletpoints/trainingproduct.php12
8
include
/var/www/content/themes/skillslab/class/src/Tools/Helper.php10
7
Probots\Tools\Helper includePartial
/var/www/content/themes/skillslab/class/functions/helpers.php5
6
loadPartial
/var/www/content/themes/skillslab/includes/layouts/card_booking.php64
5
include
/var/www/content/themes/skillslab/class/src/Modules/Builder.php51
4
Probots\Modules\Builder getModuleHtml
/var/www/content/themes/skillslab/class/src/Modules/Builder.php27
3
Probots\Modules\Builder build
/var/www/content/themes/skillslab/single-training.php11
2
include
/var/www/wp/wp-includes/template-loader.php106
1
require_once
/var/www/wp/wp-blog-header.php19
0
require
/var/www/index.php17
/var/www/content/themes/skillslab/includes/partials/cards/bulletpoints/trainingproduct.php
<?php
 
$product = $product ?? false;
if (!$product) {
    return;
}
 
if (!($product instanceof WC_Product_Simple)) {
    if ($product instanceof WP_Post) {
        $product = $product->ID;
    }
    $product = wc_get_product(intval($product));
}
if (!$product) {
    return;
}
 
// $bookingUrl = \Probots\Tools\Helper::getBookingLinkByProduct($product);
 
$factsValue = explode("\r\n", get_post_meta($product->get_id(), 'skl_product_facts', true));
$facts = array_map(
    function ($f) {
        return ['text' => $f];
    },
    $factsValue ?: []
);
 
$cardData = [
  'selectors' => false,
  'period' => false,
  'tag' => __t('card.training.perUnit'),
  'price' => $product->get_price(),
  'bullets' => $facts,
  'cta_text' => __t('card.bookNow'),
  'cta_url' => '#',
  'product_id' => $product->get_id(),
  'classes' => ['js-bookingcta']
];
?>
<div class="">
Arguments
  1. "Call to undefined function wc_get_product()"
    
/var/www/content/themes/skillslab/class/src/Tools/Helper.php
<?php
namespace Probots\Tools;
 
class Helper
{
    public static function includePartial($file, $data = [])
    {
        extract($data);
        include sprintf(
      '%s/includes/partials/%s.php',
      get_template_directory(),
      $file
    );
    }
 
    public static function loadPartial($file, $data = [])
    {
        ob_start();
        extract($data);
        include sprintf(
      '%s/includes/partials/%s.php',
      get_template_directory(),
      $file
    );
        return ob_get_clean();
    }
 
    public static function includeBlock($file, $data = [])
    {
        extract($data);
        include sprintf(
      '%s/includes/blocks/%s.php',
      get_template_directory(),
      $file
    );
    }
 
    public static function getAssetUrl($name = '')
    {
        return sprintf('%s/assets/%s', get_template_directory_uri(), $name);
/var/www/content/themes/skillslab/class/functions/helpers.php
<?php
if (!function_exists('loadPartial')) {
    function loadPartial($name, $data = [])
    {
        \Probots\Tools\Helper::includePartial($name, $data);
    }
}
 
if (!function_exists('assetUrl')) {
    function assetUrl($name)
    {
        return \Probots\Tools\Helper::getAssetUrl($name);
    }
}
 
 
if (!function_exists('loadSvg')) {
    function loadSvg($name)
    {
        include(get_template_directory() . '/assets/' . $name . '.svg');
    }
}
 
if (!function_exists('loadLaser')) {
    function loadLaser($name)
    {
        include(get_template_directory() . '/assets/' . $name . '.svg');
        include(get_template_directory() . '/assets/' . $name . '.svg');
        include(get_template_directory() . '/assets/' . $name . '.svg');
        include(get_template_directory() . '/assets/' . $name . '.svg');
    }
}
 
// if (!function_exists('clearPhoneNumber')) {
//     function clearPhoneNumber($number)
//     {
//         $plus = preg_match('/^(\+)/', $number)?"+":"";
//         $number = preg_replace('/[^0-9|\+]/', '', $number);
//         $number = preg_replace('/(\+)([0-9]{2})(0)/', '${2}', $number);
//         $number = preg_replace('/\|/', '', $number);
Arguments
  1. "cards/bulletpoints/trainingproduct"
    
  2. array:1 [
      "product" => WP_Post {#2176}
    ]
    
/var/www/content/themes/skillslab/includes/layouts/card_booking.php
                            <div class="block__text ft--copy-small">
                                <?= $block['text'] ?>
                            </div>
                        </div>
                    <?php endforeach; ?>
 
                </div>
            </div>
            <div class="o-grid__col u-6/[email protected]">
                <div class="card__holder">
                    <div class="laser-element top">
                        <?php loadLaser('svg/hexagon'); ?>
                    </div>
                    <div class="laser-element right">
                        <?php loadLaser('svg/t4_tor'); ?>
                    </div>
                    <div class="card__holder__inner">
                        <?php if ($product) {
    loadPartial('cards/bulletpoints/trainingproduct', [
                                'product' => $product
                            ]);
} ?>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
 
Arguments
  1. "cards/bulletpoints/trainingproduct"
    
  2. array:1 [
      "product" => WP_Post {#2176}
    ]
    
/var/www/content/themes/skillslab/class/src/Modules/Builder.php
            print $content;
 
 
 
            wp_reset_postdata();
        }
    }
 
    private function getModuleHtml($layout, $variables)
    {
        $fileName = sprintf('%s.php', $layout);
        $filePath = sprintf('%s/%s/%s', get_template_directory(), $this->layoutDir, $fileName);
 
        if (!file_exists($filePath)) {
            print 'MODULE LAYOUT NOT FOUND IN: ' . $filePath;
            return;
        }
        extract($variables);
 
        include($filePath);
    }
 
    private function getDebugHtml($layout, $variables)
    {
        if (!isset($_GET['debug-modules'])) {
            return;
        }
        printf("<div>");
        print '<pre>';
        print_r($variables);
        print '</pre>';
        printf("</div>");
    }
 
    private function getModules()
    {
        return \get_field($this->acfModulesFieldKey) ?: [];
    }
 
    private function getLayoutName($module)
Arguments
  1. "/var/www/content/themes/skillslab/includes/layouts/card_booking.php"
    
/var/www/content/themes/skillslab/class/src/Modules/Builder.php
    private $moduleClassName = 'module';
    private $layoutDir = './';
 
    public function build()
    {
        $modules = $this->getModules();
 
        foreach ($modules as $mKey => $module) {
            $layout = $this->getLayoutName($module);
            $variables = $module;
            unset($variables[$this->acfLayoutFieldKey]);
            $variables['layout'] = $layout;
 
            $baseClassName = $this->moduleClassName;
            $layoutClassName = $baseClassName . "--" . $layout;
 
            ob_start();
            printf("<div id=\"layout-%d\" class=\"%s %s\">\n", $mKey, $baseClassName, $layoutClassName);
            $this->getDebugHtml($layout, $variables);
            $this->getModuleHtml($layout, $variables);
 
            print("</div>\n");
            $content = ob_get_clean();
 
            print $content;
 
 
 
            wp_reset_postdata();
        }
    }
 
    private function getModuleHtml($layout, $variables)
    {
        $fileName = sprintf('%s.php', $layout);
        $filePath = sprintf('%s/%s/%s', get_template_directory(), $this->layoutDir, $fileName);
 
        if (!file_exists($filePath)) {
            print 'MODULE LAYOUT NOT FOUND IN: ' . $filePath;
            return;
Arguments
  1. "card_booking"
    
  2. array:4 [
      "headline" => "Book your exclusive training"
      "blocks" => array:4 [
        0 => array:3 [
          "icon" => "flag-soccer"
          "headline" => "Train like a pro"
          "text" => "Do it like the players of clubs like FC Bayern Munich and take the challenge at skills.lab."
        ]
        1 => array:3 [
          "icon" => "target"
          "headline" => "Improve your game"
          "text" => "Work on your football skills in unique interactive exercises."
        ]
        2 => array:3 [
          "icon" => "whistle"
          "headline" => "Personal coaching"
          "text" => "Our experienced coaches focus on your individual strengths and weaknesses."
        ]
        3 => array:3 [
          "icon" => "star"
          "headline" => "skills.lab Experience"
          "text" => "When physical and engaging activity meets digital gamification."
        ]
      ]
      "product" => WP_Post {#2176}
      "layout" => "card_booking"
    ]
    
/var/www/content/themes/skillslab/single-training.php
<?php
get_header();
?>
    <?php
    $Modules = new \Probots\Modules\Builder;
    $Modules
        ->setModulesFieldKey('modules')
        ->setLayoutFieldKey('acf_fc_layout')
        ->setModuleClassName('layout')
        ->setLayoutSubDirectory('includes/layouts');
    $Modules->build();
    ?>
<?php
get_footer();
 
/var/www/wp/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. "/var/www/content/themes/skillslab/single-training.php"
    
/var/www/wp/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. "/var/www/wp/wp-includes/template-loader.php"
    
/var/www/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( dirname( __FILE__ ) . '/wp/wp-blog-header.php' );
Arguments
  1. "/var/www/wp/wp-blog-header.php"
    

Environment & details:

empty
empty
empty
empty
empty
Key Value
SERVER_SOFTWARE
"Apache/2.4.38 (Debian)"
REQUEST_URI
"/en/trainings/exclusive-training-kids/"
REDIRECT_STATUS
"200"
HTTP_HOST
"skills-lab.com"
HTTP_CONNECTION
"close"
HTTP_X_REAL_IP
"162.158.90.142"
HTTP_X_FORWARDED_FOR
"3.236.51.151, 162.158.90.142"
HTTP_X_FORWARDED_PROTO
"https"
HTTP_X_FORWARDED_SSL
"on"
HTTP_X_FORWARDED_PORT
"443"
HTTP_ACCEPT_ENCODING
"gzip"
HTTP_CF_IPCOUNTRY
"US"
HTTP_CF_RAY
"6a3e3685d808594f-FRA"
HTTP_CF_VISITOR
"{\"scheme\":\"https\"}"
HTTP_USER_AGENT
"CCBot/2.0 (https://commoncrawl.org/faq/)"
HTTP_ACCEPT
"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
HTTP_ACCEPT_LANGUAGE
"en-US,en;q=0.5"
HTTP_IF_MODIFIED_SINCE
"Fri, 30 Jul 2021 04:32:41 GMT"
HTTP_CF_CONNECTING_IP
"3.236.51.151"
HTTP_CDN_LOOP
"cloudflare"
PATH
"/var/www/.composer/vendor/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
SERVER_SIGNATURE
""
SERVER_NAME
"skills-lab.com"
SERVER_ADDR
"172.18.0.6"
SERVER_PORT
"80"
REMOTE_ADDR
"172.18.0.3"
DOCUMENT_ROOT
"/var/www/"
REQUEST_SCHEME
"http"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/var/www/"
SERVER_ADMIN
"[email protected]"
SCRIPT_FILENAME
"/var/www/index.php"
REMOTE_PORT
"39134"
REDIRECT_URL
"/en/trainings/exclusive-training-kids/"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
""
SCRIPT_NAME
"/index.php"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1635193933.84
REQUEST_TIME
1635193933
argv
[]
argc
0
HTTPS
"on"
Key Value
DB_PASSWORD
"nCPDTNFvdFzjitYyqboger6c"
SMTP_AUTH
"true"
HOSTNAME
"93aa3159b1df"
PHP_VERSION
"7.4.3"
APACHE_CONFDIR
"/etc/apache2"
PHP_MD5
""
LETSENCRYPT_HOST
"skills-lab.com,www.skills-lab.com"
PHP_INI_DIR
"/usr/local/etc/php"
GPG_KEYS
"42670A7FE4D0441C8E4632349E4FDC074A4EF02D 5A52880781F755608BF815FC910DEB46F53EA312"
TAGMANAGER
"GTM-PTKGWJR"
WP_TABLE_PREFIX
"wp_"
PHP_LDFLAGS
"-Wl,-O1 -Wl,--hash-style=both -pie"
PWD
"/var/www/content/themes/skillslab/class"
SMTP_FROM_EMAIL
"[email protected]"
APACHE_DOCUMENT_ROOT
"/var/www/"
DB_PORT
"3306"
DB_USER
"dbUser"
APACHE_LOG_DIR
"/var/log/apache2"
LANG
"C"
SMTP_PASS
"01d0965beb739826029b3e24322c2a43-9c988ee3-7ffd6c4c"
PHP_SHA256
"cf1f856d877c268124ded1ede40c9fb6142b125fdaafdc54f855120b8bc6982a"
WP_THEME_NAME
"skillslab"
SMTP_PORT
"587"
APACHE_PID_FILE
"/var/run/apache2/apache2.pid"
PHPIZE_DEPS
"autoconf \t\tdpkg-dev \t\tfile \t\tg++ \t\tgcc \t\tlibc-dev \t\tmake \t\tpkg-config \t\tre2c"
VIRTUAL_HOST
"skills-lab.com,www.skills-lab.com"
DB_HOST
"db"
PHP_URL
"https://www.php.net/get/php-7.4.3.tar.xz/from/this/mirror"
APACHE_RUN_GROUP
"www-data"
ENVIRONMENT
"production"
SSL
"false"
SMTP_SECURE
"tls"
APACHE_LOCK_DIR
"/var/lock/apache2"
PHP_EXTRA_CONFIGURE_ARGS
"--with-apxs2 --disable-cgi"
SHLVL
"1"
PHP_CFLAGS
"-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
GOOGLE_MAPS
"null"
LIVE_RELOAD
"false"
SMTP_FROM_NAME
"skills.lab"
DB_NAME
"wordpress"
SMTP_USER
"[email protected]"
APACHE_RUN_DIR
"/var/run/apache2"
APACHE_ENVVARS
"/etc/apache2/envvars"
APACHE_RUN_USER
"www-data"
WP_MEDIA_URL
"https://skills-lab.com/media"
PATH
"/var/www/.composer/vendor/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
BUGHERD
"null"
FAILTOBAN
"false"
PHP_EXTRA_BUILD_DEPS
"apache2-dev"
SMTP_HOST
"smtp.eu.mailgun.org"
DEBUG
"false"
PHP_ASC_URL
"https://www.php.net/get/php-7.4.3.tar.xz.asc/from/this/mirror"
PHP_CPPFLAGS
"-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
OLDPWD
"/var/www/config"
0. Whoops\Handler\PrettyPageHandler