{"id":372982,"date":"2026-10-06T07:46:49","date_gmt":"2026-10-06T07:46:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/terrasuite\/"},"modified":"2026-10-19T14:37:03","modified_gmt":"2026-10-19T14:37:03","slug":"terrasuite","status":"publish","type":"plugin","link":"https:\/\/fa.wordpress.org\/plugins\/terrasuite\/","author":12911309,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.1","stable_tag":"1.1.1","tested":"7.1.3","requires":"6.5","requires_php":"8.2","requires_plugins":null,"header_name":"TerraSuite","header_author":"Havenswift Hosting","header_description":"A complete estate agency suite for WordPress: property listings, shared agency instructions with fee splits, portal feed imports with de-duplication, map and radius search, applicant matching, a viewings calendar clients can request slots from, a knowledgebase, Elasticsearch and an optional AI assistant.","assets_banners_color":"382626","last_updated":"2026-10-19 14:37:03","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/terrasuite.uk\/","header_author_uri":"https:\/\/havenswift-hosting.co.uk\/","rating":5,"author_block_rating":0,"active_installs":0,"downloads":409,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"havenswift-hosting","date":"2026-10-06 07:46:22","revision":3730240},"1.0.3":{"tag":"1.0.3","author":"havenswift-hosting","date":"2026-10-11 15:36:40","revision":3739699},"1.1.0":{"tag":"1.1.0","author":"havenswift-hosting","date":"2026-10-16 22:07:35","revision":3751192},"1.1.1":{"tag":"1.1.1","author":"havenswift-hosting","date":"2026-10-19 14:37:03","revision":3754994}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3730239,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3730239,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3730239,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3730239,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2","1.0.3","1.1.0","1.1.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3730239,"resolution":"1","location":"assets","locale":"","width":1280,"height":800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3730239,"resolution":"2","location":"assets","locale":"","width":1280,"height":800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3730239,"resolution":"3","location":"assets","locale":"","width":1280,"height":800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3730239,"resolution":"4","location":"assets","locale":"","width":1280,"height":800},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3730239,"resolution":"5","location":"assets","locale":"","width":1280,"height":800},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3730239,"resolution":"6","location":"assets","locale":"","width":1280,"height":800},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3730239,"resolution":"7","location":"assets","locale":"","width":1280,"height":800}},"screenshots":{"1":"The front page a visitor lands on: search, map search and area guides.","2":"A property, with its gallery, key facts and the enquiry form.","3":"Search results, filtered without a full page reload.","4":"The self-hosted map search - no third-party script, no API key.","5":"The dashboard an agency actually opens every morning: what needs a reply,\nwhat's coming up, and the newest clients.","6":"The property list, with everything a portal asks for.","7":"The Clients screen: one record per person, however they arrived."}},"plugin_section":[],"plugin_tags":[287488,51424,287489,5070,287490],"plugin_category":[],"plugin_contributors":[284648],"plugin_business_model":[],"class_list":["post-372982","plugin","type-plugin","status-publish","hentry","plugin_tags-estate-agency-software","plugin_tags-estate-agent","plugin_tags-letting-agent-software","plugin_tags-property","plugin_tags-rental-property","plugin_contributors-havenswift-hosting","plugin_committers-havenswift-hosting"],"banners":{"banner":"https:\/\/ps.w.org\/terrasuite\/assets\/banner-772x250.png?rev=3730239","banner_2x":"https:\/\/ps.w.org\/terrasuite\/assets\/banner-1544x500.png?rev=3730239","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/terrasuite\/assets\/icon-128x128.png?rev=3730239","icon_2x":"https:\/\/ps.w.org\/terrasuite\/assets\/icon-256x256.png?rev=3730239","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-1.png?rev=3730239","caption":"The front page a visitor lands on: search, map search and area guides."},{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-2.png?rev=3730239","caption":"A property, with its gallery, key facts and the enquiry form."},{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-3.png?rev=3730239","caption":"Search results, filtered without a full page reload."},{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-4.png?rev=3730239","caption":"The self-hosted map search - no third-party script, no API key."},{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-5.png?rev=3730239","caption":"The dashboard an agency actually opens every morning: what needs a reply,\nwhat's coming up, and the newest clients."},{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-6.png?rev=3730239","caption":"The property list, with everything a portal asks for."},{"src":"https:\/\/ps.w.org\/terrasuite\/assets\/screenshot-7.png?rev=3730239","caption":"The Clients screen: one record per person, however they arrived."}],"raw_content":"<!--section=description-->\n<p>Property listings, search and enquiries for an estate or letting agency. The\nfields on a property follow the market you set: a UK agency gets tenure and\ncouncil tax band, a Spanish agency community fees and the cadastral reference,\nan American agency HOA fees and an MLS number.<\/p>\n\n<p>Everything described below is in this plugin and works without paying anybody.<\/p>\n\n<h4>What it does<\/h4>\n\n<ul>\n<li><strong>Listings.<\/strong> Unlimited properties, for sale, to rent or short let, with\nphotographs, floorplans, key selling points and every field a portal asks for.<\/li>\n<li><strong>Search.<\/strong> Filters that run against a flat index, so ten filters is still one\nquery. Distance from a point, or an area the visitor draws on the map.<\/li>\n<li><strong>Maps.<\/strong> Self-hosted. No third-party script and no API key. An owner who does\nnot want the exact position published gets a shaded circle, and the search\nstill works correctly.<\/li>\n<li><strong>Enquiries and clients.<\/strong> One record per person, however they arrived.<\/li>\n<li><strong>Shortlists.<\/strong> A visitor saves the properties they like and comes back to\nthem, with or without registering.<\/li>\n<li><strong>Area guides<\/strong>, written by hand.<\/li>\n<li><strong>CSV import and export<\/strong>, both ways, with a mapping screen.<\/li>\n<li><strong>Structured data<\/strong> for search engines, on every property.<\/li>\n<li><strong>Privacy tools<\/strong>: the export and erase requests WordPress asks plugins to\nanswer, covering the records this plugin keeps.<\/li>\n<li><strong>Your own website<\/strong>: pages, menus, a front page and a staff list, so an\nagency can put a site together without a page builder.<\/li>\n<\/ul>\n\n<h4>What it does not include<\/h4>\n\n<p>No login lockout, no firewall, no malware scanner, no SEO fields, no caching,\nno contact-form builder. Those belong at the edge or in one plugin that does\nthem properly.<\/p>\n\n<h4>A paid add-on exists<\/h4>\n\n<p>TerraSuite Pro is a separate plugin sold from terrasuite.uk. It adds the\nviewings calendar and bookings, the message centre, QR codes, branded\nparticulars, portal feed importers and de-duplication, partner agencies and\nfee splits, applicant matching and alerts, Elasticsearch and the AI features.\nIt also adds the knowledgebase, with sixty-three articles written for clients\nand for staff.<\/p>\n\n<h3>Third-party libraries<\/h3>\n\n<p>Two libraries ship with the plugin, both unmodified release artefacts under\nGPL-compatible licences:<\/p>\n\n<ul>\n<li>Leaflet 1.9.4, BSD-2-Clause, https:\/\/github.com\/Leaflet\/Leaflet\/releases\/tag\/v1.9.4<\/li>\n<li>Leaflet.draw 1.0.4, MIT, https:\/\/github.com\/Leaflet\/Leaflet.draw\/releases\/tag\/v1.0.4<\/li>\n<\/ul>\n\n<p>Both are minified as published by their own projects. The non-compiled source is\nat the tags above, and public\/vendor\/README.md records how to replace either one.<\/p>\n\n<h3>External services<\/h3>\n\n<p>The plugin contacts nothing at all unless you switch something on, and nothing\nis contacted on activation or on a schedule.<\/p>\n\n<p><strong>Geocoding (off by default).<\/strong> When you enable it, the address of a property\nyou save is sent to the geocoding service you nominate so it can be placed on\na map. The default is Nominatim, run by the OpenStreetMap Foundation: one\nrequest per second, and every answer cached for a year.\nService: https:\/\/nominatim.openstreetmap.org\nTerms: https:\/\/operations.osmfoundation.org\/policies\/nominatim\/\nPrivacy: https:\/\/wiki.osmfoundation.org\/wiki\/Privacy_Policy<\/p>\n\n<p><strong>Map tiles.<\/strong> On a page where you place a map, the visitor's browser fetches\nmap images directly from the tile service set in Property &gt; Settings &gt; Maps,\nwhich defaults to tile.openstreetmap.org. The request comes from the visitor's\nbrowser and carries their IP address and the area of the map being viewed.\nService: https:\/\/www.openstreetmap.org\nCopyright: https:\/\/www.openstreetmap.org\/copyright\nPrivacy: https:\/\/wiki.osmfoundation.org\/wiki\/Privacy_Policy<\/p>\n\n<p><strong>Area guides and photographs (Property &gt; Get Content).<\/strong> Only when you open\nthat screen and press a button to download a region pack. The screen lists\nwhat is sent before you press anything: the address of your site, and an email\naddress only if you choose to type one in. The packs are images and text, never\ncode, and they are served by us.\nService: https:\/\/terrasuite.uk\/bundles\/\nTerms: https:\/\/terrasuite.uk\/terms-of-use\/\nPrivacy: https:\/\/terrasuite.uk\/privacy-policy\/<\/p>\n\n<p><strong>Google Places (off by default).<\/strong> If you choose to show Google reviews and\nenter your own Google API key, the place identifier you set is sent to\nplaces.googleapis.com to fetch the review text and rating shown on your site.\nService: https:\/\/developers.google.com\/maps\/documentation\/places\/web-service\nTerms: https:\/\/cloud.google.com\/maps-platform\/terms\nPrivacy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p><strong>YouTube (only if you paste a YouTube address on a property).<\/strong> The video is\nembedded from www.youtube-nocookie.com, the no-cookie player, and the\nthumbnail comes from i.ytimg.com. Both are fetched by the visitor's browser\nwhen they open that property, and carry their IP address. A link to the video\non www.youtube.com is shown beside the player.\nTerms: https:\/\/www.youtube.com\/t\/terms\nPrivacy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p><strong>Vimeo (only if you paste a Vimeo address on a property).<\/strong> The video is\nembedded from player.vimeo.com and a link to vimeo.com is shown beside it.\nFetched by the visitor's browser when they open that property, carrying their\nIP address.\nTerms: https:\/\/vimeo.com\/terms\nPrivacy: https:\/\/vimeo.com\/privacy<\/p>\n\n<p><strong>WhatsApp (only if a staff member has a WhatsApp number set).<\/strong> No request is\nmade: the number becomes an ordinary https:\/\/wa.me\/ link, which opens WhatsApp\nif the visitor clicks it.\nTerms: https:\/\/www.whatsapp.com\/legal\/terms-of-service\nPrivacy: https:\/\/www.whatsapp.com\/legal\/privacy-policy<\/p>\n\n<p>The plugin is published by Havenswift Hosting\nhttps:\/\/www.havenswift-hosting.co.uk\/<\/p>\n\n<p>There is no usage tracking of any kind.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the folder to <code>\/wp-content\/plugins\/<\/code> and activate it.<\/li>\n<li>Property &gt; Settings &gt; General: your country, currency and units.<\/li>\n<li>Property &gt; Your Agency: fill in your own record.<\/li>\n<li>Add one property by hand and look at it on the website, before setting up\nany import.<\/li>\n<\/ol>\n\n<p>Property &gt; Tools will create demonstration data so you can try everything, and\nremove it again in one step.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20expire%2C%20or%20stop%20working%3F\"><h3>Does it expire, or stop working?<\/h3><\/dt>\n<dd><p>No. There is no trial, no licence check and no feature in this plugin that\nwaits for a payment. What is in the description is what it does, permanently.<\/p><\/dd>\n<dt id=\"does%20it%20need%20an%20api%20key%20for%20maps%3F\"><h3>Does it need an API key for maps?<\/h3><\/dt>\n<dd><p>No. The map library is served from the plugin. The tile URL is a setting; read\nthe terms of whichever tile service you point it at.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20my%20site%20down%3F\"><h3>Will it slow my site down?<\/h3><\/dt>\n<dd><p>The search runs against a purpose-built index table rather than through post\nmeta, which is why a ten-filter search is a single query. On a reference\ninstallation that search took half a millisecond.<\/p><\/dd>\n<dt id=\"does%20it%20send%20anything%20anywhere%3F\"><h3>Does it send anything anywhere?<\/h3><\/dt>\n<dd><p>Not unless you switch something on, or paste in a video. See \"External\nservices\" below for everything that can reach an outside server, what each one\nsends, and when.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>A property's UPRN is now shown on its page. The field was added in 1.1.0 and\ncollected on every property, but no template printed it, so nobody outside\nthe editing screen ever saw one. It now sits with the other identifiers,\nbeside the reference and the MLS number, rather than among the disclosures.<\/li>\n<li>Each country is now only asked for its own paperwork. The seven Spanish\nrental disclosure fields, and the IBI and refuse charge, were being offered\non properties in Portugal, Italy and France, which have no reference rent\nindex, no gran tenedor and no IBI. The five British fields - UPRN, council\ntax band, coalfield and the two EPC ratings - were being offered in Ireland,\nwhich uses neither council tax nor an EPC. The fields each country does need\nare unchanged.<\/li>\n<li>Getting Started now covers every screen in the plugin. Two were missing, both\nof them Featured email: the screen itself and its settings tab. The guide is\nalso checked the other way round, so a step can no longer claim it covers a\nscreen that does not exist - one step did, and read as coverage.<\/li>\n<li>The SSH host key help on the import screen is one sentence shorter and says\nwhat to type. Spanish is complete, at 2,493 of 2,493 strings.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Spanish rental adverts now carry what the law requires. Real Decreto-ley\n29\/2026 came into force on 8 October 2026 and names what every rental offer\nmust publish: the reference rent index where the home is in a declared\nrent-controlled zone, the applicable rent limit together with the rules that\nset it, the unit's registration code where it has one, and whether the\nlandlord is a gran tenedor. Seven new fields hold all of it. The\nrent-controlled designation is made by town, not by property, so it is\nanswered once on the Location term and every property in that town inherits\nit, with an override for a municipality declared only in part. There is no\nswitch to turn the fields on: each one publishes as soon as it holds a value,\nand a notice above the title names anything still missing where the zone says\nit is required.<\/li>\n<li>A feed from another agency is now recognised as another agency's stock. If\nyou import a partner's feed, the properties used to be recorded as your own\ninstructions. The listing address inside the feed says whose they really are,\nso they are now marked as shared and attributed, with nothing to set up and\nno question to answer.<\/li>\n<li>Sixty fields that no import or export could reach are now carried by both.\nEleven of these were fixed on 11 October; the rest were found by listing\nevery field the plugin registers and comparing it against what the import\nmapping screen and the CSV export actually offer, which is now checked\nautomatically so it cannot drift again.<\/li>\n<li>UK properties have a UPRN field. The local authority gives every addressable\nproperty in Great Britain a UPRN, it stays with the building through a\nrenumbering or a conversion into flats, it is printed on every EPC, and Land\nRegistry has published it alongside Price Paid Data since August 2026. You\ntype it off the certificate; there is no lookup, because the address-to-UPRN\nmapping is licensed.<\/li>\n<li>The Spanish translation now travels with the plugin. It used to be installed\nseparately on each site, which meant no update ever carried it and the\ndeployed copy was three weeks behind the plugin, so new screens appeared in\nEnglish on a Spanish site. The catalogue is built into the plugin and is\nrebuilt as part of every release.<\/li>\n<li>Getting Started is the first item in the TerraSuite menu. It was two thirds\nof the way down, below Settings, which is a poor place for the screen written\nfor your first morning.<\/li>\n<li>Content packs now download. The area guides and photographs are fetched from\nour own website, and our firewall was blocking that request for every\ninstallation since launch; the plugin reported it as \"forbidden\". The fix is\non our side and this version needs no change for it, but this is the first\nrelease since it was put right.<\/li>\n<li>The import screen now reads the file you uploaded. Instead of forty empty\nboxes asking you to type your own column names from memory, each field\noffers a list of the columns your file really contains, with a match already\nchosen where one is obvious, and three rows of that column shown beside it\nso you can see what you are about to import. Columns nothing is reading are\nnamed underneath.<\/li>\n<li>Eleven more fields can be mapped on an import and are carried by the CSV\nexport: your own reference, year built, furnished, parking, garden, tenure,\ncouncil tax band, community fees, IBI, and the two energy values in kWh and\nkg CO2. The import has always been able to write them; nothing could ever\nsend them, because the mapping screen offers only the fields listed here.<\/li>\n<li>The CSV export no longer carries four columns that could never hold\nanything, and now fills three that were always blank: the first address\nline, the source's last-modified date and the source listing URL.<\/li>\n<li>A property's own reference now survives an export and re-import. The\nreference column used to be overwritten with a WordPress post id, which\nmeans nothing on another site, so an agency's quotable references were lost\nin a move.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>A column in an imported CSV reading \"No\", \"false\" or \"off\" is now stored as\nno. It was stored as YES, because the test asked whether the cell was empty\nand those words are not. An agency importing its own stock got a swimming\npool and a garden on every property. \"0\" worked only by accident.<\/li>\n<li>An empty price, bedroom or area column in an imported CSV now leaves the\nfield empty instead of setting it to zero, so a property with no price is no\nlonger published at nothing.<\/li>\n<li>The \"defaults for missing values\" on the import screen - currency, country\nand department - now apply to a CSV source. They were read by the XML and\nJSON importers and ignored by the CSV one, while the screen warned that a\nfeed with no currency turns 300,000 euros into 300,000 pounds.<\/li>\n<li>The directory listing is now titled \"TerraSuite - Estate Agency Software,\nProperty Listings and Map Search\" rather than \"TerraSuite\". Nothing about the\nplugin changes: the slug, the brand and the name WordPress shows on your\nPlugins screen are all the same. WordPress.org weights the listing title\nheavily when it ranks a search, and every plugin above us for \"real estate\nplugin\" and \"property listings\" carries those words in its name.<\/li>\n<li>An agency can now say which departments it runs. A sales-only agency switches\nlettings off and the other way round, and whatever is unticked stops\nappearing on the search form, the property editor, the import mapper and the\nregistration form. A department cannot be switched off while properties are\nrecorded against it, and the message says how many.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>The property, article, area guide, team, review and service post types, and\nthe eight taxonomies with them, are now prefixed terrasuite_ rather than ts_.\nExisting records are carried across on upgrade; no address changes.<\/li>\n<li>The printed particulars sheet loads its stylesheet the WordPress way instead\nof printing it into the page.<\/li>\n<li>Every value a form sends is sanitised where it is read: prices and sizes, the\nareas drawn on the map, the term lists, client notes, import separators and\nstored credentials.<\/li>\n<li>The valuation estimate is escaped where it is output rather than where it is\nbuilt, because a filter can change it in between.<\/li>\n<li>The knowledgebase is no longer part of the free plugin. Writing and publishing\narticles is a TerraSuite Pro feature; nothing already written is removed.<\/li>\n<li>Search results no longer repeat a property across two pages when several share\nthe same price or date.<\/li>\n<li>Spanish, and any other translation, is read from wp-content\/languages\/plugins\nas WordPress.org supplies it.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Drawing an area on the map, and shortlists, are now part of the free plugin.<\/li>\n<li>The shortlist has its page back. Properties could be saved with the heart\nbut there was nowhere to see the list again.<\/li>\n<li>Help articles can be written and published here. The screen for them was\nmissing, which left the \/help page with no way to put anything on it.<\/li>\n<li>QR codes, and the ready-written articles, moved to TerraSuite Pro.<\/li>\n<li>No page is created for a feature that is not installed.<\/li>\n<li>Opening Get Content no longer contacts us. The list of regions is fetched\nwhen you ask for it, which is what that screen always said.<\/li>\n<li>Stored passwords, and the tokens in feed addresses, use a key belonging to\nthis plugin. They were derived from the WordPress authentication salts, so\nrotating those after a security incident destroyed them with no warning.<\/li>\n<li>Feed passwords are stored with AES-256-CBC rather than a reversible scramble.<\/li>\n<li>A downloaded content pack is refused if it contains anything runnable.<\/li>\n<li>Every external service the plugin can reach is now listed above.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Estate agency software: property listings, filtered and map search, an area the visitor draws, enquiries and client records.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/372982","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=372982"}],"author":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/havenswift-hosting"}],"wp:attachment":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=372982"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=372982"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=372982"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=372982"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=372982"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=372982"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}