{"id":41632,"date":"2026-08-25T15:47:27","date_gmt":"2026-08-25T15:47:27","guid":{"rendered":"https:\/\/make.wordpress.org\/meta\/?post_type=handbook&#038;p=41632"},"modified":"2026-09-04T11:19:40","modified_gmt":"2026-09-04T11:19:40","slug":"deploying-wordpress-org","status":"publish","type":"handbook","link":"https:\/\/make.wordpress.org\/meta\/handbook\/tutorials-guides\/wordpress-org-sandboxes\/deploying-wordpress-org\/","title":{"rendered":"Deploying WordPress.org"},"content":{"rendered":"<p class=\"wp-block-paragraph\">This page covers getting a change from a merged pull request, or a working copy on your sandbox, onto <span tabindex='0' class='glossary-item-container'>WordPress.org<span class='glossary-item-hidden-content'><span class='glossary-item-header'>WordPress.org<\/span> <span class='glossary-item-description'>The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization.  <a href=\"https:\/\/wordpress.org\/\">https:\/\/wordpress.org\/<\/a><\/span><\/span><\/span>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You need RW access to <code>meta.svn<\/code> and\/or <code>dotorg.svn<\/code> \u2014 see <a href=\"https:\/\/make.wordpress.org\/meta\/handbook\/about\/projects\/becoming-a-meta-committer\/\">Becoming a Meta committer<\/a> \u2014 and an <span tabindex='0' class='glossary-item-container'>SVN<span class='glossary-item-hidden-content'><span class='glossary-item-header'>SVN<\/span> <span class='glossary-item-description'>Apache Subversion (often abbreviated SVN, after its command name svn) is a software versioning and revision control system. Software developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly compatible successor to the widely used Concurrent Versions System (CVS). WordPress core and the wordpress.org released code are all centrally managed through SVN. https:\/\/subversion.apache.org\/.<\/span><\/span><\/span> password, which you generate from your profile as described in <a href=\"https:\/\/make.wordpress.org\/meta\/handbook\/tutorials-guides\/svn-access\/\">Subversion Access<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What a <span tabindex='0' class='glossary-item-container'>deploy<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Deploy<\/span> <span class='glossary-item-description'>Launching code from a local development environment to the production web server, so that it's available to visitors.<\/span><\/span><\/span> actually does<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Read this before your first deploy.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>A deploy ships all code in the tree, not just your changes.<\/strong> WordPress.org runs WordPress <span tabindex='0' class='glossary-item-container'>core<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Core<\/span> <span class='glossary-item-description'>Core is the set of software required to run WordPress. The Core Development Team builds WordPress.<\/span><\/span><\/span> trunk and a large number of plugins. Anything committed since the last deploy goes out with yours. You must be ready to respond to breakage you did not cause.<\/li>\n\n\n\n<li><strong>A deploy takes roughly four to eight minutes, and is not atomic.<\/strong> Expect some <span tabindex='0' class='glossary-item-container'>PHP<span class='glossary-item-hidden-content'><span class='glossary-item-header'>PHP<\/span> <span class='glossary-item-description'>PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. <a href=\"https:\/\/www.php.net\/manual\/en\/index.php\">https:\/\/www.php.net\/manual\/en\/index.php<\/a><\/span><\/span><\/span> fatals while it runs \u2014 a new file added to core, or a <span tabindex='0' class='glossary-item-container'>plugin<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Plugin<\/span> <span class='glossary-item-description'>A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory <a href=\"https:\/\/wordpress.org\/plugins\/\">https:\/\/wordpress.org\/plugins\/<\/a> or can be cost-based plugin from a third-party.<\/span><\/span><\/span> updating mid-deploy, will briefly be half-present.<\/li>\n\n\n\n<li><strong>It runs the test suite and clears the mid-deploy cache<\/strong>, which is part of why it is slow. Let it finish; do not interrupt it.<\/li>\n\n\n\n<li><strong>A deploy may stop and ask you to commit changes you did not make.<\/strong> <code>deploy-dotorg.sh<\/code> exports the latest root files from <code>core.svn<\/code> before <span tabindex='0' class='glossary-item-container'>deploying<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Deploy<\/span> <span class='glossary-item-description'>Launching code from a local development environment to the production web server, so that it's available to visitors.<\/span><\/span><\/span>, so an updated <code>wp-settings.php<\/code> can appear as a pending change. It prompts <em>\u201cThere are changes to make, please test and commit them\u201d<\/em> \u2014 test and commit them. Answering no may break production.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Committing<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Always sync your working copy first:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn up<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Review what you are about to send:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn diff path\/to\/file<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Commit a single path:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn ci path\/to\/file -m \"Component Name: Fix the thing. See #1234. Props username.\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Commit several paths as one changeset, either by listing them or by referencing siblings from inside a plugin directory:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn ci path\/to\/file1 path\/to\/file2 -m \"...\"\n\ncd wp-content\/plugins\/support-forums\nsvn ci . ..\/..\/themes\/pub\/wporg-support-2024\/ -m \"...\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Follow the <a href=\"https:\/\/make.wordpress.org\/core\/handbook\/best-practices\/commit-messages\/\">Core commit message conventions<\/a>. In short: a human-readable component prefix (<code>Plugin Directory:<\/code> rather than <code>plugin-directory:<\/code>), a ticket reference if one exists (<code>See #1234<\/code> or <code>Fixes #1234<\/code>), props listed without <code>@<\/code>, and <code>Closes &lt;pull request URL&gt;<\/code> in the body when the change came from a PR.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If a commit fails with <code>svn: E175013: Access to '\/!svn\/me' forbidden<\/code>, that is a permissions problem rather than a broken working copy \u2014 the account you are committing with does not have write access to that repository. See <a href=\"https:\/\/make.wordpress.org\/meta\/handbook\/about\/projects\/becoming-a-meta-committer\/\">Becoming a Meta committer<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Deploying<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>deploy-dotorg.sh &lt;target&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Targets include <code>wporg<\/code>, <code>api<\/code>, <code>forums<\/code>, <code>mu<\/code>, <code>planetw<\/code>, <code>buddypress<\/code> and others. Use the target that matches what you changed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If your change touches shared code loaded by several sites, refresh every local SVN checkout and deploy them all:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svnup-all.sh\ndeploy all<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code>deploy all<\/code> takes considerably longer than a single target. Shared code may also need <a href=\"https:\/\/make.wordpress.org\/meta\/handbook\/tutorials-guides\/wordpress-org-sandboxes\/deploying-wordcamp-org\/\">a WordCamp.org deploy<\/a> on top of this.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Changes that come from <span tabindex='0' class='glossary-item-container'>GitHub<span class='glossary-item-hidden-content'><span class='glossary-item-header'>GitHub<\/span> <span class='glossary-item-description'>GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the \u2018pull request\u2019 where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. <a href=\"https:\/\/github.com\/\">https:\/\/github.com\/<\/a><\/span><\/span><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For components developed on GitHub and synced into SVN, do not hand-commit the change. Use the sync script, which rebases the merged PR into both <code>meta.svn<\/code> and <code>dotorg.svn<\/code> in one go.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">WordPress.org and the Plugin Directory<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Fork <a href=\"https:\/\/github.com\/WordPress\/wordpress.org\">WordPress\/wordpress.org<\/a>, branch, and build your change.<\/li>\n\n\n\n<li>Open a PR against <code>WordPress\/wordpress.org<\/code>. Optionally, create a <span tabindex='0' class='glossary-item-container'>Trac<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Trac<\/span> <span class='glossary-item-description'>Trac is the place where contributors create issues for bugs or feature requests much like GitHub.<a href=\"https:\/\/core.trac.wordpress.org\/\">https:\/\/core.trac.wordpress.org\/<\/a>.<\/span><\/span><\/span> ticket and link it in the PR description.<\/li>\n\n\n\n<li>Once approved, <span tabindex='0' class='glossary-item-container'>SSH<span class='glossary-item-hidden-content'><span class='glossary-item-header'>SSH<\/span> <span class='glossary-item-description'>Secure SHell - a protocol for securely connecting to a remote system in addition to or in place of a password.<\/span><\/span><\/span> to your sandbox.<\/li>\n\n\n\n<li>Install and authenticate the <code>gh<\/code> <span tabindex='0' class='glossary-item-container'>CLI<span class='glossary-item-hidden-content'><span class='glossary-item-header'>CLI<\/span> <span class='glossary-item-description'>Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress.<\/span><\/span><\/span> on the sandbox \u2014 the sync script needs it. The release tarball contains a prebuilt binary; you do not need to compile anything.<\/li>\n\n\n\n<li>Run the sync script from the web root:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/home\/wporg\/public_html\nbin\/sync\/github-wordpress.org.sh &lt;pr-number&gt;<\/code><\/pre>\n\n\n\n<ol start=\"6\" class=\"wp-block-list\">\n<li>If the PR adds a new plugin, handle the external first \u2014 see below.<\/li>\n\n\n\n<li>Deploy:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>deploy-dotorg.sh wporg<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Pattern Directory<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Squash and merge the PR on GitHub.<\/li>\n\n\n\n<li>On the sandbox, <code>svn up<\/code> first.<\/li>\n\n\n\n<li>Run <code>bin\/sync\/pattern-directory.sh<\/code>. The script waits for all GitHub Actions to finish before syncing.<\/li>\n\n\n\n<li>When prompted, press <code>d<\/code> to view the diff before it commits. <strong>Do not press <code>f<\/code><\/strong> \u2014 that skips waiting for the Actions to complete.<\/li>\n\n\n\n<li>Deploy with <code>deploy-dotorg.sh wporg<\/code>.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Learn WordPress<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/learn.wordpress.org\">learn.wordpress.org<\/a> is developed in <a href=\"https:\/\/github.com\/WordPress\/Learn\">WordPress\/Learn<\/a> and synced into SVN.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Merge your PR on GitHub.<\/li>\n\n\n\n<li>Run the sync from the WordPress.org web root, then refresh your checkouts and deploy:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/home\/wporg\/public_html\nbin\/sync\/learn.sh\nsvnup-all.sh\ndeploy-dotorg.sh wporg<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Make WordPress<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/make.wordpress.org\">make.wordpress.org<\/a> is developed in <a href=\"https:\/\/github.com\/WordPress\/wporg-make\">WordPress\/wporg-make<\/a> and synced into SVN.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Merge your PR on GitHub.<\/li>\n\n\n\n<li>GH will trigger an action, which will push the changes to the <a href=\"https:\/\/github.com\/WordPress\/wporg-make\/tree\/build\">build<\/a> branch. Confirm your changes are there.<\/li>\n\n\n\n<li>Run the sync from the WordPress.org web root, then refresh your checkouts and deploy:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/home\/wporg\/public_html\nbin\/sync\/wporg-make.sh\nsvnup-all.sh\ndeploy-dotorg.sh wporg<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Shared mu-plugins<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The mu-plugins shared across the WordPress.org network are developed in <a href=\"https:\/\/github.com\/WordPress\/wporg-mu-plugins\">WordPress\/wporg-mu-plugins<\/a> and synced into <code>dotorg.svn<\/code>. This is the repository behind the <code>wporg-mu-plugins<\/code> external you will find in more than one web root \u2014 see <a href=\"https:\/\/make.wordpress.org\/meta\/handbook\/tutorials-guides\/wordpress-org-sandboxes\/working-on-a-sandbox\/\">Working on a sandbox<\/a>.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Merge your PR to <code>trunk<\/code> on GitHub.<\/li>\n\n\n\n<li><strong>Wait for the build action to finish.<\/strong> The sync clones the repository\u2019s <code>build<\/code> branch, not <code>trunk<\/code>, so syncing before the action completes picks up a stale build. The script warns you if actions are still running or have failed, but it does not wait for them.<\/li>\n\n\n\n<li>Run the sync script from the web root:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/home\/wporg\/public_html\nbin\/sync\/wporg-mu-plugins.sh<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The script stages the built code into <code>wp-content\/mu-plugins\/pub-sync<\/code> on the sandbox, prints the diff, and then prompts you: press <code>c<\/code> to commit to <code>dotorg.svn<\/code>, or Control+C to abort. Aborting leaves the staged code on the sandbox rather than reverting it. It commits as <code>mu-plugins: Sync with git WordPress\/wporg-mu-plugins@&lt;commit&gt;<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">After committing it offers to deploy for you \u2014 press <code>y<\/code> and it runs <code>deploy-dotorg.sh all<\/code>, which is what shared mu-plugins need. You do not have to deploy separately.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Two things to know before you run it. If <code>pub-sync<\/code> has local modifications the script stops and asks whether to back them up (<code>b<\/code>) or discard them (<code>r<\/code>). And if you abort after staging, undo it with:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn revert -R \/home\/wporg\/public_html\/wp-content\/mu-plugins\/pub-sync\nsvn cleanup --remove-unversioned \/home\/wporg\/public_html\/wp-content\/mu-plugins\/pub-sync<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Shared configuration<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The <code>.config\/<\/code> directory is checked out into more than one web root: <code>\/home\/wporg\/public_html\/.config\/<\/code> and <code>\/home\/wordcamp\/public_html\/.config\/<\/code> are working copies of the same <code>dotorg.svn<\/code> path \u2014 see <a href=\"https:\/\/make.wordpress.org\/meta\/handbook\/tutorials-guides\/wordpress-org-sandboxes\/working-on-a-sandbox\/\">Working on a sandbox<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Commit the change once \u2014 both paths are the same working copy \u2014 then refresh and deploy each network separately. <code>svnup-all.sh<\/code> is run from inside that root\u2019s <code>.config\/<\/code>, once per root: running it in one root does not refresh the other.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/home\/wordcamp\/public_html\/.config\/\nsvnup-all.sh\n# edit the file\nsvn ci -m \"Describe the change.\"\ndeploy-wordcamp.sh\n\ncd \/home\/wporg\/public_html\/.config\/\nsvnup-all.sh\ndeploy-dotorg.sh all<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The commit happens only in the root you start from; the second root needs the refresh and its own deploy, nothing more. Which network you do first does not matter, but both are required \u2014 skipping one leaves it serving the old configuration.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Smoke test across both networks afterwards, not just the one you were working in \u2014 for example <code>wordpress.org<\/code>, a profile page, <code>central.wordcamp.org<\/code>, and <code>events.wordpress.org<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Adding a new plugin<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If a PR adds a new plugin, the website repository needs an <code>svn:externals<\/code> entry pointing at its <code>meta.svn<\/code> path. Do this <em>after<\/em> the sync commit and <em>before<\/em> deploying:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn propedit svn:externals .<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Add the plugin under the correct section for <span tabindex='0' class='glossary-item-container'>meta<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Meta<\/span> <span class='glossary-item-description'>Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress.<\/span><\/span><\/span> plugins:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;plugin-slug&gt; https:\/\/meta.svn.wordpress.org\/sites\/trunk\/wordpress.org\/public_html\/wp-content\/plugins\/&lt;plugin-slug&gt;\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Then commit, deploy, sync, and activate:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>svn commit \/home\/wporg\/public_html\/wp-content\/plugins -m \"Plugins: Add the &lt;plugin-slug&gt; external. Fixes #1234.\"\ndeploy-dotorg.sh wporg\nsvn up\nwp --url=https:\/\/wordpress.org\/plugins\/ plugin activate &lt;plugin-slug&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">If something breaks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Have these to hand before you need them.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Pin WordPress trunk to an earlier revision.<\/strong> If a core trunk change causes widespread breakage, pin to a known-good revision \u2014 find it at <a href=\"https:\/\/build.trac.wordpress.org\/changeset\">build.trac.wordpress.org\/changeset<\/a>.<\/li>\n\n\n\n<li><strong>Roll back a <span tabindex='0' class='glossary-item-container'>Gutenberg<span class='glossary-item-hidden-content'><span class='glossary-item-header'>Gutenberg<\/span> <span class='glossary-item-description'>The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses \u2018blocks\u2019 to add richness rather than shortcodes, custom HTML etc.\r<a href=\"https:\/\/wordpress.org\/gutenberg\/\">https:\/\/wordpress.org\/gutenberg\/<\/a><\/span><\/span><\/span> update.<\/strong> Edit <code>svn:externals<\/code> on <code>wp-content\/plugins<\/code> and set the previous stable version tag.<\/li>\n\n\n\n<li><strong>Revert a commit.<\/strong> <code>svn merge -c -&lt;revision&gt; .<\/code> followed by a commit and another deploy. Confirm the exact incantation with a Meta committer before you need it in anger.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Deploying a revert is still a full deploy, with all the caveats at the top of this page.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Manual commits<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you need to commit a change without going through GitHub or a sync script \u2014 because something is broken and the normal path is not available \u2014 <strong>do it.<\/strong> Getting the fix out matters more; the history can be reconciled afterwards.<\/p>\n<nav class='o2-post-footer-actions'><ul class='o2-post-footer-action-row'><\/ul><div class='o2-post-footer-action-likes'><\/div><ul class='o2-post-footer-action-row'><\/ul><\/nav>","protected":false},"author":15256814,"featured_media":0,"parent":41626,"menu_order":0,"template":"","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","footnotes":""},"class_list":["post-41632","handbook","type-handbook","status-publish","hentry","author-bor0","make-deploying-wordpress-org"],"revision_note":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/handbook\/41632","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/handbook"}],"about":[{"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/types\/handbook"}],"author":[{"embeddable":true,"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/users\/15256814"}],"version-history":[{"count":9,"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/handbook\/41632\/revisions"}],"predecessor-version":[{"id":41695,"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/handbook\/41632\/revisions\/41695"}],"up":[{"embeddable":true,"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/handbook\/41626"}],"wp:attachment":[{"href":"https:\/\/make.wordpress.org\/meta\/wp-json\/wp\/v2\/media?parent=41632"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}