{"id":646115,"date":"2025-10-06T15:35:27","date_gmt":"2025-10-06T14:35:27","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=dotnet&#038;p=646115"},"modified":"2025-10-06T15:35:44","modified_gmt":"2025-10-06T14:35:44","slug":"9-resharper-features-every-dotnet-developer-should-know","status":"publish","type":"dotnet","link":"https:\/\/blog.jetbrains.com\/zh-hans\/dotnet\/2025\/10\/06\/9-resharper-features-every-dotnet-developer-should-know","title":{"rendered":"9 ReSharper Features Every .NET Developer Should Know"},"content":{"rendered":"\n<p>Around 15 years ago, I got my first assistant job at a university department. Frankly, I only used ReSharper for its <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Code_Analysis__Solution-Wide_Analysis.html\" target=\"_blank\" rel=\"noopener\">solution-wide analysis<\/a>, which would alert me whenever I broke the spaghetti code I got served. I did not know about all the refactorings yet. It was only at my second job that my awesome team lead (Fabian ?) taught me about all the niceties ReSharper had to offer. Eventually, we even extended it with custom <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Templates__Template_Basics__Template_Macros.html\" target=\"_blank\" rel=\"noopener\">live template macros<\/a>. What a memorable time. ?<\/p>\n\n\n\n<p>To this day, I consider ReSharper an indispensable Visual Studio extension that helps developers be more productive. Let me take you on a journey through my top nine ReSharper features!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Initial Letter Search<\/h2>\n\n\n\n<p>Navigation in ReSharper is not just about a single shortcut and wildcard text search on different syntax elements. The <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigation_and_Search__CamelHumps.html#camelhumps-in-search-commands\" target=\"_blank\" rel=\"noopener\">initial letter search<\/a> helps you to <strong>avoid typing out long parts<\/strong> of a searched element by using camel-humps; typing a <code>.<\/code> gives you a quick look at the type&#8217;s members. All results are shown in a <strong>clean, highlighted, and compact<\/strong> way:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/goto-everything-with-initial-letter-search.jpg\"\n        data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/goto-everything-with-initial-letter-search.gif\"\n        alt=\"Goto Everything with Initial Letter Search\"\n        width=\"660\"\/>\n    <figcaption class=\"wp-element-caption\">Goto Everything with Initial Letter Search<\/figcaption>\n<\/figure>\n\n\n\n<p>It even works a bit fuzzy, for example, <code>TupleNames<\/code> is shown when you search for <code>NT<\/code> (not <code>TN<\/code>). This allows you to find what you&#8217;re looking for, even if your input isn&#8217;t exact, whether it&#8217;s a typo or a fuzzy memory.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Contextual Navigation<\/h2>\n\n\n\n<p>Besides regular search-term-based navigation, ReSharper also provides a <b>growing number of contextual navigation actions<\/b>. After you&#8217;ve placed the caret on an element, you can invoke <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigation_and_Search__Navigate_from_Here.html\" target=\"_blank\" rel=\"noopener\"><em>Navigate To<\/em><\/a> and explore more specific items:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/navigate-to-context-menu.png\"\n        alt=\"Navigate To Context Menu\"\n        width=\"660\"\/>\n   <figcaption class=\"wp-element-caption\">Navigate To Context Menu<\/figcaption>\n<\/figure>\n\n\n\n<p>One of the most recent additions is <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigate_between_Tests_and_Tested_Code.html\" target=\"_blank\" rel=\"noopener\"><em>Related Tests\/Subject<\/em><\/a>, but you can also find old and familiar friends, like <em>Consuming\/Exposing APIs<\/em>, <em>Extension Methods, Show Usages<\/em>, or <em>Decompiled Sources<\/em>. Note that all actions have the assigned shortcut shown next to them for your skill progression!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Recent Locations and Changes<\/h2>\n\n\n\n<p>Statistically, a <b>large part of our work concerns reading and navigating code<\/b>. Only after we understand the surrounding bits can we confidently implement new features. Switching between reading and writing becomes essential, and ReSharper makes it effortless and targeted with the following actions:<\/p>\n\n\n\n<ul>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigation_and_Search__Navigating_to_Recent_Locations.html#recent_files\" target=\"_blank\" rel=\"noopener\"><em>Goto Recent Files<\/em><\/a> \u2013 a stack of previously visited files<\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigation_and_Search__Navigating_to_Recent_Locations.html#recent_edits\" target=\"_blank\" rel=\"noopener\"><em>Goto Recent Edits<\/em><\/a> \u2013 same as above, but filtered to files with changes<\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigation_and_Search__Navigating_to_Recent_Locations.html#previous_edit\" target=\"_blank\" rel=\"noopener\"><em>Goto Last Edit Location<\/em><\/a> \u2013 direct navigation to the recent edits<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/goto-recent-edits-pop-up-with-filtering.jpg\"\n        data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/goto-recent-edits-pop-up-with-filtering.gif\"\n        alt=\"Goto Recent Edits Pop-up with Filtering\"\n        width=\"660\"\/>\n    <figcaption class=\"wp-element-caption\">Goto Recent Edits Pop-up with Filtering<\/figcaption>\n<\/figure>\n\n\n\n<p>Once you start typing in these pop-ups, you can further filter the results. For many developers, these actions have made searching through editor tabs obsolete. Does anyone know an extension to completely hide them?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Extend Selection<\/h2>\n\n\n\n<p>As a developer, I often see my peers rely on the mouse to select text, which is rather inefficient and often imprecise. With the <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Coding_Assistance__Extend_Shrink_Selection.html\" target=\"_blank\" rel=\"noopener\"><em>Extend Selection<\/em><\/a> action, you can <strong>successively select the next higher logical block<\/strong> of code from your original caret position. <em>Shrink Selection<\/em> travels the selection stack backwards:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/extend-selection-and-shrink-selection-in-action.jpg\"\n        data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/extend-selection-and-shrink-selection-in-action.gif\"\n        alt=\"Extend Selection and Shrink Selection in Action\"\n        width=\"660\"\/>\n    <figcaption class=\"wp-element-caption\">Extend Selection and Shrink Selection in Action<\/figcaption>\n<\/figure>\n\n\n\n<p>The feature \u2013 similarly to <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Navigation_and_Search_Structural_Navigation.html\" target=\"_blank\" rel=\"noopener\">Structural Navigation<\/a> \u2013 relies on the concept of abstract syntax trees with small modifications to make it more useful and predictable. Both act as the <strong>groundwork for follow-up refactorings<\/strong>, like <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Refactorings__Introduce_Variable.html\" target=\"_blank\" rel=\"noopener\"><em>Introduce Variable<\/em><\/a> or <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Refactorings__Extract_Method.html\" target=\"_blank\" rel=\"noopener\"><em>Extract Method<\/em><\/a>, by allowing an accurate selection. They also enable the <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Reference__Options__Environment__Editor__Editor_Behavior.html#typing-assist\" target=\"_blank\" rel=\"noopener\"><em>structural remove<\/em> feature<\/a>, which removes remaining whitespaces and utility characters around your selection. For instance, to turn <code>Type&lt;TInput, TOutput&gt;<\/code> into <code>Type&lt;TInput&gt;<\/code> just by removing <code>TOutput<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Move Code Up\/Down\/Left\/Right<\/h2>\n\n\n\n<p>Rearranging code is common practice, but cut-and-paste is a provisional solution that often requires manual fixes. ReSharper lets you <strong>move code at the structural level<\/strong>, preserving logic and context. For example, you can reorder statements naturally, even across multiple lines:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/move-code-on-different-syntax-elements.jpg\"\n        data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/move-code-on-different-syntax-elements.gif\"\n        alt=\"Move Code on Different Syntax Elements\"\n        width=\"660\"\/>\n    <figcaption class=\"wp-element-caption\">Move Code on Different Syntax Elements<\/figcaption>\n<\/figure>\n\n\n\n<p><em>Greedy brace<\/em> on compound statements, like <code>if<\/code> or <code>using<\/code> statements, is another way to quickly adjust block scopes. I use <em>Move Left\/Right<\/em> mainly to reorder expression operands, collection elements, or parameters\/arguments. Our exhaustive list of <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Coding_Assistance__Moving_Code_Elements.html#applicable-cases\" target=\"_blank\" rel=\"noopener\">applicable cases<\/a> even revealed a few surprises for me. Fun fact, I always forget the shortcuts when I&#8217;m being watched during demos. ?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. Migrating to the Latest C#<\/h2>\n\n\n\n<p>Every year, we get a new box full of valuable <a href=\"https:\/\/github.com\/dotnet\/roslyn\/blob\/main\/docs\/Language%20Feature%20Status.md\" target=\"_blank\" rel=\"noopener\">C# language features<\/a> \u2013 thanks, Mads Torgersen and the C# language team! As developers, we want to integrate them efficiently across the codebase. With ReSharper&#8217;s <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Finding_Code_Issues.html\" target=\"_blank\" rel=\"noopener\">inspections<\/a>, <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Code_Analysis__Quick-Fixes.html\" target=\"_blank\" rel=\"noopener\">quick-fixes<\/a>, and <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Coding_Assistance__Context_Actions.html\" target=\"_blank\" rel=\"noopener\">context actions<\/a>, you can <strong>confidently modernize code<\/strong> not only in a single spot but also at <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Code_Analysis__Fix_in_Scope.html\" target=\"_blank\" rel=\"noopener\">solution\/project\/file scope<\/a>:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/applying-quick-fixes-in-solution-scope.png\"\n        alt=\"Applying Quick-Fixes in Solution Scope\"\n        width=\"660\"\/>\n   <figcaption class=\"wp-element-caption\">Applying Quick-Fixes in Solution Scope<\/figcaption>\n<\/figure>\n\n\n\n<p>Many developers rely on ReSharper&#8217;s suggestions to discover and adopt new C# features. Personally, I might depend eternally, since I rarely get my pattern matching right on the first try. ? For more language support that improves readability, code quality, bug prevention, and performance, take a look at some of our previous blog posts:<\/p>\n\n\n\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2025\/04\/10\/csharp-language-support-in-resharper-and-rider-2025-1\/\">C# Language Support in ReSharper 2025.1<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2024\/11\/12\/csharp-language-support-in-resharper-and-rider-2024-3\/\">C# Language Support in ReSharper 2024.3<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2024\/08\/07\/escape-character-extract-common-code-params-modifier-out-vars-csharp-language-support-in-2024-2\/\">C# Language Support in ReSharper 2024.2 (series)<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2023\/11\/23\/primary-constructors-using-csharp-12-in-rider-and-resharper\/\">C# Language Support in ReSharper 2023.3 (series)<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2023\/02\/20\/list-and-span-pattern-matching-using-csharp-11-in-rider-and-resharper\/\">C# Language Support in ReSharper 2022.3 (series)<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">7. Postfix Templates<\/h2>\n\n\n\n<p>This is the ace up my sleeve to teach even seasoned users of ReSharper something new during presentations. Postfix templates allow you to <strong>perform complex transformations via special completion items<\/strong> that look like instance methods. <\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/various-postfix-templates-in-action.png\"\n        data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/various-postfix-templates-in-action.gif\"\n        alt=\"Various Postfix Templates in Action\"\n        width=\"660\"\/>\n    <figcaption class=\"wp-element-caption\">Various Postfix Templates in Action<\/figcaption>\n<\/figure>\n\n\n\n<p>Definitely check out the growing <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Postfix_Templates.html#list\" target=\"_blank\" rel=\"noopener\">list of postfix templates<\/a>. My personal favorites are <code>collection.foreach<\/code>, <code>Type.new<\/code>, and <code>expression.var<\/code>. With our <a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2025\/04\/10\/csharp-language-support-in-resharper-and-rider-2025-1\/#injection-postfix-template\">latest addition<\/a> \u2013 <code>service.inject<\/code> \u2013 we pushed the imaginable a little further!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">8. Configuration of Code Style and Formatting<\/h2>\n\n\n\n<p>A consistent code style\/formatting eliminates unnecessary friction in reading and working with your code. However, configuring it through text files is probably not the most enjoyable task. ReSharper provides a <strong>visual editing experience<\/strong> to <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Configure_Code_Formatting_Rules.html#configure-formatting-rules-for-selected-code\" target=\"_blank\" rel=\"noopener\">adjust code style for a selected fragment<\/a> or to <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Configure_Code_Formatting_Rules.html#formatting-rules-from-existing-code\" target=\"_blank\" rel=\"noopener\">detect rules from code with the desired look<\/a>:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/dialog-with-detected-code-style-settings.png\"\n        alt=\"Dialog with Detected Code Style Settings\"\n        width=\"658\"\/>\n   <figcaption class=\"wp-element-caption\">Dialog with Detected Code Style Settings<\/figcaption>\n<\/figure>\n\n\n\n<p>You can <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Configure_Code_Formatting_Rules.html#storing_and_sharing\" target=\"_blank\" rel=\"noopener\">store and share formatting rules<\/a> in a number of formats with the <em>Save To<\/em> button, including <code>.editorconfig<\/code>. A largely underrated feature is the <em>Save As Comments<\/em> button, which adds formatter instructions that are only valid for the selection. For instance, you might not always want to <a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2017\/11\/28\/aligning-code-columns-resharper-rider\/\">align code in columns<\/a>, but occasionally it can be very useful. And \u2013 pssst ?&nbsp;\u2013 you can also <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Configure_Code_Formatting_Rules.html#troubleshoot-formatting-settings\" target=\"_blank\" rel=\"noopener\">troubleshoot formatting settings<\/a> with ease.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">9. Project- and File-Level Refactorings<\/h2>\n\n\n\n<p>Visual Studio&#8217;s context menu in the solution explorer is kinda bloated, but if you look close enough \u2013 or hit <code>Ctrl-Shift-R<\/code> \u2013 you can find some really beneficial <strong>large-scale refactorings<\/strong> that save you plenty of time:<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized is-style-default aligncenter\">\n    <img\n        src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/10\/various-solution-level-refactorings.png\"\n        alt=\"Various Solution-Level Refactorings\"\n        width=\"660\"\/>\n   <figcaption class=\"wp-element-caption\">Various Solution-Level Refactorings<\/figcaption>\n<\/figure>\n\n\n\n<p>Who wants to deal with file creation during prototyping? Who wants to adjust all those namespaces when you clean up your project structure by moving files into different folders? Right, ReSharper wants to do that for you! ?\u00a0And, by the way, you should really check out the recently introduced <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Refactorings__Extract_Global_Using.html\" target=\"_blank\" rel=\"noopener\"><em>Convert Usings to Global<\/em> refactoring<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Honorable Mentions<\/h2>\n\n\n\n<p>You probably know how these <em>Top X in Y<\/em> blog posts turn out. There&#8217;s way too much, and we could go on forever. So, in the interest of your time and keeping the title SEO friendly ?, here are a few more highlights for you to learn about:<\/p>\n\n\n\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2023\/07\/27\/introducing-predictive-debugging-a-game-changing-look-into-the-future\/\">Predictive Debugger<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/12390-heap-allocations-viewer\" target=\"_blank\" rel=\"noopener\">Heap Allocations Viewer Plugin<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/12024-cognitivecomplexity\" target=\"_blank\" rel=\"noopener\">Cognitive Complexity Plugin<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Language_Injections.html\" target=\"_blank\" rel=\"noopener\">Language Injections<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Design_time_Inspection.html#-sz0bd9_61\" target=\"_blank\" rel=\"noopener\">Navigate Issues in Solution<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Run_Configurations.html\" target=\"_blank\" rel=\"noopener\">Run Configurations<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Refactorings__Extract_Superclass.html\" target=\"_blank\" rel=\"noopener\">Extract Superclass<\/a> and <a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Refactorings__Pull_Members_Up.html\" target=\"_blank\" rel=\"noopener\">Pull Members Up<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/resharper\/Code_Analysis__Value_Tracking.html\" target=\"_blank\" rel=\"noopener\">Value Tracking<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>I hope that every single one of you has learned something new about ReSharper. What&#8217;s your favorite ReSharper feature? Please let me know in the comments!<\/p>\n","protected":false},"author":553,"featured_media":646160,"comment_status":"closed","ping_status":"closed","template":"","categories":[4992,1401],"tags":[158,211,737,756,763,3912,46],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/dotnet\/646115"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/dotnet"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/types\/dotnet"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/users\/553"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/comments?post=646115"}],"version-history":[{"count":10,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/dotnet\/646115\/revisions"}],"predecessor-version":[{"id":646879,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/dotnet\/646115\/revisions\/646879"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/media\/646160"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/media?parent=646115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/categories?post=646115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/tags?post=646115"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/cross-post-tag?post=646115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}