<?php /** * Sway functions file * * @package sway * by KeyDesign */ add_action( 'wp_enqueue_scripts', 'kd_enqueue_parent_theme_style', 5 ); if ( ! function_exists( 'kd_enqueue_parent_theme_style' ) ) { function kd_enqueue_parent_theme_style() { wp_enqueue_style( 'bootstrap' ); wp_enqueue_style( 'keydesign-style', get_template_directory_uri() . '/style.css', array( 'bootstrap' ) ); wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array('keydesign-style') ); } } add_action( 'after_setup_theme', 'kd_child_theme_setup' ); if ( ! function_exists( 'kd_child_theme_setup' ) ) { function kd_child_theme_setup() { load_child_theme_textdomain( 'sway', get_stylesheet_directory() . '/languages' ); } } // ------------------------------------- // Edit below this line // ------------------------------------- // ======================================== // SEO & GEO Enhancements – Care Talent Scouts // Added: 2026-04-15 // ======================================== // 1. Geo Meta Tags add_action( 'wp_head', 'cts_geo_meta_tags', 1 ); function cts_geo_meta_tags() { echo '<meta name="geo.region" content="DE-BY" />' . "\n"; echo '<meta name="geo.placename" content="Deutschland" />' . "\n"; echo '<meta name="geo.position" content="51.1657;10.4515" />' . "\n"; echo '<meta name="ICBM" content="51.1657, 10.4515" />' . "\n"; echo '<meta name="language" content="de-DE" />' . "\n"; } // 2. LocalBusiness Schema (only on front page) add_action( 'wp_head', 'cts_localbusiness_schema', 5 ); function cts_localbusiness_schema() { if ( ! is_front_page() ) return; $schema = array( '@context' => 'https://schema.org', '@type' => 'ProfessionalService', '@id' => 'https://care-ts.de/#organization', 'name' => 'Care Talent Scouts', 'alternateName' => 'Care-TS GmbH', 'url' => 'https://care-ts.de', 'logo' => 'https://care-ts.de/wp-content/uploads/2024/01/cropped-Website-180x180.png', 'description' => 'Faire und rechtssichere Vermittlung internationaler Pflegefachkraefte nach Deutschland.', 'telephone' => '+491604522544', 'email' => 'info@care-ts.com', 'address' => array( '@type' => 'PostalAddress', 'addressCountry' => 'DE', ), 'areaServed' => array( array( '@type' => 'Country', 'name' => 'Deutschland' ), ), 'serviceType' => array( 'Personalvermittlung Pflege', 'Internationale Pflegekraefte', 'Physiotherapeuten Vermittlung', ), 'knowsLanguage' => array( 'de', 'en', 'ro', 'pl', 'hr', 'sr' ), ); echo '<script type="application/ld+json">' . wp_json_encode( $schema, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT ) . '</script>' . "\n"; } // ======================================== // Security & Performance – Care Talent Scouts // Added: 2026-04-15 // ======================================== // 1. Security Headers add_action( 'send_headers', 'cts_security_headers' ); function cts_security_headers() { if ( is_admin() ) return; header( 'X-Frame-Options: SAMEORIGIN' ); header( 'X-Content-Type-Options: nosniff' ); header( 'X-XSS-Protection: 1; mode=block' ); header( 'Referrer-Policy: strict-origin-when-cross-origin' ); header( 'Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()' ); header( 'Strict-Transport-Security: max-age=31536000; includeSubDomains' ); } // 2. Remove X-Powered-By and WP version exposure remove_action( 'wp_head', 'wp_generator' ); add_filter( 'the_generator', '__return_empty_string' ); add_filter( 'wp_headers', function( $headers ) { unset( $headers['X-Powered-By'] ); return $headers; }); // 3. Disable XML-RPC (security) add_filter( 'xmlrpc_enabled', '__return_false' ); add_filter( 'xmlrpc_methods', function( $methods ) { return array(); } ); // 4. Remove WP version from scripts/styles add_filter( 'style_loader_src', 'cts_remove_version_query', 10, 2 ); add_filter( 'script_loader_src', 'cts_remove_version_query', 10, 2 ); function cts_remove_version_query( $src ) { if ( strpos( $src, 'ver=' ) !== false ) { $src = remove_query_arg( 'ver', $src ); } return $src; } // 5. Disable file editing in WP Admin (security) if ( ! defined( 'DISALLOW_FILE_EDIT' ) ) { define( 'DISALLOW_FILE_EDIT', false ); } // 6. Limit login attempts protection – hide login errors add_filter( 'login_errors', function() { return 'Ungültige Anmeldedaten.'; } ); // 7. Remove Really Simple Discovery link (RSD) remove_action( 'wp_head', 'rsd_link' ); remove_action( 'wp_head', 'wlwmanifest_link' ); remove_action( 'wp_head', 'wp_shortlink_wp_head' ); // 8. Disable REST API for non-logged-in users (selective) add_filter( 'rest_authentication_errors', function( $result ) { if ( ! empty( $result ) ) return $result; if ( ! is_user_logged_in() ) { // Allow Yoast + block pure user enumeration $route = isset( $_SERVER['REQUEST_URI'] ) ? $_SERVER['REQUEST_URI'] : ''; if ( strpos( $route, '/wp/v2/users' ) !== false ) { return new WP_Error( 'rest_forbidden', 'Keine Berechtigung.', array( 'status' => 401 ) ); } } return $result; } ); // ======================================== // Comment Spam Protection – Care Talent Scouts // Added: 2026-04-15 // ======================================== // 1. Honeypot field – bots fill it, humans don't add_action( 'comment_form_after_fields', 'cts_honeypot_field' ); function cts_honeypot_field() { echo '<p style="display:none!important" aria-hidden="true">'; echo '<label for="cts_hp_email">Website (nicht ausfüllen)</label>'; echo '<input type="text" name="cts_hp_email" id="cts_hp_email" value="" autocomplete="off" tabindex="-1">'; echo '</p>'; } // 2. Block comment if honeypot filled add_filter( 'preprocess_comment', 'cts_honeypot_check' ); function cts_honeypot_check( $commentdata ) { if ( ! empty( $_POST['cts_hp_email'] ) ) { wp_die( 'Spam erkannt.', 'Kommentar abgelehnt', array( 'response' => 403 ) ); } return $commentdata; } // 3. Block comments with too many URLs add_filter( 'preprocess_comment', 'cts_block_link_spam' ); function cts_block_link_spam( $commentdata ) { $content = $commentdata['comment_content']; $url_count = preg_match_all( '/https?:///i', $content ); if ( $url_count > 2 ) { wp_die( 'Zu viele Links.', 'Kommentar abgelehnt', array( 'response' => 403 ) ); } return $commentdata; } // 4. Block comments submitted too fast (< 5 seconds after page load) add_action( 'comment_form_before', 'cts_comment_timer_start' ); function cts_comment_timer_start() { echo '<input type="hidden" name="cts_form_time" value="' . time() . '">'; } add_filter( 'preprocess_comment', 'cts_comment_timer_check' ); function cts_comment_timer_check( $commentdata ) { if ( isset( $_POST['cts_form_time'] ) ) { $elapsed = time() - (int) $_POST['cts_form_time']; if ( $elapsed < 5 ) { wp_die( 'Bitte warten Sie kurz.', 'Kommentar abgelehnt', array( 'response' => 403 ) ); } } return $commentdata; } // 5. Disable comments on pages (only allow on blog posts) add_action( 'init', 'cts_disable_comments_on_pages' ); function cts_disable_comments_on_pages() { foreach ( array( 'page' ) as $post_type ) { if ( post_type_supports( $post_type, 'comments' ) ) { remove_post_type_support( $post_type, 'comments' ); remove_post_type_support( $post_type, 'trackbacks' ); } } } // 6. Block comment REST API for non-logged users add_filter( 'rest_pre_insert_comment', 'cts_rest_comment_check', 10, 2 ); function cts_rest_comment_check( $prepared, $request ) { if ( ! is_user_logged_in() ) { return new WP_Error( 'rest_forbidden', 'Nicht erlaubt.', array( 'status' => 403 ) ); } return $prepared; } // Virtual page: serve portal at /kandidaten-portal/ add_action('init','cts_portal_rewrite'); function cts_portal_rewrite(){ add_rewrite_rule('^kandidaten-portal/?$','index.php?cts_portal=1','top'); } add_filter('query_vars','cts_portal_query_var'); function cts_portal_query_var($vars){$vars[]='cts_portal';return $vars;} add_action('template_redirect','cts_portal_serve'); function cts_portal_serve(){ if(!get_query_var('cts_portal'))return; $file = WP_CONTENT_DIR.'/uploads/cts-portal/portal.html'; if(file_exists($file)){ header('Content-Type: text/html; charset=UTF-8'); header('X-Robots-Tag: noindex, nofollow'); readfile($file); exit; } wp_die('Portal nicht verfügbar.'); } Karriere bei Care Talent Scouts | Jetzt bewerben

