{"id":99864,"date":"2019-04-02T21:53:59","date_gmt":"2019-04-02T21:53:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/narrative-plugin\/"},"modified":"2026-08-03T01:57:14","modified_gmt":"2026-08-03T01:57:14","slug":"narrative-so","status":"publish","type":"plugin","link":"https:\/\/tuk.wordpress.org\/plugins\/narrative-so\/","author":16929509,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"7.0.3","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Narrative Publisher","header_author":"Narrative","header_description":"This plugin connects your Wordpress website with your Narrative account allowing you to publish your Narrative posts directly to your Wordpress website. Please contact support@narrative.so for any help.","assets_banners_color":"","last_updated":"2026-08-03 01:57:14","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/narrative-so\/","header_author_uri":"https:\/\/narrative.so\/","rating":5,"author_block_rating":0,"active_installs":1000,"downloads":103866,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"narrative","date":"2019-04-02 21:58:12"},"1.0.3":{"tag":"1.0.3","author":"narrative","date":"2019-09-05 21:54:21"},"1.0.4":{"tag":"1.0.4","author":"narrative","date":"2020-02-03 22:32:46"},"1.0.5":{"tag":"1.0.5","author":"narrative","date":"2022-12-15 20:43:04"},"1.0.6":{"tag":"1.0.6","author":"narrative","date":"2022-12-15 21:10:13"},"1.0.7":{"tag":"1.0.7","author":"narrative","date":"2023-02-15 21:20:22"},"1.1.0":{"tag":"1.1.0","author":"narrative","date":"2026-08-03 01:57:14"}},"upgrade_notice":{"1.1.0":"<p>Compatibility and security release for WordPress 7.0 and PHP 8. Recommended for\nall users.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":"1"},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":2061930,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":2061930,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":{"narrative\/block":{"name":"narrative\/block","title":"Narrative"}},"tagged_versions":["1.0.0","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.1.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[45183,169839,169841,169840],"plugin_category":[],"plugin_contributors":[169842],"plugin_business_model":[],"class_list":["post-99864","plugin","type-plugin","status-publish","hentry","plugin_tags-narrative","plugin_tags-narrative-app","plugin_tags-narrative-blog-builder","plugin_tags-narrative-publisher","plugin_contributors-narrative","plugin_committers-narrative","plugin_committers-polivernar"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/narrative-so\/assets\/icon-128x128.png?rev=2061930","icon_2x":"https:\/\/ps.w.org\/narrative-so\/assets\/icon-256x256.png?rev=2061930","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>This plugin connects your Wordpress website with your <a href=\"http:\/\/www.narrative.so\">Narrative App<\/a> allowing you to publish your Narrative posts directly to your Wordpress website. Please contact support@narrative.so for any help.<\/p>\n\n<h3>Get Started<\/h3>\n\n<p>Sign up with a free trial to Narrative <a href=\"https:\/\/my.narrative.so\/#\/free-trial\">here<\/a> and download the app to get started.<\/p>\n\n<h3>Technical info<\/h3>\n\n<ul>\n<li>This plugin uses <a href=\"https:\/\/narrative.so\">www.narrative.so<\/a> to input your Narrative Posts into your Wordpress website.<\/li>\n<li>Narrative has the ability to create and edit posts on your Wordpress website<\/li>\n<li>When creating a post Narrative will input HTML and JS into your a post.<\/li>\n<li>For more info please see Narrative's <a href=\"https:\/\/narrative.so\/terms-and-conditions\">Terms and Conditions<\/a> and <a href=\"https:\/\/narrative.so\/privacy-policy\">Privacy Policy<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<h3>Plase Note:<\/h3>\n\n<p>This plugin connects your Narrative account with your Wordpress plugin. Please first install the Narrative App via <a href=\"http:\/\/www.narrative.so\/download\">this link.<\/a><\/p>\n\n<h3>Installation Video<\/h3>\n\n<p>Please click <a href=\"https:\/\/help.narrative.so\/articles\/2766715-how-to-publish-to-wordpress\">here<\/a> for Narrative's installation video.<\/p>\n\n<h3>From within WordPress<\/h3>\n\n<ol>\n<li>Visit 'Plugins &gt; Add New'<\/li>\n<li>Search for 'Narrative Publisher'<\/li>\n<li>Activate Narrative Publisher from your Plugins page.<\/li>\n<li>Return to Narrative and input your activation key.\nFor any issues see this article <a href=\"https:\/\/help.narrative.so\/articles\/2766715-how-to-publish-to-wordpress\">here<\/a><\/li>\n<\/ol>\n\n<h3>Manually<\/h3>\n\n<ol>\n<li>Upload the narrative-publisher.zip to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the Narrative Publish plugin through the 'Plugins' menu in WordPress<\/li>\n<li>Return to Narrative and input your activation key.\nFor any issues see this article <a href=\"https:\/\/help.narrative.so\/articles\/2766715-how-to-publish-to-wordpress\">here<\/a><\/li>\n<\/ol>\n\n<h3>Narrative Support<\/h3>\n\n<p>For any further issues please contact our support team <a href=\"https:\/\/help.narrative.so\/\">here<\/a><\/p>\n\n<!--section=faq-->\n<p>Please see our support docs <a href=\"https:\/\/help.narrative.so\/articles\/2766715-how-to-publish-to-wordpress\">here<\/a> for help.<\/p>\n\n<!--section=changelog-->\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Compatibility with WordPress 7.0 and PHP 8.<\/li>\n<li>Security: the featured image is now sideloaded through WordPress' own media\nhandling, which restricts it to image types. Previously the remote response\nbody was written directly into the uploads directory under a filename taken\nfrom the request.<\/li>\n<li>Security: the featured image URL is validated before it is fetched, so it can\nno longer be pointed at hosts on the site's local network.<\/li>\n<li>Security: fixed a stored cross-site scripting issue. The <code>narrative_post_script<\/code>\npost meta was exposed to the REST API with no capability check, and the\nGutenberg block returned it to the page unfiltered, which let a user without\nthe <code>unfiltered_html<\/code> capability store JavaScript that ran for every visitor.\nWriting the meta now requires <code>unfiltered_html<\/code>, the value must be valid\nbase64, and both the block and the <code>[narrative]<\/code> shortcode filter their output\nthrough <code>wp_kses()<\/code>.<\/li>\n<li>Security: only http(s) URLs are accepted for the story script.<\/li>\n<li>Security: access codes are compared with <code>hash_equals()<\/code> rather than a loose\ncomparison that treated <code>012345<\/code> and <code>12345<\/code> as equal.<\/li>\n<li>Performance: the rewrite rules are flushed on activation and on upgrade\ninstead of on every page load.<\/li>\n<li>Fixed an undefined index warning raised on every post save.<\/li>\n<li>Endpoints now send a JSON content type and set status codes through\n  status_header().<\/li>\n<li>Removed unused secret generation code.<\/li>\n<li>Fixed the Access Key sometimes needing to be entered more than once: the\nconfirmation prompt fired on every save and cancelling it discarded the key\nsilently.<\/li>\n<li>Access Keys are now upper cased and stripped of spaces before being stored, so\na typed key works as well as a pasted one.<\/li>\n<li>Invalid Access Keys are now rejected with an explanation instead of being\nsaved silently, and no longer overwrite a working key.<\/li>\n<li>The settings page now shows an explicit connection status.<\/li>\n<li>The text domain now matches the plugin slug.<\/li>\n<li>Stopped bundling a copy of moment.js; the version in WordPress core is used.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Fixed the plugin version reported by the <code>\/narrative\/info<\/code> endpoint.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Tested up to WordPress 6.1.<\/li>\n<\/ul>","raw_excerpt":"Publish your Narrative posts straight to your WordPress site from the Narrative app.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/99864","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=99864"}],"author":[{"embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/narrative"}],"wp:attachment":[{"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=99864"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=99864"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=99864"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=99864"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=99864"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/tuk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=99864"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}