{"id":5149,"date":"2026-09-08T15:24:04","date_gmt":"2026-09-08T12:24:04","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/?p=5149"},"modified":"2026-09-08T06:17:22","modified_gmt":"2026-09-08T03:17:22","slug":"google-tag-manager-setup-website-tracking","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/en\/google-tag-manager-setup-website-tracking\/","title":{"rendered":"How to Set Up Google Tag Manager for Website Tracking"},"content":{"rendered":"<div class=\"dchost-blog-content-wrapper\"><div id=\"toc_container\" role=\"navigation\" aria-label=\"Table of Contents\" data-nosnippet class=\"toc_transparent no_bullets toc_numbered toc_title_center\"><p class=\"toc_title\">\u0130\u00e7indekiler<\/p><ul class=\"toc_list\"><li><a href=\"#Why_I_start_every_Google_Tag_Manager_setup_with_a_measurement_plan\"><span class=\"toc_number toc_depth_1\">1.<\/span> Why I start every Google Tag Manager setup with a measurement plan<\/a><\/li><li><a href=\"#Create_the_account_and_container\"><span class=\"toc_number toc_depth_1\">2.<\/span> Create the account and container<\/a><ul><li><a href=\"#Keep_the_structure_predictable\"><span class=\"toc_number toc_depth_2\">2.1.<\/span> Keep the structure predictable<\/a><\/li><\/ul><\/li><li><a href=\"#Install_GTM_on_WordPress\"><span class=\"toc_number toc_depth_1\">3.<\/span> Install GTM on WordPress<\/a><ul><li><a href=\"#Use_a_theme_or_custom-code_field\"><span class=\"toc_number toc_depth_2\">3.1.<\/span> Use a theme or custom-code field<\/a><\/li><li><a href=\"#Use_a_child_theme_or_custom_plugin\"><span class=\"toc_number toc_depth_2\">3.2.<\/span> Use a child theme or custom plugin<\/a><\/li><\/ul><\/li><li><a href=\"#Verify_the_installation_before_building_tags\"><span class=\"toc_number toc_depth_1\">4.<\/span> Verify the installation before building tags<\/a><\/li><li><a href=\"#Connect_GA4_as_the_first_tag\"><span class=\"toc_number toc_depth_1\">5.<\/span> Connect GA4 as the first tag<\/a><\/li><li><a href=\"#Track_clicks_forms_and_custom_events\"><span class=\"toc_number toc_depth_1\">6.<\/span> Track clicks, forms, and custom events<\/a><ul><li><a href=\"#Telephone_links\"><span class=\"toc_number toc_depth_2\">6.1.<\/span> Telephone links<\/a><\/li><li><a href=\"#A_button_click_is_not_a_successful_form\"><span class=\"toc_number toc_depth_2\">6.2.<\/span> A button click is not a successful form<\/a><\/li><li><a href=\"#Use_the_data_layer_for_stable_event_data\"><span class=\"toc_number toc_depth_2\">6.3.<\/span> Use the data layer for stable event data<\/a><\/li><\/ul><\/li><li><a href=\"#WooCommerce_tracking_needs_order-level_checks\"><span class=\"toc_number toc_depth_1\">7.<\/span> WooCommerce tracking needs order-level checks<\/a><\/li><li><a href=\"#Consent_and_KVKK_considerations\"><span class=\"toc_number toc_depth_1\">8.<\/span> Consent and KVKK considerations<\/a><\/li><li><a href=\"#Publish_carefully_and_keep_rollback_available\"><span class=\"toc_number toc_depth_1\">9.<\/span> Publish carefully and keep rollback available<\/a><\/li><li><a href=\"#Problems_I_check_first\"><span class=\"toc_number toc_depth_1\">10.<\/span> Problems I check first<\/a><ul><li><a href=\"#The_tag_does_not_fire\"><span class=\"toc_number toc_depth_2\">10.1.<\/span> The tag does not fire<\/a><\/li><li><a href=\"#GA4_data_arrives_twice\"><span class=\"toc_number toc_depth_2\">10.2.<\/span> GA4 data arrives twice<\/a><\/li><li><a href=\"#Preview_will_not_connect\"><span class=\"toc_number toc_depth_2\">10.3.<\/span> Preview will not connect<\/a><\/li><li><a href=\"#The_published_change_is_missing\"><span class=\"toc_number toc_depth_2\">10.4.<\/span> The published change is missing<\/a><\/li><\/ul><\/li><li><a href=\"#A_practical_setup_checklist\"><span class=\"toc_number toc_depth_1\">11.<\/span> A practical setup checklist<\/a><\/li><li><a href=\"#Frequently_asked_questions\"><span class=\"toc_number toc_depth_1\">12.<\/span> Frequently asked questions<\/a><ul><li><a href=\"#Should_I_use_a_WordPress_plugin_for_GTM\"><span class=\"toc_number toc_depth_2\">12.1.<\/span> Should I use a WordPress plugin for GTM?<\/a><\/li><li><a href=\"#Are_GTM_and_Google_Analytics_the_same\"><span class=\"toc_number toc_depth_2\">12.2.<\/span> Are GTM and Google Analytics the same?<\/a><\/li><li><a href=\"#Can_GTM_slow_down_a_website\"><span class=\"toc_number toc_depth_2\">12.3.<\/span> Can GTM slow down a website?<\/a><\/li><li><a href=\"#How_do_I_know_that_a_tag_actually_fired\"><span class=\"toc_number toc_depth_2\">12.4.<\/span> How do I know that a tag actually fired?<\/a><\/li><\/ul><\/li><\/ul><\/div>\n<h2><span id=\"Why_I_start_every_Google_Tag_Manager_setup_with_a_measurement_plan\">Why I start every Google Tag Manager setup with a measurement plan<\/span><\/h2>\n<p>The easiest part of a Google Tag Manager setup is pasting the container snippet into a website. The difficult part comes later, when you are trying to explain why one order became two purchases, or why a form button click appears as a lead even though the form failed.<\/p>\n<p>I see this regularly in support tickets: a WordPress site has a GA4 plugin, an old Analytics snippet in the theme, and another GA4 tag inside Google Tag Manager. Page views are counted twice, sometimes three times. The traffic graph looks wonderful until somebody checks the underlying requests.<\/p>\n<p>Let me put it this way: GTM does not measure anything by itself. It detects events and controls when tags send data to other systems. GA4 stores and reports the data; GTM manages the conditions that make those tags run.<\/p>\n<p>Before I create a container, I write down a small measurement plan:<\/p>\n<ul>\n<li>Will I track page views and campaign sources?<\/li>\n<li>Which event represents a successful form submission?<\/li>\n<li>Will WooCommerce orders and revenue go to GA4?<\/li>\n<li>Which advertising platforms should receive conversions?<\/li>\n<li>Which tags must remain inactive until cookie consent is granted?<\/li>\n<\/ul>\n<p>If you want to clarify how campaign tracking fits together, see <a href=\"https:\/\/www.dchost.com\/blog\/en\/what-are-utm-parameters-campaign-tracking-guide\/\">What Are UTM Parameters? A Practical Campaign Tracking Guide<\/a>. UTM parameters carry campaign information; GTM can read that information when it fires a tag. They solve different problems.<\/p>\n<h2><span id=\"Create_the_account_and_container\">Create the account and container<\/span><\/h2>\n<h3><span id=\"Keep_the_structure_predictable\">Keep the structure predictable<\/span><\/h3>\n<p>Google Tag Manager has an account at the top and one or more containers underneath it. An account usually represents a company. A container represents a website, Android application, or iOS application.<\/p>\n<p>I normally give each website its own web container. Two domains may share a company account, but keeping unrelated measurement logic together makes testing and permissions harder than necessary.<\/p>\n<ol>\n<li>Open Google Tag Manager and sign in.<\/li>\n<li>Select <strong>Create Account<\/strong>.<\/li>\n<li>Enter the company name and country.<\/li>\n<li>Name the container after the domain.<\/li>\n<li>Select <strong>Web<\/strong> as the target platform.<\/li>\n<\/ol>\n<p>GTM displays a two-part installation snippet. The first part belongs inside <code>&lt;head&gt;<\/code>. The second belongs immediately after the opening <code>&lt;body&gt;<\/code> tag. A container ID usually looks like <code>GTM-ABC1234<\/code>.<\/p>\n<h2><span id=\"Install_GTM_on_WordPress\">Install GTM on WordPress<\/span><\/h2>\n<p>I first check whether the installation will survive a theme or plugin update. Editing a parent theme is quick, but it is also a good way to lose tracking during the next update.<\/p>\n<h3><span id=\"Use_a_theme_or_custom-code_field\">Use a theme or custom-code field<\/span><\/h3>\n<p>A reliable theme may provide fields for head and body code. Some plugins provide similar fields. Put the first snippet in the <code>&lt;head&gt;<\/code> field and the second immediately after the opening <code>&lt;body&gt;<\/code> tag.<\/p>\n<p>Do not put both snippets into one field. The <code>noscript<\/code> section belongs inside <code>&lt;body&gt;<\/code>.<\/p>\n<h3><span id=\"Use_a_child_theme_or_custom_plugin\">Use a child theme or custom plugin<\/span><\/h3>\n<p>If you need file-level control, use a child theme or a small custom plugin rather than modifying the parent theme. The exact hook depends on how the site is built, so I test the rendered HTML instead of assuming the hook placed the code correctly.<\/p>\n<p>The standard placement looks like this:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">&lt;!-- inside &lt;head&gt; --&gt;\n&lt;script&gt;\n(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({&#039;gtm.start&#039;:\nnew Date().getTime(),event:&#039;gtm.js&#039;});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!=&#039;dataLayer&#039;?&#039;&amp;l=&#039;+l:&#039;&#039;;j.async=true;j.src=\n&#039;https:\/\/www.googletagmanager.com\/gtm.js?id=&#039;+i+dl;f.parentNode.insertBefore(j,f);\n})(window,document,&#039;script&#039;,&#039;dataLayer&#039;,&#039;GTM-ABC1234&#039;);\n&lt;\/script&gt;\n\n&lt;!-- immediately after the opening &lt;body&gt; tag --&gt;\n&lt;noscript&gt;&lt;iframe src=&quot;https:\/\/www.googletagmanager.com\/ns.html?id=GTM-ABC1234&quot;\nheight=&quot;0&quot; width=&quot;0&quot; style=&quot;display:none;visibility:hidden&quot;&gt;&lt;\/iframe&gt;&lt;\/noscript&gt;<\/code><\/pre>\n<p>Replace <code>GTM-ABC1234<\/code> with your container ID. Seeing <code>&amp;l=<\/code> in the script is normal. It tells GTM the name of the data layer when that name is not <code>dataLayer<\/code>.<\/p>\n<p>When I choose a third-party plugin, I check its update history, consent support, generated output, and extra JavaScript. I once trusted a plugin description that said it added GTM, then found that it also inserted another tracking script. The page source was more useful than the description.<\/p>\n<h2><span id=\"Verify_the_installation_before_building_tags\">Verify the installation before building tags<\/span><\/h2>\n<p>Do not start with the GA4 report. Reports can be delayed, and a wrong container ID will not stop the page from loading. Use the <strong>Preview<\/strong> button in GTM first.<\/p>\n<ol>\n<li>Open the correct container.<\/li>\n<li>Select <strong>Preview<\/strong>.<\/li>\n<li>Enter the website address and start the connection.<\/li>\n<li>Confirm the connection in Tag Assistant.<\/li>\n<li>Check the event timeline for page views, clicks, and form events.<\/li>\n<\/ol>\n<p>The tag merely appearing in Preview is not enough. A tag under <em>Tags Fired<\/em> ran during the session; one under <em>Tags Not Fired<\/em> did not meet its conditions. Check the event as well as the tag.<\/p>\n<p>In browser developer tools, open <code>Network<\/code> and search for <code>collect<\/code>, <code>gtag<\/code>, or the request used by your measurement platform. From a terminal, I use this to check the basic server response:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">curl -sI https:\/\/your-example-domain.com\/ | sed -n &#039;1,12p&#039;<\/code><\/pre>\n<p>This only proves that the page returned an HTTP response. It does not prove that GTM works. The useful test combines page source, Tag Assistant, and network requests.<\/p>\n<h2><span id=\"Connect_GA4_as_the_first_tag\">Connect GA4 as the first tag<\/span><\/h2>\n<p>If the GA4 property does not exist yet, create a web data stream first. In GA4, open <strong>Data streams<\/strong>, select the web stream, and copy its measurement ID, which looks like <code>G-XXXXXXXXXX<\/code>.<\/p>\n<p>In GTM, create a tag with these settings:<\/p>\n<ul>\n<li>Tag type: <strong>Google tag<\/strong>, or the current GA4 tag type shown in your account<\/li>\n<li>Google tag ID: your GA4 measurement ID<\/li>\n<li>Trigger: <strong>Initialization &#8211; All Pages<\/strong>, or another suitable all-pages trigger<\/li>\n<\/ul>\n<p>I use a name such as <code>GA4 - Google Tag - All Pages<\/code>. &#8220;Tag 1&#8221; tells me nothing six months later. Good names make broken tracking much easier to trace.<\/p>\n<p>Do not load the same measurement ID through a separate Analytics plugin as well. In one case, I found a form conversion firing from a button click before the form had succeeded. I traced the form&#8217;s AJAX response and changed the trigger to the success event. Failed submissions stopped becoming conversions.<\/p>\n<p>For GA4 installation and report checks, see <a href=\"https:\/\/www.dchost.com\/blog\/en\/ga4-setup-guide-track-website-data-step-by-step\/\">GA4 Setup Guide: Track Your Website Data Step by Step<\/a>. GTM installation and GA4 property configuration are related, but I verify them separately.<\/p>\n<h2><span id=\"Track_clicks_forms_and_custom_events\">Track clicks, forms, and custom events<\/span><\/h2>\n<h3><span id=\"Telephone_links\">Telephone links<\/span><\/h3>\n<p>For phone links, create a custom event tag and a trigger whose <code>Click URL<\/code> starts with <code>tel:<\/code>. I might name the event <code>phone_click<\/code> and send parameters such as <code>link_text<\/code> and <code>page_location<\/code>.<\/p>\n<p>Keep event names consistent. Avoid spaces and accented characters; plain lowercase names are easier to use across analytics and advertising systems.<\/p>\n<h3><span id=\"A_button_click_is_not_a_successful_form\">A button click is not a successful form<\/span><\/h3>\n<p>Many WordPress form plugins submit through AJAX. A normal &#8220;Form Submission&#8221; trigger can therefore fire too early or not at all. A success message, a plugin-provided JavaScript event, or a custom data layer event is usually a better signal.<\/p>\n<p>I measure the successful response, not the visitor&#8217;s attempt to press the button. Otherwise, a visitor who leaves a required field empty may be counted as a lead.<\/p>\n<h3><span id=\"Use_the_data_layer_for_stable_event_data\">Use the data layer for stable event data<\/span><\/h3>\n<p>Custom data layer events reduce your dependence on CSS classes and changing HTML:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">&lt;script&gt;\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n  event: &#039;lead_form_success&#039;,\n  form_name: &#039;demo_request&#039;,\n  form_id: &#039;contact-form&#039;\n});\n&lt;\/script&gt;<\/code><\/pre>\n<p>In GTM, set the custom event trigger name to <code>lead_form_success<\/code>. Create data layer variables for <code>form_name<\/code> and <code>form_id<\/code>, then pass them into the event tag. If a designer changes the button class later, the measurement logic can continue working.<\/p>\n<h2><span id=\"WooCommerce_tracking_needs_order-level_checks\">WooCommerce tracking needs order-level checks<\/span><\/h2>\n<p>WooCommerce sites can send product views, add-to-cart events, checkout starts, and purchases. The event count is not enough. Revenue, currency, product IDs, and order numbers must also be correct.<\/p>\n<p>The <code>transaction_id<\/code> matters especially for purchases. A refresh, payment return, or reopened thank-you page can send the same order again. Use the order number as a unique value and test the thank-you page twice.<\/p>\n<p>When a plugin creates the data layer, I inspect its actual output in the <strong>Data Layer<\/strong> tab in Tag Assistant. Documentation and generated field names do not always match.<\/p>\n<p>Before marking a purchase as an advertising conversion, compare the test order with GA4 DebugView, the real-time report, and the WooCommerce order screen. The amount, currency, and order ID should agree.<\/p>\n<h2><span id=\"Consent_and_KVKK_considerations\">Consent and KVKK considerations<\/span><\/h2>\n<p>GTM is a technical tool. It does not decide whether consent is required, which data may be collected, or which provider may receive it. Your consent management platform and legal assessment should define the categories and conditions for analytics and advertising tags.<\/p>\n<p>Test the default consent state, the update signals, and the tag conditions. A consent banner appearing on screen proves very little. I also inspect network requests for advertising calls that happen before consent.<\/p>\n<table>\n<thead>\n<tr>\n<th>Tag group<\/th>\n<th>Example name<\/th>\n<th>Check<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Analytics<\/td>\n<td>GA4 &#8211; Google Tag &#8211; All Pages<\/td>\n<td>Consent state and single load<\/td>\n<\/tr>\n<tr>\n<td>Advertising<\/td>\n<td>Ads &#8211; Lead Conversion<\/td>\n<td>Correct conversion and consent signal<\/td>\n<\/tr>\n<tr>\n<td>Commerce<\/td>\n<td>GA4 &#8211; Purchase<\/td>\n<td>Order ID and revenue<\/td>\n<\/tr>\n<tr>\n<td>Custom event<\/td>\n<td>GA4 &#8211; Lead Form Success<\/td>\n<td>Actual successful submission<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><span id=\"Publish_carefully_and_keep_rollback_available\">Publish carefully and keep rollback available<\/span><\/h2>\n<p>Changes stay in the GTM workspace until you publish the container. Before publishing, add a description such as &#8220;Added form tracking using the demo_request event.&#8221; That note will save time later.<\/p>\n<ol>\n<li>Test the tags in Preview.<\/li>\n<li>Verify the destination request in GA4 DebugView or the relevant platform.<\/li>\n<li>Review the workspace changes.<\/li>\n<li>Add a clear description to the published version.<\/li>\n<li>Check the live site again in a private browser window.<\/li>\n<\/ol>\n<p>If a bad tag reaches production, return to an earlier container version. I treat rollback as part of the setup, not as an admission that testing failed. Measurement code is still production code.<\/p>\n<h2><span id=\"Problems_I_check_first\">Problems I check first<\/span><\/h2>\n<h3><span id=\"The_tag_does_not_fire\">The tag does not fire<\/span><\/h3>\n<p>Check the trigger conditions and variables. Previewing the wrong container, using an ad blocker, or missing required consent can look identical at first.<\/p>\n<h3><span id=\"GA4_data_arrives_twice\">GA4 data arrives twice<\/span><\/h3>\n<p>Search the page source for another GA4 snippet, inspect GTM for duplicate Google tags, and check whether both a plugin and the theme are loading Analytics. The Network tab usually gives me an answer faster than the report screen.<\/p>\n<h3><span id=\"Preview_will_not_connect\">Preview will not connect<\/span><\/h3>\n<p>Cache plugins, firewalls, third-party cookie restrictions, and Content Security Policy rules can interfere with Tag Assistant. Try a private window and check server firewall logs if the connection is being blocked.<\/p>\n<h3><span id=\"The_published_change_is_missing\">The published change is missing<\/span><\/h3>\n<p>You may have changed the workspace without publishing it. A CDN or page cache may also be returning old HTML. Confirm the published version first, then inspect the browser source for the container ID.<\/p>\n<h2><span id=\"A_practical_setup_checklist\">A practical setup checklist<\/span><\/h2>\n<ul>\n<li>Does each website have the correct container?<\/li>\n<li>Are both GTM snippets in the right locations?<\/li>\n<li>Is the container or GA4 tag loading more than once?<\/li>\n<li>Does the measurement ID belong to the intended data stream?<\/li>\n<li>Do tags fire on the correct events in Preview?<\/li>\n<li>Do form and order events represent successful actions?<\/li>\n<li>Are consent-dependent tags inactive before consent?<\/li>\n<li>Does the published version have a useful description?<\/li>\n<li>Have custom events been compared with DebugView and live reports?<\/li>\n<\/ul>\n<p>Once you start interpreting GA4 data, <a href=\"https:\/\/www.dchost.com\/blog\/en\/how-to-increase-e-commerce-conversion-rates\/\">How to Increase E-Commerce Conversion Rates<\/a> can help connect measurement with business goals. A conversion that is defined badly can mislead you more effectively than no conversion data at all.<\/p>\n<p>My usual order is simple: define the event and its success condition, design the data layer or trigger, test it, and publish last. I would rather have five reliable events than fifty guesses. Review unused tags and old triggers every month; containers quietly become junk drawers when nobody does.<\/p>\n<h2><span id=\"Frequently_asked_questions\">Frequently asked questions<\/span><\/h2>\n<h3><span id=\"Should_I_use_a_WordPress_plugin_for_GTM\">Should I use a WordPress plugin for GTM?<\/span><\/h3>\n<p>You can, but check that it survives updates, supports your consent system, and does not add unnecessary scripts. A child theme or custom plugin is usually more durable than editing a parent theme directly.<\/p>\n<h3><span id=\"Are_GTM_and_Google_Analytics_the_same\">Are GTM and Google Analytics the same?<\/span><\/h3>\n<p>No. Google Analytics measures and reports data. Google Tag Manager manages tags and the conditions under which they run. GTM can load GA4, advertising conversion tags, and other third-party tags.<\/p>\n<h3><span id=\"Can_GTM_slow_down_a_website\">Can GTM slow down a website?<\/span><\/h3>\n<p>The container normally loads asynchronously, but every tag can add JavaScript and network requests. Remove unused tags, narrow their triggers, and test performance on real mobile devices.<\/p>\n<h3><span id=\"How_do_I_know_that_a_tag_actually_fired\">How do I know that a tag actually fired?<\/span><\/h3>\n<p>Use GTM Preview and Tag Assistant to confirm the event and fired tag. Then compare the browser request with the real-time or debugging view in the destination platform. That extra check has saved me from trusting a green-looking setup more than once.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>A practical Google Tag Manager setup guide covering WordPress installation, GA4, custom events, WooCommerce purchases, consent, testing, and rollback.<\/p>\n","protected":false},"author":4,"featured_media":5146,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[177],"tags":[409,407,470,473,472,471],"class_list":["post-5149","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-digital-marketing","tag-ga4","tag-google-tag-manager","tag-gtm-setup","tag-website-tracking","tag-woocommerce-analytics","tag-wordpress-tracking"],"_links":{"self":[{"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/posts\/5149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/comments?post=5149"}],"version-history":[{"count":1,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/posts\/5149\/revisions"}],"predecessor-version":[{"id":5151,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/posts\/5149\/revisions\/5151"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/media\/5146"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/media?parent=5149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/categories?post=5149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/en\/wp-json\/wp\/v2\/tags?post=5149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}