Karriere bei CareTS

Entdecken Sie spannende berufliche Möglichkeiten im Gesundheitswesen.
Mainzer Landstraße . 351 60326 Frankfurt am Main

Besuchen Sie uns heute in Frankfurt

+49 160 4522544‬

Fordern Sie ein Meeting über unseren
Calendly-Link an, um eine für Sie passende Zeit zu finden

Info@care-ts.com

Wir sind für Sie da, wenn Sie Fragen haben.

Bewerben Sie sich jetzt

Treten Sie unserem Team bei und gestalten Sie die
Zukunft des Gesundheitswesens mit uns.




    WIR ARBEITEN NAHTLOS MIT UNSEREN KUNDEN FÜR DIE LANGFRISTIGE ZUSAMMENARBEIT.

    Rufen Sie uns an oder kommen Sie jederzeit vorbei.
    Wir setzen uns dafür ein, alle Anfragen innerhalb
    von 24 Stunden zu beantworten.

    Schnelle Antworten

    Hier finden Sie kurze Antworten auf Ihre kurzen Fragen.

    Weiterlesen

    Let's Talk

    Nehmen Sie das Telefon, um mit einem Mitglied unseres Teams zu chatten.
    +49 160 4522544‬

    Rufen Sie uns

    Wir sind sozial

    Folgen Sie uns auf Linkedin

    Join our Community

    Support

    Wir sind für Sie da, wenn Sie Fragen haben.

    Mailen Sie uns