From 716d01aaf4bd22bdb10520133419cf9be0b687eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petter=20Walb=C3=B8=20Johnsg=C3=A5rd?= Date: Fri, 9 Jul 2021 10:12:09 +0200 Subject: [PATCH 1/4] Decode entities in site title Fixes #33321 --- package-lock.json | 2 ++ packages/block-library/package.json | 1 + packages/block-library/src/site-title/edit/index.js | 3 ++- packages/edit-site/package.json | 1 + .../components/navigation-sidebar/navigation-panel/index.js | 3 ++- .../editor/src/components/post-publish-panel/prepublish.js | 3 ++- 6 files changed, 10 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index b8102539013a21..979100750ae7bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14542,6 +14542,7 @@ "@wordpress/element": "file:packages/element", "@wordpress/escape-html": "file:packages/escape-html", "@wordpress/hooks": "file:packages/hooks", + "@wordpress/html-entities": "file:packages/html-entities", "@wordpress/i18n": "file:packages/i18n", "@wordpress/icons": "file:packages/icons", "@wordpress/is-shallow-equal": "file:packages/is-shallow-equal", @@ -15128,6 +15129,7 @@ "@wordpress/editor": "file:packages/editor", "@wordpress/element": "file:packages/element", "@wordpress/hooks": "file:packages/hooks", + "@wordpress/html-entities": "file:packages/html-entities", "@wordpress/i18n": "file:packages/i18n", "@wordpress/icons": "file:packages/icons", "@wordpress/interface": "file:packages/interface", diff --git a/packages/block-library/package.json b/packages/block-library/package.json index ebb79ef5673ddd..f5e999c6b5a785 100644 --- a/packages/block-library/package.json +++ b/packages/block-library/package.json @@ -49,6 +49,7 @@ "@wordpress/element": "file:../element", "@wordpress/escape-html": "file:../escape-html", "@wordpress/hooks": "file:../hooks", + "@wordpress/html-entities": "file:../html-entities", "@wordpress/i18n": "file:../i18n", "@wordpress/icons": "file:../icons", "@wordpress/is-shallow-equal": "file:../is-shallow-equal", diff --git a/packages/block-library/src/site-title/edit/index.js b/packages/block-library/src/site-title/edit/index.js index ff7f450b070b86..e8b9cd56ae59bb 100644 --- a/packages/block-library/src/site-title/edit/index.js +++ b/packages/block-library/src/site-title/edit/index.js @@ -16,6 +16,7 @@ import { useBlockProps, } from '@wordpress/block-editor'; import { createBlock, getDefaultBlockName } from '@wordpress/blocks'; +import { decodeEntities } from '@wordpress/html-entities'; /** * Internal dependencies @@ -34,7 +35,7 @@ export default function SiteTitleEdit( { const siteData = getEntityRecord( 'root', '__unstableBase' ); return { canUserEdit: canUser( 'update', 'settings' ), - readOnlyTitle: siteData?.name, + readOnlyTitle: siteData?.name && decodeEntities( siteData.name ), }; }, [] ); const TagName = level === 0 ? 'p' : `h${ level }`; diff --git a/packages/edit-site/package.json b/packages/edit-site/package.json index c0302861b16dd3..7879741ccc9897 100644 --- a/packages/edit-site/package.json +++ b/packages/edit-site/package.json @@ -40,6 +40,7 @@ "@wordpress/editor": "file:../editor", "@wordpress/element": "file:../element", "@wordpress/hooks": "file:../hooks", + "@wordpress/html-entities": "file:../html-entities", "@wordpress/i18n": "file:../i18n", "@wordpress/icons": "file:../icons", "@wordpress/interface": "file:../interface", diff --git a/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js b/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js index 43310ab706cc59..56514edf7a8bfa 100644 --- a/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js +++ b/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js @@ -15,6 +15,7 @@ import { useSelect, useDispatch } from '@wordpress/data'; import { useEffect, useRef } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import { ESCAPE } from '@wordpress/keycodes'; +import { decodeEntities } from '@wordpress/html-entities'; /** * Internal dependencies @@ -48,7 +49,7 @@ const NavigationPanel = ( { isOpen } ) => { editedPostId: getEditedPostId(), editedPostType: getEditedPostType(), activeMenu: getNavigationPanelActiveMenu(), - siteTitle: siteData.name, + siteTitle: siteData.name && decodeEntities( siteData.name ), }; }, [] ); diff --git a/packages/editor/src/components/post-publish-panel/prepublish.js b/packages/editor/src/components/post-publish-panel/prepublish.js index 40adeab40af3e7..5f0be549904c78 100644 --- a/packages/editor/src/components/post-publish-panel/prepublish.js +++ b/packages/editor/src/components/post-publish-panel/prepublish.js @@ -12,6 +12,7 @@ import { useSelect } from '@wordpress/data'; import { wordpress } from '@wordpress/icons'; import { filterURLForDisplay } from '@wordpress/url'; import { store as coreStore } from '@wordpress/core-data'; +import { decodeEntities } from '@wordpress/html-entities'; /** * Internal dependencies @@ -53,7 +54,7 @@ function PostPublishPanelPrepublish( { children } ) { undefined, ] ), siteIconUrl: siteData.site_icon_url, - siteTitle: siteData.name, + siteTitle: siteData.name && decodeEntities( siteData.name ), siteHome: siteData.home && filterURLForDisplay( siteData.home ), }; }, [] ); From e93fcd7cbd2cc156db0379f937b3898f47e96d7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petter=20Walb=C3=B8=20Johnsg=C3=A5rd?= Date: Mon, 12 Jul 2021 18:40:39 +0200 Subject: [PATCH 2/4] Update packages/block-library/src/site-title/edit/index.js Co-authored-by: George Mamadashvili --- packages/block-library/src/site-title/edit/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/block-library/src/site-title/edit/index.js b/packages/block-library/src/site-title/edit/index.js index e8b9cd56ae59bb..144552847996d1 100644 --- a/packages/block-library/src/site-title/edit/index.js +++ b/packages/block-library/src/site-title/edit/index.js @@ -35,7 +35,7 @@ export default function SiteTitleEdit( { const siteData = getEntityRecord( 'root', '__unstableBase' ); return { canUserEdit: canUser( 'update', 'settings' ), - readOnlyTitle: siteData?.name && decodeEntities( siteData.name ), + readOnlyTitle: decodeEntities( siteData?.name ), }; }, [] ); const TagName = level === 0 ? 'p' : `h${ level }`; From d99a402e77bf6026299a8935ea381b2e8c8d9292 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petter=20Walb=C3=B8=20Johnsg=C3=A5rd?= Date: Mon, 12 Jul 2021 19:00:21 +0200 Subject: [PATCH 3/4] Move decode --- packages/block-library/src/site-title/edit/index.js | 5 +++-- .../components/navigation-sidebar/navigation-panel/index.js | 4 ++-- .../editor/src/components/post-publish-panel/prepublish.js | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/block-library/src/site-title/edit/index.js b/packages/block-library/src/site-title/edit/index.js index 144552847996d1..283722cddb0c51 100644 --- a/packages/block-library/src/site-title/edit/index.js +++ b/packages/block-library/src/site-title/edit/index.js @@ -35,7 +35,7 @@ export default function SiteTitleEdit( { const siteData = getEntityRecord( 'root', '__unstableBase' ); return { canUserEdit: canUser( 'update', 'settings' ), - readOnlyTitle: decodeEntities( siteData?.name ), + readOnlyTitle: siteData?.name, }; }, [] ); const TagName = level === 0 ? 'p' : `h${ level }`; @@ -67,7 +67,8 @@ export default function SiteTitleEdit( { href="#site-title-pseudo-link" onClick={ ( event ) => event.preventDefault() } > - { readOnlyTitle || __( 'Site Title placeholder' ) } + { decodeEntities( readOnlyTitle ) || + __( 'Site Title placeholder' ) } ); diff --git a/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js b/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js index 56514edf7a8bfa..29bd86d2e365e5 100644 --- a/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js +++ b/packages/edit-site/src/components/navigation-sidebar/navigation-panel/index.js @@ -49,7 +49,7 @@ const NavigationPanel = ( { isOpen } ) => { editedPostId: getEditedPostId(), editedPostType: getEditedPostType(), activeMenu: getNavigationPanelActiveMenu(), - siteTitle: siteData.name && decodeEntities( siteData.name ), + siteTitle: siteData.name, }; }, [] ); @@ -96,7 +96,7 @@ const NavigationPanel = ( { isOpen } ) => {
- { siteTitle } + { decodeEntities( siteTitle ) }
diff --git a/packages/editor/src/components/post-publish-panel/prepublish.js b/packages/editor/src/components/post-publish-panel/prepublish.js index 5f0be549904c78..c2c3c2dbd54eee 100644 --- a/packages/editor/src/components/post-publish-panel/prepublish.js +++ b/packages/editor/src/components/post-publish-panel/prepublish.js @@ -54,7 +54,7 @@ function PostPublishPanelPrepublish( { children } ) { undefined, ] ), siteIconUrl: siteData.site_icon_url, - siteTitle: siteData.name && decodeEntities( siteData.name ), + siteTitle: siteData.name, siteHome: siteData.home && filterURLForDisplay( siteData.home ), }; }, [] ); @@ -106,7 +106,7 @@ function PostPublishPanelPrepublish( { children } ) { { siteIcon }
- { siteTitle || __( '(Untitled)' ) } + { decodeEntities( siteTitle ) || __( '(Untitled)' ) } { siteHome }
From 4e7d161e34ea4f7e6e0a15277c550d05eebb6797 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petter=20Walb=C3=B8=20Johnsg=C3=A5rd?= Date: Mon, 12 Jul 2021 19:08:41 +0200 Subject: [PATCH 4/4] Revert site title decode in site title block --- packages/block-library/src/site-title/edit/index.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/block-library/src/site-title/edit/index.js b/packages/block-library/src/site-title/edit/index.js index 283722cddb0c51..144552847996d1 100644 --- a/packages/block-library/src/site-title/edit/index.js +++ b/packages/block-library/src/site-title/edit/index.js @@ -35,7 +35,7 @@ export default function SiteTitleEdit( { const siteData = getEntityRecord( 'root', '__unstableBase' ); return { canUserEdit: canUser( 'update', 'settings' ), - readOnlyTitle: siteData?.name, + readOnlyTitle: decodeEntities( siteData?.name ), }; }, [] ); const TagName = level === 0 ? 'p' : `h${ level }`; @@ -67,8 +67,7 @@ export default function SiteTitleEdit( { href="#site-title-pseudo-link" onClick={ ( event ) => event.preventDefault() } > - { decodeEntities( readOnlyTitle ) || - __( 'Site Title placeholder' ) } + { readOnlyTitle || __( 'Site Title placeholder' ) } );