{"id":16333,"date":"2025-12-29T08:36:09","date_gmt":"2025-12-29T07:36:09","guid":{"rendered":"https:\/\/webhosting.de\/wordpress-heartbeat-api-stille-lastquelle-hosting-optimus\/"},"modified":"2025-12-29T08:36:09","modified_gmt":"2025-12-29T07:36:09","slug":"wordpress-heartbeat-api-source-de-charge-silencieuse-hebergement-optimus","status":"publish","type":"post","link":"https:\/\/webhosting.de\/fr\/wordpress-heartbeat-api-stille-lastquelle-hosting-optimus\/","title":{"rendered":"API WordPress Heartbeat : source de charge silencieuse sur l'h\u00e9bergement mutualis\u00e9"},"content":{"rendered":"<p>Die WordPress Heartbeat API verursacht auf Shared Hosting durch h\u00e4ufige AJAX-Pings \u00fcber admin-ajax.php stille <strong>Serverlast<\/strong> und f\u00fchrt damit zu sp\u00fcrbarer Verz\u00f6gerung im Backend. Ich zeige, wie ich die Heartbeat-Frequenz sicher z\u00e4hme, den server load wordpress senke und wichtige Funktionen wie Autosave erhalte.<\/p>\n\n<h2>Zentrale Punkte<\/h2>\n\n<ul>\n  <li><strong>Heartbeat-Frequenz<\/strong> zielgerichtet verl\u00e4ngern statt komplett deaktivieren.<\/li>\n  <li><strong>Autosave<\/strong> im Editor bewahren, unn\u00f6tige Pings stoppen.<\/li>\n  <li><strong>Shared Ressourcen<\/strong> sch\u00fctzen: CPU, RAM, I\/O im Blick.<\/li>\n  <li><strong>Monitoring<\/strong> vor\/nach Optimierung f\u00fcr klare Effekte.<\/li>\n  <li><strong>Ganzheitliche<\/strong> Optimierung: Caching, DB, CDN, PHP-Version.<\/li>\n<\/ul>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2025\/12\/wordpress-serverlast-4317.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Heartbeat verstehen: N\u00fctzliche Funktion mit Kosten<\/h2>\n\n<p>Die Heartbeat API sendet periodische AJAX-Requests, typischerweise alle 15 Sekunden im Dashboard, um Sessions zu halten und Entw\u00fcrfe zu sichern; diese <strong>Frequenz<\/strong> hat jedoch ihren Preis. Jeder Ping trifft admin-ajax.php und l\u00f6st PHP-Prozesse, Datenbankzugriffe und ggf. Plugin-Hooks aus. Bleibt der Browser minimiert, l\u00e4uft die Kommunikation oft weiter und erzeugt Lastspitzen. Offene Tabs vervielfachen die Anfragen und dr\u00fccken die Reaktionszeit des Editors. Auf stark geteilten Systemen f\u00fchrt das zu gedrosselten Prozessen, sp\u00e4ten Autosaves und subjektiv \u201ez\u00e4hem\u201c Arbeiten.<\/p>\n\n<h2>Warum Shared Hosting besonders leidet<\/h2>\n\n<p>Auf Shared Hosting teile ich CPU, RAM und I\/O mit Nachbarseiten, weshalb zus\u00e4tzliche Requests die <strong>Kapazit\u00e4t<\/strong> schneller aussch\u00f6pfen. Kommen mehrere Nutzer zusammen oder bleibt das Dashboard stundenlang offen, summieren sich Pings und blockieren PHP-Worker. Dann steigen TTFB und Wartezeiten im Admin, und der server load wordpress klettert in kurze Peaks. Bei gleichzeitigen Lasten von Nachbarsites entsteht eine Kettenreaktion: Cache-Hits sinken, Datenbank-Locks nehmen zu, der Editor wirkt tr\u00e4ge. So verwandle ich eine Komfortfunktion unbeabsichtigt in eine Lastquelle.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2025\/12\/wordpress-lastenanalyse-3029.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Symptome rechtzeitig erkennen<\/h2>\n\n<p>Merke ich z\u00e4he Klicks im Backend, auff\u00e4llig viele POST-Requests in den DevTools und ruckelige Eingaben im Editor, deutet vieles auf die Heartbeat-Pings als <strong>Treiber<\/strong> hin. Host-Warnungen wegen CPU-Spitzen oder Arbeitsspeicher-Limits passen ebenfalls ins Bild. Auch schw\u00e4chere Core Web Vitals im Admin-Kontext und sinkende PageSpeed-Scores k\u00f6nnen indirekte Signale sein. In Logs sehe ich H\u00e4ufungen von admin-ajax.php Zugriffe mit \u201eheartbeat\u201c-Action. Treten diese Effekte bei inaktiver Bearbeitung auf, verschwenden Hintergrund-Tabs wertvolle Ressourcen.<\/p>\n\n<h2>Wie viele Requests entstehen wirklich? Eine kurze Rechnung<\/h2>\n\n<p>Ein Standardintervall von 15 Sekunden erzeugt pro Tab vier Pings pro Minute. Drei ge\u00f6ffnete Admin-Tabs bedeuten damit 12 Heartbeat-Requests pro Minute \u2013 pro Redakteur. Arbeiten zwei Personen parallel, sind es bereits 24 pro Minute, also 1.440 pro Stunde. Stelle ich das Intervall im Admin auf 60 Sekunden, reduziere ich dieselbe Last auf drei Pings pro Minute und Person. In obigem Beispiel sinkt die Anzahl von 24 auf 6 pro Minute: eine Reduktion um 75 %. Diese einfache Rechnung erkl\u00e4rt, warum die gef\u00fchlte Reaktionszeit nach einer Drosselung signifikant verbessert.<\/p>\n\n<h2>Kontrolle \u00fcbernehmen: Plugins oder Code<\/h2>\n\n<p>Ich setze zuerst auf eine klare Regel: Frequenz erh\u00f6hen statt blind <strong>abschalten<\/strong>. Mit Tools wie Heartbeat Control, WP Rocket oder LiteSpeed Cache stelle ich im Admin 30\u201360 Sekunden ein, im Frontend 120\u2013180 Sekunden und deaktiviere Pings auf Seiten ohne Interaktion. Wer Code bevorzugt, kann die API selektiv ausbremsen. Beispiel: Intervalle auf 60 Sekunden setzen und nur im Editor Autosave belassen. So reduziere ich Last, ohne Sicherheit f\u00fcr Inhalte zu verlieren.<\/p>\n\n<pre><code>\/\/ Intervalle anpassen\nadd_filter('heartbeat_settings', function($settings) {\n    $settings['interval'] = 60; \/\/ Sekunden\n    return $settings;\n});\n\n\/\/ Heartbeat z.B. im Frontend deaktivieren\nadd_action('init', function() {\n    if ( ! is_admin() ) wp_deregister_script('heartbeat');\n}, 1);\n<\/code><\/pre>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2025\/12\/wordpress-heartbeat-shared-last-8391.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Block-Editor vs. Classic: Was Heartbeat im Editor wirklich \u00fcbernimmt<\/h2>\n\n<p>Im Classic Editor st\u00fctzt sich Autosave direkt auf Heartbeat. Im Block-Editor (Gutenberg) l\u00e4uft Autosave prim\u00e4r \u00fcber die REST-API, doch Heartbeat \u00fcbernimmt weiterhin wichtige Aufgaben wie Post-Locking und Session-Checks. Fazit f\u00fcr die Praxis: Eine moderate Verl\u00e4ngerung (30\u201360 s) bricht Autosave im Block-Editor nicht, kann aber das Aktualisieren von Sperren und Statusmeldungen verz\u00f6gert anzeigen. Deshalb w\u00e4hle ich im Editor k\u00fcrzere Intervalle als im restlichen Admin und teste mit echten Entw\u00fcrfen, ob Sperren und Warnungen erwartungsgem\u00e4\u00df funktionieren.<\/p>\n\n<h2>Selektives Drosseln nach Screen und Rolle<\/h2>\n\n<p>Um maximale Kontrolle zu bekommen, reguliere ich Heartbeat abh\u00e4ngig vom Bildschirm (Screen) und ggf. von Benutzerrollen. So bleibt der Editor schnell, w\u00e4hrend ruhige Admin-Bereiche praktisch keine Pings erzeugen.<\/p>\n\n<pre><code>\/\/ 1) Unterschiedliche Intervalle je nach Screen\nadd_filter('heartbeat_settings', function($settings) {\n    if ( function_exists('get_current_screen') ) {\n        $screen = get_current_screen();\n        if ( $screen &amp;&amp; in_array($screen-&gt;id, ['post','page','product']) ) {\n            $settings['interval'] = 30; \/\/ Editor: h\u00e4ufiger f\u00fcr Autosave\/Locking\n        } else {\n            $settings['interval'] = 60; \/\/ \u00fcbriges Admin\n        }\n    }\n    return $settings;\n});\n\n\/\/ 2) Heartbeat im Admin nur dort laden, wo n\u00f6tig\nadd_action('admin_enqueue_scripts', function($hook) {\n    $allowed = ['post.php', 'post-new.php', 'site-editor.php']; \/\/ Editor-Kontexte\n    if ( ! in_array($hook, $allowed, true) ) {\n        wp_deregister_script('heartbeat');\n    }\n}, 1);\n\n\/\/ 3) Frontend differenziert behandeln (z.B. f\u00fcr eingeloggte User)\nadd_action('wp_enqueue_scripts', function() {\n    if ( ! is_user_logged_in() ) {\n        wp_deregister_script('heartbeat'); \/\/ Besucher: kein Heartbeat n\u00f6tig\n    }\n}, 1);\n\n\/\/ Optional: Autosave-Intervall harmonisieren\nadd_filter('autosave_interval', function() { return 60; });<\/code><\/pre>\n\n<p>Mit diesem Setup bleiben Live-Funktionen dort aktiv, wo sie Nutzen stiften, und verschwinden in Bereichen ohne Interaktion. Im Shop- oder Checkout-Kontext halte ich Heartbeat gezielt aktiv und kurz, im restlichen Frontend bleibt es aus.<\/p>\n\n<h2>Sinnvolle Intervalle und Ausnahmen<\/h2>\n\n<p>Ich halte den Editor funktionsf\u00e4hig, w\u00e4hrend ich unn\u00f6tige Pings auf ruhigen Seiten streiche, denn <strong>Autosave<\/strong> bleibt essenziell. 60 Sekunden im Admin trifft oft den Sweet Spot zwischen Sicherheit und Last. Im Frontend brauche ich Heartbeat meist gar nicht, mit Ausnahmen f\u00fcr Live-Komponenten. Bei Shops oder dynamischen UIs plane ich k\u00fcrzere Zyklen nur dort, wo Eingaben laufen. So bleibt die Seite schnell und stabil, ohne Inhalte zu gef\u00e4hrden.<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Kontext<\/th>\n      <th>Empfohlenes Intervall<\/th>\n      <th>Hinweis<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>Dashboard allgemein<\/td>\n      <td>60 s<\/td>\n      <td><strong>Last<\/strong> sinkt deutlich, Sessions bleiben aktiv.<\/td>\n    <\/tr>\n    <tr>\n      <td>Post-Editor<\/td>\n      <td>30\u201360 s<\/td>\n      <td>Autosave und Locking weiter nutzbar.<\/td>\n    <\/tr>\n    <tr>\n      <td>Frontend statisch<\/td>\n      <td>Deaktivieren<\/td>\n      <td>Keine Interaktion, also keine Pings n\u00f6tig.<\/td>\n    <\/tr>\n    <tr>\n      <td>Frontend interaktiv (z.B. Checkout)<\/td>\n      <td>15\u201330 s<\/td>\n      <td>Nur auf betroffenen <strong>Seiten<\/strong> aktivieren.<\/td>\n    <\/tr>\n    <tr>\n      <td>Lang ge\u00f6ffnete Admin-Tabs<\/td>\n      <td>90\u2013120 s<\/td>\n      <td>Ressourcen sparen, wenn der Tab im Hintergrund bleibt.<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<h2>Heartbeat-Payload entschlacken: weniger Daten pro Ping<\/h2>\n\n<p>Neben der Frequenz z\u00e4hlt die Menge der \u00fcbertragenen Daten. Einige Plugins h\u00e4ngen zus\u00e4tzliche Informationen an Heartbeat an. \u00dcber Filter kann ich die Serverlast weiter reduzieren, indem ich unn\u00f6tige Payload abschneide oder Antworten vereinfache.<\/p>\n\n<pre><code>\/\/ Serverantwort f\u00fcr Heartbeat-Anfragen optimieren\nadd_filter('heartbeat_send', function($response, $data, $screen_id) {\n    \/\/ Beispiel: gro\u00dfe, selten ben\u00f6tigte Bl\u00f6cke entfernen\n    unset($response['irrelevante_status']);\n    \/\/ Eigene, zu gro\u00dfe Daten nicht mitschicken\n    if ( isset($data['my_plugin_heavy']) ) {\n        unset($data['my_plugin_heavy']);\n    }\n    return $response;\n}, 10, 3);\n\n\/\/ Auf eingehende Heartbeat-Daten reagieren (z.B. Logging vermeiden)\nadd_action('heartbeat_received', function($response, $data, $screen_id) {\n    \/\/ Teure Vorg\u00e4nge nur auf relevanten Screens ausf\u00fchren\n    if ( $screen_id !== 'post' ) {\n        \/\/ ggf. Fr\u00fchabbruch in eigenen Hooks\n    }\n}, 10, 3);<\/code><\/pre>\n\n<p>Ich kontrolliere danach in den DevTools die Gr\u00f6\u00dfe der Heartbeat-Responses. Schrumpft die Payload, entlastet das Datenbank und PHP, besonders in Peak-Zeiten.<\/p>\n\n<h2>Ganzheitliche Optimierung: Caching, DB, Medien, PHP<\/h2>\n\n<p>Heartbeat ist ein Puzzleteil, doch echte Wirkung erreiche ich, wenn ich Caching, Datenbank-Pflege und Medien-Optimierung kombiniere, um die <strong>Last<\/strong> weiter zu senken. Page- und Object-Caching reduzieren Datenbankabfragen im Admin-Flow. Ich verkleinere Bilder konsequent und aktivere Lazy Loading. Revisions, Transients und Sessions r\u00e4ume ich regelm\u00e4\u00dfig auf. Zudem pr\u00fcfe ich die PHP-Version und entferne unn\u00f6tige Add-ons; tiefer gehe ich mit diesem Leitfaden zu <a href=\"https:\/\/webhosting.de\/wordpress-plugins-performance-antipatterns-optimierung-boost\/\">Plugin-Antipatterns<\/a>.<\/p>\n\n<p>In der Datenbank achte ich auf autoloaded Options, aufgebl\u00e4hte Revisions und veraltete Transients. Eine Obergrenze f\u00fcr Revisionen verhindert Wildwuchs, ohne Sicherheit aufzugeben. Objekt-Caching (z. B. Redis) hilft gerade im Admin-Bereich sp\u00fcrbar, weil wiederkehrende Anfragen schneller ihre Daten finden. Und: Weniger aktivierte Plugins bedeuten weniger Hooks, die jeder Heartbeat-Call ansto\u00dfen kann.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2025\/12\/heartbeat-office-load-4827.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>WP-Cron und Heartbeat zusammendenken<\/h2>\n\n<p>Viele Installationen nutzen Heartbeat indirekt, w\u00e4hrend WP-Cron parallel Tasks ausl\u00f6st, was in Spitzenzeiten die <strong>Worker<\/strong> zus\u00e4tzlich bindet. Ich pr\u00fcfe daher die Cron-Jobs, fasse H\u00e4ufigkeiten zusammen und vermeide unn\u00f6tige Events. Bei dauerhafter Last stelle ich auf echten System-Cron um und deaktiviere wp-cron.php Aufrufe durch Besucher. Das stabilisiert Antwortzeiten und sch\u00fctzt die Admin-Oberfl\u00e4che. Wer tiefer einsteigen will, findet praktische Schritte in meinem Beitrag zu <a href=\"https:\/\/webhosting.de\/wp-cron-verstehen-optimieren-wordpress-aufgabenmanagement-expert\/\">WP-Cron optimieren<\/a>.<\/p>\n\n<h2>PHP-Worker, Concurrency und AJAX-Queues<\/h2>\n\n<p>AJAX-Requests laufen in Konkurrenz zu Seitenaufrufen, weshalb eine knappe Anzahl an PHP-Workern die <strong>Wartezeit<\/strong> sp\u00fcrbar erh\u00f6ht. Stapeln sich Heartbeat-Calls, friert das Backend gef\u00fchlt ein, obwohl der Server erreichbar bleibt. Ich ziele daher auf weniger, aber sinnvollere Pings und auf Caches, die PHP entlasten. Wenn Projekte wachsen, pr\u00fcfe ich h\u00f6here Worker-Kontingente oder wechsle den Tarif. Wer das Zusammenspiel verstehen will, liest meinen Leitfaden zur <a href=\"https:\/\/webhosting.de\/php-workers-hosting-flaschenhals-ratgeber-balance\/\">PHP-Worker Balance<\/a>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2025\/12\/wordpress_heartbeat_api_3062.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Browser- und Nutzungsverhalten: Hintergrund-Tabs und Timer-Throttling<\/h2>\n\n<p>Moderne Browser drosseln Timer in Hintergrund-Tabs, doch Heartbeat-Calls verschwinden damit nicht vollst\u00e4ndig \u2013 sie werden lediglich seltener. Entscheidend ist, wie viele Fenster, Profile und Ger\u00e4te parallel ge\u00f6ffnet sind. Ich sensibilisiere Redakteure: Nicht ben\u00f6tigte Admin-Tabs schlie\u00dfen, lange Inaktivit\u00e4t vermeiden und im Zweifel Entw\u00fcrfe speichern, bevor man den Arbeitsplatz verl\u00e4sst. Die technische Drosselung per Code erg\u00e4nzt diese Verhaltensregeln optimal.<\/p>\n\n<h2>Fehlersuche: typische Konflikte und sichere Tests<\/h2>\n\n<p>Kommt es nach einer Drosselung zu Problemen, pr\u00fcfe ich zuerst: Funktioniert Post-Locking? Werden Session-Timeouts noch gemeldet? L\u00e4uft der Checkout in Echtzeit-Formularen stabil? Ich deaktiviere tempor\u00e4r einzelne Optimierungsschritte, teste mit verschiedenen Rollen und wechsle zwischen Classic und Block-Editor. In den DevTools filtere ich das Netzwerk nach \u201eaction=heartbeat\u201c und beobachte Intervall, Dauer und Gr\u00f6\u00dfe. Serverseitig liefern PHP- und Error-Logs Hinweise, falls Hooks von Plugins Heartbeat ungeplant verlangsamen.<\/p>\n\n<h2>Monitoring und Testplan: So messe ich den Effekt<\/h2>\n\n<p>Ich starte mit einem Vorher-Profil: Anzahl der admin-ajax.php Requests pro Minute, CPU-Anteil, RAM und Editor-Reaktionszeit, um die <strong>Basis<\/strong> zu kennen. Danach setze ich neue Intervalle und wiederhole Messungen unter gleicher Nutzung. In Browser-DevTools pr\u00fcfe ich, ob Pings seltener kommen und schneller abschlie\u00dfen. Im Hosting-Panel beobachte ich, ob Lastspitzen abflachen. Erst wenn die Ergebnisse stabil sind, \u00fcbertrage ich die Einstellungen auf Live-Systeme.<\/p>\n\n<h2>Zielwerte und Auswertung<\/h2>\n\n<p>Als Ziel strebe ich im Admin an: Intervall 60 s auf allgemeinen Screens, 30\u201360 s im Editor, unter 300 ms TTFB f\u00fcr Heartbeat-Responses und eine durchschnittliche Response-Gr\u00f6\u00dfe unter 10 KB \u2013 abh\u00e4ngig von Plugins. Unter Last (mehrere Nutzer, mehrere Tabs) sollten keine langen Queues entstehen; die Worker-Auslastung bleibt glatt, statt in S\u00e4gez\u00e4hne zu kippen. Erreiche ich das, sp\u00fcrt das Redaktionsteam den Unterschied sofort.<\/p>\n\n<h2>Wann ein Hosting-Upgrade sinnvoll ist<\/h2>\n\n<p>Selbst mit sauberer Konfiguration kann ein Projekt die gemeinsamen Ressourcen eines Tarifs <strong>sprengen<\/strong>. Mehr gleichzeitige Redakteure, Shop-Checkout, Suche oder Chat-Widgets treiben AJAX-Last hoch. In solchen F\u00e4llen rechne ich die Kosten: Zeitverlust im Team vs. Mehrpreis f\u00fcr mehr Worker, RAM und CPU. Oft lohnt ein Upgrade, sobald Redakteure t\u00e4glich blockiert werden. Ich starte mit dem n\u00e4chsten Plan und teste, ob die Bearbeitung fl\u00fcssig bleibt.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2025\/12\/wordpress-serverlast-9452.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Kurz zusammengefasst<\/h2>\n\n<p>Die Heartbeat API liefert wertvolle Echtzeit-Funktionen, belastet Shared Hosting jedoch, wenn ich Intervalle und Kontexte nicht <strong>steuere<\/strong>. Mit l\u00e4ngeren Zyklen im Admin, deaktiviertem Frontend und aktivem Autosave im Editor senke ich die Anfragen deutlich. Caching, Datenbank-Ordnung, schlanke Plugins und eine aktuelle PHP-Version stabilisieren zus\u00e4tzlich. In Kombination mit sauberem WP-Cron und ausreichend PHP-Workern verschwinden die z\u00e4hen Klicks im Backend. So halte ich Komfort und Sicherheit und senke gleichzeitig die Last auf meinem Hosting.<\/p>","protected":false},"excerpt":{"rendered":"<p>L'API WordPress Heartbeat entra\u00eene une charge serveur \u00e9lev\u00e9e sur l'h\u00e9bergement mutualis\u00e9. Apprenez \u00e0 optimiser votre h\u00e9bergement pour gagner en vitesse.<\/p>","protected":false},"author":1,"featured_media":16326,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_crdt_document":"","inline_featured_image":false,"footnotes":""},"categories":[733],"tags":[],"class_list":["post-16333","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"litespeed-optimize-size":null,"litespeed-optimize-set":null,"_elementor_source_image_hash":null,"_wp_attachment_image_alt":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"surfer_file_name":null,"surfer_file_original_url":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":null,"rank_math_title":null,"inline_featured_image":null,"_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"_yoast_wpseo_linkdex":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_trp_translated_slug_en_us":null,"_wp_desired_post_slug":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_eael_widget_elements":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":null,"_edit_lock":null,"_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"1999","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"rank_math_internal_links_processed":null,"_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":null,"rank_math_contentai_score":null,"ilj_limitincominglinks":null,"ilj_maxincominglinks":null,"ilj_limitoutgoinglinks":null,"ilj_maxoutgoinglinks":null,"ilj_limitlinksperparagraph":null,"ilj_linksperparagraph":null,"ilj_blacklistdefinition":null,"ilj_linkdefinition":null,"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"WordPress Heartbeat API","rank_math_og_content_image":null,"_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"16326","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts\/16333","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/comments?post=16333"}],"version-history":[{"count":0,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts\/16333\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/media\/16326"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/media?parent=16333"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/categories?post=16333"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/tags?post=16333"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}