{"id":421678,"date":"2025-10-22T11:22:22","date_gmt":"2025-10-22T09:22:22","guid":{"rendered":"https:\/\/remkusdevries.com\/?p=421678"},"modified":"2025-10-29T09:14:51","modified_gmt":"2025-10-29T08:14:51","slug":"how-to-do-wordpress-security","status":"publish","type":"post","link":"https:\/\/remkusdevries.com\/how-to-do-wordpress-security\/","title":{"rendered":"How To Do WordPress &amp; Security"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Security in the context of WordPress is a topic I see being misrepresented often. Misrepresented in the way that &#8220;just install our solution&#8221; is presented as the golden ticket. It&#8217;s not. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s get this out of the way first: installing a \u201cWordPress security plugin\u201d doesn\u2019t make your site secure.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Most of the WordPress solutions out there create a false sense of safety while adding layers of unnecessary bloat. They scan endlessly, pretend failed login attempts are an indication your site is secure, they load scripts you don\u2019t need, and try to \u201chide\u201d your login URL like it\u2019s 2011. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Obscurity is not security.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you\u2019ve been relying on a single plugin to \u201chandle\u201d security for you, it\u2019s time to rethink the approach entirely.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-security-is-not-a-feature\">Security Is Not a Feature<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Security, just like <a href=\"https:\/\/withinwp.com\/courses\/make-wordpress-fast\">WordPress performance<\/a>, is not something you can bolt on after the fact. It\u2019s a system of layers, each with its own holes, like the famous Swiss cheese model used in aviation and medicine.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each layer has weaknesses, but when you stack them properly, the holes no longer align. That\u2019s what true security looks like. <\/p>\n\n\n\n<div class=\"wp-block-group has-tertiary-background-color has-background has-global-padding is-layout-constrained wp-container-core-group-is-layout-5d9a58c0 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--small);padding-right:var(--wp--preset--spacing--small);padding-bottom:var(--wp--preset--spacing--small);padding-left:var(--wp--preset--spacing--small)\">\n<p class=\"wp-block-paragraph\">If you&#8217;d like to know more about this Swiss chees model, I did a podcast with Calvin Alkan diving specifically <a href=\"https:\/\/www.youtube.com\/watch?v=8_59QKmEpRM\">into the layers<\/a>. Lots to learn there.<\/p>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1280\" height=\"853\" src=\"https:\/\/remkusdevries.com\/wp-content\/uploads\/2025\/10\/swiss-cheese-1280x853.png\" alt=\"Swiss cheese\" class=\"wp-image-421682\" srcset=\"https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese-768x512.png?quality=100&amp;width=384 384w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese-820x547.png?quality=100&amp;width=410 410w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese-1280x853.png?quality=100&amp;width=640 640w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese-768x512.png?quality=100&amp;width=768 768w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese-820x547.png?quality=100&amp;width=820 820w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese.png?quality=100&amp;width=1152 1152w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese-1280x853.png?quality=100&amp;width=1280 1280w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese.png?quality=100&amp;width=1536 1536w, https:\/\/remkusdevries.com\/acd-cgi\/img\/v1\/wp-content\/uploads\/2025\/10\/swiss-cheese.png?quality=100&amp;width=1920 1920w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">So, instead of one bloated \u201csecurity\u201d plugin that tries to do everything poorly, you want multiple layers, each doing one thing well.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-layer-1-hosting\">Layer 1: Hosting<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The best security decision you can make for WordPress starts before you even install it: <strong>choose a good host.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A solid WordPress host (like Servebolt, Kinsta, WP Engine, or WP.Cloud) already handles the big threats like intrusion detection, DDoS protection, firewalls, and always choosing to have the latest and greatest of defences in place. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A well-architected hosting platform isolates sites, restricts file access, enforces strong permissions, and updates PHP as soon as security patches are released. That\u2019s far more effective than anything a plugin can retrofit later.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you\u2019re rolling your own setup on AWS, Linode, or a VPS, the burden shifts to you.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That means hardening your stack:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Keep your OS and PHP versions patched.<\/li>\n\n\n\n<li>Use firewalls at the server and network level.<\/li>\n\n\n\n<li>Disable unnecessary services.<\/li>\n\n\n\n<li>Lock down SSH and database access.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">In short: make sure everything that <em>should<\/em> be secure <em>is<\/em> secure before you even get to WordPress. And coming from someone who&#8217;s maintained his own servers for over a decade, I say this to you: that&#8217;s not worth it for me anymore. I much rather have that in the hands of specialists: DevOps. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Layer 1 covered, let&#8217;s look at the application level security; Level 2.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-layer-2-application-level-security\">Layer 2: Application-Level Security<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Once WordPress itself is running, focus on securing access to it, not hiding it.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>First things first: <strong>keep WordPress core, plugins, and themes up to date.<\/strong> Always.<\/li>\n\n\n\n<li><strong>Use Two-Factor Authentication (2FA):<\/strong> The same one used on WordPress.org,  the <a href=\"https:\/\/wordpress.org\/plugins\/two-factor\/\">Two-Factor plugin<\/a>, is lightweight and reliable.<\/li>\n\n\n\n<li><strong>Enforce Strong Passwords:<\/strong> No one should be using Admin123. Use a password manager and enforce long, random passwords for all users. This is where the many WordPress security plugins have their place.<\/li>\n\n\n\n<li><strong>Limit User Roles:<\/strong> Give people only the permissions they need. Your copywriter doesn\u2019t need to be an Administrator.<\/li>\n\n\n\n<li>Disable XML-RPC if you don\u2019t use it.<\/li>\n\n\n\n<li>Obviously have the site running with HTTPS<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you absolutely must use a general-purpose security plugin, go with <a href=\"https:\/\/solidwp.com\/security\/\"><strong>Solid Security<\/strong><\/a> (the modern evolution of iThemes Security). It focuses on the fundamentals, hardening common vulnerabilities, enforcing 2FA, and monitoring logins. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Why won&#8217;t hiding the login URL do it? Well, first of all, it&#8217;s simply the wrong focus. You want to focus on avoiding and blocking that traffic, and the traffic that hits your application (WAF), your WordPress site, needs to have it be impossible to login (2FA). <\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-why-i-don-t-recommend-wordfence\">Why I Don\u2019t Recommend Wordfence<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s talk about the elephant in the room.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I don\u2019t recommend <strong>Wordfence<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Not because it\u2019s inherently malicious or useless, but because it simply isn\u2019t good enough for what it promises to do. It\u2019s heavy, it slows down your site, and it tries to do too many things from inside the same environment it\u2019s supposed to be protecting. That\u2019s like locking the door from the inside while the burglar is already in the room.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When I worked at a hosting company, I saw this play out constantly. A site would get hacked, and guess what was installed almost every single time? Wordfence.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It didn\u2019t stop the intrusion. It didn\u2019t alert in time. It just sat there, scanning logs after the fact. Now, I&#8217;m not saying it caused the hack, but I am saying I&#8217;ve seen it be part of the mix too many times to consider a serious solution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So yeah, that\u2019s not protection that\u2019s postmortem analysis. And you don\u2019t need that living inside your WordPress environment, eating CPU cycles and pretending it\u2019s your firewall.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-layer-3-a-real-web-application-firewall-waf\">Layer 3: A Real Web Application Firewall (WAF)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A WAF is one of the most effective defenses against external attacks, especially bots and zero-day exploits.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But don\u2019t confuse plugin firewalls with actual WAFs. The real protection happens <em>before<\/em> traffic ever reaches your WordPress install.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Use a service like <strong>Cloudflare<\/strong> or <strong>Sucuri<\/strong>. Both operate at the edge, filtering malicious traffic and blocking known exploit patterns long before they hit your server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cloudflare\u2019s free plan already offers basic protection, but the Pro plan adds a proper managed ruleset and bot mitigation that\u2019s worth every cent for any site that matters.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And just so I&#8217;m super clear, anything and everything you can do at the edge, meaning that layer that sits in front of your WordPress site and server, you should do at the edge. Caching (in a performance optimized fashion, of course) and Security are two great examples of this. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-layer-4-hardening-wordpress\">Layer 4: Hardening WordPress<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Now we\u2019re down to the WordPress layer itself. This is where you lock down what\u2019s left, file permissions, authentication, and runtime behavior.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And this is where <a href=\"https:\/\/fortress.snicco.io\/\"><strong>Fortress<\/strong><\/a> changes the game.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Fortress isn\u2019t another plugin pretending to be a security suite. It\u2019s a complete application security framework for WordPress that brings enterprise-grade, Laravel-style security controls into your site, without you needing a dedicated DevSecOps team. I know, I know, big words. But it&#8217;s doing exactly that. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You see, instead of patching symptoms, Fortress actually rewires how WordPress handles authentication, authorization, and sensitive operations. It takes the core principles of secure software design, least privilege, explicit trust boundaries, and event auditing, and makes them native to WordPress.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here\u2019s what that looks like in practice:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Granular Role &amp; Capability Control:<\/strong> Define precisely what each user, plugin, or API call can do. No more \u201cadmin or nothing\u201d security.<\/li>\n\n\n\n<li><strong>Request-Level Authorization:<\/strong> Every action in your application can be vetted through Fortress\u2019 middleware-like authorization rules, the same model used in modern frameworks like Laravel.<\/li>\n\n\n\n<li><strong>Powerful Login Hardening:<\/strong> Fortress replaces WordPress\u2019 default authentication layer with a hardened, extendable system that blocks brute-force attempts, mitigates credential stuffing, and integrates directly with 2FA.<\/li>\n\n\n\n<li><strong>Immutable Audit Trail:<\/strong> Every sensitive action, from login attempts to plugin activations, is logged with full context. No more wondering \u201cwhat happened?\u201d after an incident.<\/li>\n\n\n\n<li><strong>Code-Level Security Hooks:<\/strong> Developers can add explicit security policies right in their code, giving total control over who can execute what and when.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">And crucially, Fortress is built for speed and transparency. It doesn\u2019t inject front-end scripts, spam you with meaningless alerts, or consume server resources with endless scans. It just makes your WordPress application harder to exploit, by design.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It\u2019s the first tool that finally treats WordPress security like a first-class application concern, not an afterthought you fix with a plugin checkbox.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now, you may think by now that this post is sponsored by Calvin Alkin, the creator of Fortress, but that&#8217;s not the case. I&#8217;m simply listing what I see as the best solutions out there for what the need to do. And Fortress is just that. It comes at a costs, but I promise you, the cost of your sites hacked is much much higher. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-about-patchstack\">What About Patchstack?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Even with a secure host and a WAF in front of your site, there\u2019s one more essential piece that often gets overlooked: <strong>knowing what\u2019s vulnerable before it\u2019s exploited<\/strong>. That\u2019s where <a href=\"https:\/\/patchstack.com\">Patchstack<\/a> comes in.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Patchstack continuously monitors WordPress core, plugins, and themes for known vulnerabilities, and does it at a depth few others can match. Its team tracks CVEs, plugin repository updates, and even zero-day disclosures across the ecosystem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Some security plugins use that data for their scans, for instance. This is where security stops being reactive. Instead of waiting for an exploit to happen, Patchstack\u2019s data lets you:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Identify vulnerable components in your site immediately.<\/li>\n\n\n\n<li>Understand which vulnerabilities are actively being exploited in the wild.<\/li>\n\n\n\n<li>Patch or remove affected plugins <em>before<\/em> attackers start scanning for them.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">It\u2019s another slice of the Swiss cheese model, real-time intelligence that fills the gaps between static code and your edge defenses.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">While Fortress secures how your application behaves, and Cloudflare keeps bad traffic out, Patchstack makes sure you\u2019re not running code that\u2019s already compromised. Together, they form a feedback loop of prevention, not cleanup.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-how-security-and-performance-are-two-sides-of-the-same-coin\">How Security and Performance Are Two Sides of the Same Coin<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">One of the biggest misconceptions in WordPress is that performance and security are competing priorities, that securing your site means slowing it down. The reality is that <strong>a properly secured site almost always performs better<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When you eliminate insecure configurations, you also remove a lot of unnecessary processing, database lookups, and unpredictable server behavior.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Take these examples:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Strong authentication reduces brute-force load.<\/strong> Every failed login attempt triggers database queries, session writes, and PHP execution. By enforcing 2FA and using a real WAF, those requests get filtered out long before they reach WordPress. That\u2019s fewer requests, fewer PHP processes, and faster response times.<\/li>\n\n\n\n<li><strong>Minimal plugins mean a smaller attack surface and faster load times.<\/strong> Every plugin you install adds potential vulnerabilities and more PHP to execute. When you stop depending on bloated \u201csecurity\u201d plugins and move toward infrastructure-level protection, you\u2019re removing both attack vectors and performance drag.<\/li>\n\n\n\n<li><strong>Proper caching and CDN layers double as protection.<\/strong> Tools like Cloudflare or NitroPack don\u2019t just accelerate delivery, they also absorb bot traffic and mitigate DDoS attempts. You\u2019re not just caching content; you\u2019re filtering garbage.<\/li>\n\n\n\n<li><strong>Fewer background scans, more predictable CPU cycles.<\/strong> Many security plugins constantly scan your filesystem and database, consuming I\/O and CPU resources. Moving that responsibility to your host or edge firewall instantly makes your site more stable and responsive.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">In other words, every performance optimization that reduces server work also tightens your security posture, and every security improvement that stops bad requests frees up resources for legitimate visitors.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Good security and good performance both come from the same mindset: a lean, layered architecture where everything unnecessary is stripped away.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can learn more about <a href=\"https:\/\/withinwp.com\/courses\/make-wordpress-fast\/\">how to make WordPress faster<\/a>, the <em>right<\/em> way in <a href=\"https:\/\/withinwp.com\/courses\/make-wordpress-fast\/\">my course<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-understanding-how-wordpress-sites-actually-get-hacked\">Understanding How WordPress Sites Actually Get Hacked<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">It\u2019s worth understanding how WordPress sites are compromised in the real world, because it\u2019s often not how you think. Thomas Raef blogged about <a href=\"https:\/\/wewatchyourwebsite.com\/how-we-identified-nearly-150k-hacked-wordpress-sites-in-60-days\/\">how <strong>cookie hijacking<\/strong> is an overlooked attack vector<\/a> in WordPress compromises. One of the biggest, actually.<\/p>\n\n\n\n<figure class=\"wp-block-pullquote\"><blockquote><p>Over the past month, actually September, we removed malware from 111,354 websites.<br><br>21,752 had 2 security plugins installed. Both installed before the infection. Neither stopped it or detected the infection.&nbsp;1,377 had Solid Security on them also. None used the passkeys. When the hackers breached the site, the one plugin they deactivated was Solid Security. 1,112 sites had deactivated Solid Security. None deactivated the other 2FA testament to which plugin they fear the most.<\/p><cite>Thomas Raef<\/cite><\/blockquote><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">In many cases, attackers don\u2019t brute-force your password or exploit an outdated plugin. Instead, they intercept or steal valid session cookies from logged-in users, allowing them to impersonate administrators without ever touching the login screen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That\u2019s why securing your WordPress session, using HTTPS everywhere, short session expirations, and 2FA, matters so much.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It also underscores why \u201clogin lockdown\u201d plugins don\u2019t protect you from the modern threat landscape. Most attacks bypass the login form entirely.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-the-multi-layer-mindset\">The Multi-Layer Mindset<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Security is not a product you install. It\u2019s a mindset, a layered architecture of responsibility.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A good host covers the infrastructure.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A WAF covers the edge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2FA and strong passwords protect user accounts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A lean, developer-minded framework like Fortress handles internal monitoring and hardening.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Everything else is noise.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So, if you want a <em>secure<\/em> WordPress version, don\u2019t start by searching for \u201cbest WordPress security plugin.\u201d<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Start by understanding where the holes are, and then stack the slices properly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Because real security isn\u2019t about hiding your login page. It\u2019s about making sure that when one layer fails, the next one catches what gets through.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That\u2019s how you build a truly secure WordPress version.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Security in the context of WordPress is a topic I see being misrepresented often. Misrepresented in the way that &#8220;just install our solution&#8221; is presented as the golden ticket. It&#8217;s not. Let\u2019s get this out of the way first: installing a \u201cWordPress security plugin\u201d doesn\u2019t make your site secure. Most of the WordPress solutions out [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":"","_links_to":"","_links_to_target":"","_wordproof_timestamp":false},"categories":[1484,1215],"tags":[],"class_list":["post-421678","post","type-post","status-publish","format-standard","hentry","category-wordpress-performance","category-wordpress-tools"],"acf":[],"_links":{"self":[{"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/posts\/421678","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/comments?post=421678"}],"version-history":[{"count":3,"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/posts\/421678\/revisions"}],"predecessor-version":[{"id":421728,"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/posts\/421678\/revisions\/421728"}],"wp:attachment":[{"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/media?parent=421678"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/categories?post=421678"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/remkusdevries.com\/wp-json\/wp\/v2\/tags?post=421678"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}