Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom HTML widget "Forbidden" error #32648

Closed
lordmatt opened this issue Jun 13, 2021 · 12 comments
Closed

Custom HTML widget "Forbidden" error #32648

lordmatt opened this issue Jun 13, 2021 · 12 comments
Labels
[Feature] Multisite Anything related to the specific experience of using a multisite [Feature] Widgets Screen The block-based screen that replaced widgets.php. Needs Testing Needs further testing to be confirmed.

Comments

@lordmatt
Copy link

The 10.8 line has improved the issue I have been seeing. Now, instead of all widgets showing Forbidden to the super admin, only some do.

Step-by-step reproduction instructions

  1. Have custom HTML widgets in use
  2. Re-enable Gutenburg 10.8
  3. Try to edit widgets - see forbidden messages.

Expected behaviour

Ability to edit and interact with those Custom HTML widgets given I have all the rights.

Screenshot

Image of problem

WordPress information

  • WordPress version: 5.7.2
  • Gutenberg version: 10.8.0
  • Are all plugins except Gutenberg deactivated? No
  • Not using a default theme
@Mamaduka Mamaduka added the [Feature] Widgets Screen The block-based screen that replaced widgets.php. label Jun 13, 2021
@noisysocks noisysocks added the Needs Testing Needs further testing to be confirmed. label Jun 24, 2021
@noisysocks
Copy link
Member

This worked in my testing. It might be an issue with your server. Do you see anything in the web error logs?

@noisysocks noisysocks added [Status] Needs More Info Follow-up required in order to be actionable. and removed Needs Testing Needs further testing to be confirmed. labels Jun 24, 2021
@spacedmonkey
Copy link
Member

This worked in my testing. It might be an issue with your server. Do you see anything in the web error logs?

@noisysocks Did you test in multisite? Super admin are only in multisite.

@lordmatt
Copy link
Author

lordmatt commented Jun 24, 2021 via email

@github-actions
Copy link

Help us move this issue forward. This issue is being marked stale since it has no activity after 15 days of requesting more information. Please add info requested so we can help move the issue forward. Note: The triage policy is to close stale issues that need more info and no response after 2 weeks.

@github-actions github-actions bot added the [Status] Stale Gives the original author opportunity to update before closing. Can be reopened as needed. label Jul 10, 2021
@lordmatt
Copy link
Author

I've reactivated version 11.0.0 - the errored widgets seem to be custom HTML widgets.

My hosting is with 20i who have been excellent at helping me solve errors in the past. Both before and after viewing the wigets with the plugin activated, I got this error log: (none).

Screenshot from 2021-07-11 16-12-43

Today's error screenshot:

Screenshot from 2021-07-11 16-12-21

I'm not 100% sure if relevant but here is the console log of the page loading. The uncaught TypeError: Cannot read property 'offsetTop' of null errors showed up after the forbidden's appear. Full console log to follow but I think this is when the error happens:

Screenshot from 2021-07-11 16-30-14

Navigated to https://[REDACTED].com/wp-admin/themes.php?page=gutenberg-widgets
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
[Violation] Forced reflow while executing JavaScript took 35ms
themes.php?page=gutenberg-widgets:517 [Violation] 'DOMContentLoaded' handler took 194ms
[Violation] Forced reflow while executing JavaScript took 30ms
jquery.min.js:2 [Violation] 'setTimeout' handler took 67ms
?v=2.0:16 XHR finished loading: GET "https://public-api.wordpress.com/rest/v1.1/me?http_envelope=1&fields=ID%2Cusername".
s @ ?v=2.0:16
D @ ?v=2.0:16
?v=2.0:16 XHR finished loading: GET "https://public-api.wordpress.com/rest/v1.1/notifications/?http_envelope=1&fields=id%2Ctype%2Cunread%2Cbody%2Csubject%2Ctimestamp%2Cmeta%2Cnote_hash&number=10".
s @ ?v=2.0:16
D @ ?v=2.0:16
index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1 GET https://[REDACTED].com/wp-json/wp/v2/types/null?context=edit&_locale=user 404
j @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
p @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
y @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
o @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
y.method.r @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
o @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
t @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
b.mediaUploadMiddleware @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=e3cf5fc432270225e35f63556d10a7cf:19
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
b @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
API_FETCH @ index.min.js?ver=0a9af7f455b8c7750122622a621eb394:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
Promise.then (async)
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
c @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
t @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.iterator @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
c @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
t @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
setTimeout (async)
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
s @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=9f23f1a056cf50ff466e35bb7b7028b1:3
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
__experimentalMarkListeningStores @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
_e @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
Le @ react-dom.min.edd8b7a6.js:100
Pj @ react-dom.min.edd8b7a6.js:231
di @ react-dom.min.edd8b7a6.js:168
Nj @ react-dom.min.edd8b7a6.js:168
sc @ react-dom.min.edd8b7a6.js:168
gf @ react-dom.min.edd8b7a6.js:162
Pa @ react-dom.min.edd8b7a6.js:157
yd @ react-dom.min.edd8b7a6.js:188
(anonymous) @ react-dom.min.edd8b7a6.js:191
bi @ react-dom.min.edd8b7a6.js:163
zd @ react-dom.min.edd8b7a6.js:191
M.render @ react-dom.min.edd8b7a6.js:243
mt @ index.min.js?ver=e3cf5fc432270225e35f63556d10a7cf:37
(anonymous) @ themes.php?page=gutenberg-widgets:518
Show 53 more frames
index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1 Fetch failed loading: GET "https://[REDACTED].com/wp-json/wp/v2/types/null?context=edit&_locale=user".
j @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
p @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
y @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
o @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
y.method.r @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
o @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
t @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
b.mediaUploadMiddleware @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
(anonymous) @ index.min.js?ver=e3cf5fc432270225e35f63556d10a7cf:19
(anonymous) @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
b @ index.min.js?ver=3f5b346833d1a1cc91d3659b06403787:1
API_FETCH @ index.min.js?ver=0a9af7f455b8c7750122622a621eb394:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
Promise.then (async)
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.any @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
c @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
t @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
e.iterator @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
r @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
c @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
t @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=4ebc1864679ea40f54f6ea81af9b8a93:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
setTimeout (async)
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
s @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=9f23f1a056cf50ff466e35bb7b7028b1:3
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
__experimentalMarkListeningStores @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
_e @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
(anonymous) @ index.min.js?ver=dcbd671341fc47bf23dc3be334d252df:1
Le @ react-dom.min.edd8b7a6.js:100
Pj @ react-dom.min.edd8b7a6.js:231
di @ react-dom.min.edd8b7a6.js:168
Nj @ react-dom.min.edd8b7a6.js:168
sc @ react-dom.min.edd8b7a6.js:168
gf @ react-dom.min.edd8b7a6.js:162
Pa @ react-dom.min.edd8b7a6.js:157
yd @ react-dom.min.edd8b7a6.js:188
(anonymous) @ react-dom.min.edd8b7a6.js:191
bi @ react-dom.min.edd8b7a6.js:163
zd @ react-dom.min.edd8b7a6.js:191
M.render @ react-dom.min.edd8b7a6.js:243
mt @ index.min.js?ver=e3cf5fc432270225e35f63556d10a7cf:37
(anonymous) @ themes.php?page=gutenberg-widgets:518
Show 53 more frames
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
Fetch finished loading: GET "<URL>".
jquery.min.js:2 XHR finished loading: GET "https://[REDACTED].com/wp-json/jetpack/v4/jitm?message_path=wp%3Aappearance_page_gutenberg-widgets%3Aadmin_notices&query=page%253Dgutenberg-widgets&full_jp_logo_exists=false&_wpnonce=64e74f03df".
send @ jquery.min.js:2
ajax @ jquery.min.js:2
s.ajax.s.ajax @ jquery-migrate.min.js:2
S.<computed> @ jquery.min.js:2
(anonymous) @ jetpack-jitm.min.js?ver=1.16.1:1
each @ jquery.min.js:2
each @ jquery.min.js:2
a @ jetpack-jitm.min.js?ver=1.16.1:1
(anonymous) @ jetpack-jitm.min.js?ver=1.16.1:1
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
index.min.js?ver=d514da0165813dc287acfac679b0e0f5:1 [Violation] 'requestIdleCallback' handler took 57ms
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
Fetch finished loading: POST "<URL>".
react-dom.min.edd8b7a6.js:150 GET https://[REDACTED].com/wp-admin/widgets.php?legacy-widget-preview%5BidBase%5D=custom_html&legacy-widget-preview%5Binstance%5D%5Bencoded%5D=YToyOntzOjU6InRpdGxlIjtzOjEwOiJZb3VyIFN0dWZmIjtzOjc6ImNvbnRlbnQiO3M6ODM6Ijx1bD4NCgk8bGk%2BPGEgaHJlZj0iaHR0cHM6Ly9tYXRyaXhkcmVhbXMuY29tL3dwLXNpZ251cC5waHAiPlNpZ24gVXA8L2E%2BPC9saT4NCjwvdWw%2BIjt9&legacy-widget-preview%5Binstance%5D%5Bhash%5D=6993878beb7f55f3c209bb3d6fe22155&legacy-widget-preview%5Binstance%5D%5Braw%5D%5Btitle%5D=Your%20Stuff&legacy-widget-preview%5Binstance%5D%5Braw%5D%5Bcontent%5D=%3Cul%3E%0D%0A%09%3Cli%3E%3Ca%20href%3D%22https%3A%2F%2F[REDACTED].com%2Fwp-signup.php%22%3ESign%20Up%3C%2Fa%3E%3C%2Fli%3E%0D%0A%3C%2Ful%3E 403
bf @ react-dom.min.edd8b7a6.js:150
bf @ react-dom.min.edd8b7a6.js:151
Vh @ react-dom.min.edd8b7a6.js:149
Qj @ react-dom.min.edd8b7a6.js:173
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
eb @ react-dom.min.edd8b7a6.js:170
gf @ react-dom.min.edd8b7a6.js:162
(anonymous) @ react-dom.min.edd8b7a6.js:73
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
$g @ react-dom.min.edd8b7a6.js:73
ja @ react-dom.min.edd8b7a6.js:73
Pa @ react-dom.min.edd8b7a6.js:157
Me @ react-dom.min.edd8b7a6.js:110
set hasPreview @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
loadContent @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
async function (async)
loadContent @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
_ @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
(anonymous) @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
Tj @ react-dom.min.edd8b7a6.js:179
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
Ra @ react-dom.min.edd8b7a6.js:178
(anonymous) @ react-dom.min.edd8b7a6.js:178
R @ react.min.755b0ae9.js:16
ua.port1.onmessage @ react.min.755b0ae9.js:22
react-dom.min.edd8b7a6.js:150 GET https://[REDACTED].com/wp-admin/widgets.php?legacy-widget-preview%5BidBase%5D=custom_html&legacy-widget-preview%5Binstance%5D%5Bencoded%5D=YToyOntzOjU6InRpdGxlIjtzOjI0OiJPZmZlcnMsIGRlYWxzLCBhbmQgc3R1ZmYiO3M6NzoiY29udGVudCI7czo4NDE6Ijx1bD4NCgk8bGk%2BPHN0cm9uZz48YSBocmVmPSJodHRwczovL2Ftem4udG8vM3dodGVnViI%2BQ2hlY2sgb3V0IG15IGJvb2sgKGl0J3MgZXh0cmVtZWx5IGZ1bm55KTwvYT48L3N0cm9uZz48L2xpPg0KCTxsaT48YSBocmVmPSJodHRwczovL3d3dy5wYXRyZW9uLmNvbS9iZVBhdHJvbj91PTM0NzczOSZyZWRpcmVjdF91cmk9aHR0cHMlM0ElMkYlMkZtYXRyaXhkcmVhbXMuY29tJTJGJnV0bV9tZWRpdW09bWF0dC1pcy1hd2Vzb21lIj5MaWtlIHdoYXQgeW91IHNlZT8gQnV5IG1lIGEgY3VwcGEuPC9hPjwvbGk%2BDQoJPGxpPjxhIGhyZWY9Imh0dHBzOi8vZ2lmZmdhZmYuY29tL29yZGVycy9hZmZpbGlhdGUvbG9yZG1hdHR1ayI%2BRnJlZSBnaWZmZ2FmZiBTSU0gY2FyZCB3aXRoIGEgYm9udXMgwqM1IGNyZWRpdDwvYT48L2xpPg0KCTxsaT48YSBocmVmPSJodHRwczovL21hdHJpeGRyZWFtcy5jb20vYmxvZy9uZXdzL2hvdy10by1nZXQtYS1saWZldGltZS1vZi1mcmVlLXdvcmRwcmVzcy1vcHRpbWlzZWQtaG9zdGluZy1mcm9tLW1lLyI%2BRnJlZSBXb3JkUHJlc3Mgb3B0aW1pc2VkIGhvc3Rpbmc8L2E%2BPC9saT4NCgk8bGk%2BPGEgaHJlZj0iaHR0cHM6Ly93d3cuYXdpbjEuY29tL2F3Y2xpY2sucGhwP2dpZD00MTQyMDAmbWlkPTIzNjg2JmF3aW5hZmZpZD04OTI4MTcmbGlua2lkPTI4OTE5MDEmY2xpY2tyZWY9TWF0cml4RHJlYW1lciI%2BU2VsbCB5b3VyIG9sZCBsYXB0b3AsIFBDLCBNYWMgb3Igb3RoZXIgb2xkIHRlY2ggb25saW5lLjwvYT48L2xpPg0KCTxsaT48c3Ryb25nPjxhIGhyZWY9Ii8%2FcmFuZG9tPTEiPlNob3cgbWUgYSByYW5kb20gcGFnZTwvYT48L3N0cm9uZz48L2xpPg0KPC91bD4iO30%3D&legacy-widget-preview%5Binstance%5D%5Bhash%5D=a918d7e092acfcfd47a511ee86e9c206&legacy-widget-preview%5Binstance%5D%5Braw%5D%5Btitle%5D=Offers%2C%20deals%2C%20and%20stuff&legacy-widget-preview%5Binstance%5D%5Braw%5D%5Bcontent%5D=%3Cul%3E%0D%0A%09%3Cli%3E%3Cstrong%3E%3Ca%20href%3D%22https%3A%2F%2Famzn.to%2F3whtegV%22%3ECheck%20out%20my%20book%20(it%27s%20extremely%20funny)%3C%2Fa%3E%3C%2Fstrong%3E%3C%2Fli%3E%0D%0A%09%3Cli%3E%3Ca%20href%3D%22https%3A%2F%2Fwww.patreon.com%2FbePatron%3Fu%3D347739%26redirect_uri%3Dhttps%253A%252F%252F[REDACTED].com%252F%26utm_medium%3Dmatt-is-awesome%22%3ELike%20what%20you%20see%3F%20Buy%20me%20a%20cuppa.%3C%2Fa%3E%3C%2Fli%3E%0D%0A%09%3Cli%3E%3Ca%20href%3D%22https%3A%2F%2Fgiffgaff.com%2Forders%2Faffiliate%2Flordmattuk%22%3EFree%20giffgaff%20SIM%20card%20with%20a%20bonus%20%C2%A35%20credit%3C%2Fa%3E%3C%2Fli%3E%0D%0A%09%3Cli%3E%3Ca%20href%3D%22https%3A%2F%2F[REDACTED].com%2Fblog%2Fnews%2Fhow-to-get-a-lifetime-of-free-wordpress-optimised-hosting-from-me%2F%22%3EFree%20WordPress%20optimised%20hosting%3C%2Fa%3E%3C%2Fli%3E%0D%0A%09%3Cli%3E%3Ca%20href%3D%22https%3A%2F%2Fwww.awin1.com%2Fawclick.php%3Fgid%3D414200%26mid%3D23686%26awinaffid%3D892817%26linkid%3D2891901%26clickref%3DMatrixDreamer%22%3ESell%20your%20old%20laptop%2C%20PC%2C%20Mac%20or%20other%20old%20tech%20online.%3C%2Fa%3E%3C%2Fli%3E%0D%0A%09%3Cli%3E%3Cstrong%3E%3Ca%20href%3D%22%2F%3Frandom%3D1%22%3EShow%20me%20a%20random%20page%3C%2Fa%3E%3C%2Fstrong%3E%3C%2Fli%3E%0D%0A%3C%2Ful%3E 403
bf @ react-dom.min.edd8b7a6.js:150
bf @ react-dom.min.edd8b7a6.js:151
Vh @ react-dom.min.edd8b7a6.js:149
Qj @ react-dom.min.edd8b7a6.js:173
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
eb @ react-dom.min.edd8b7a6.js:170
gf @ react-dom.min.edd8b7a6.js:162
(anonymous) @ react-dom.min.edd8b7a6.js:73
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
$g @ react-dom.min.edd8b7a6.js:73
ja @ react-dom.min.edd8b7a6.js:73
Pa @ react-dom.min.edd8b7a6.js:157
Me @ react-dom.min.edd8b7a6.js:110
set hasPreview @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
loadContent @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
async function (async)
loadContent @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
_ @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
(anonymous) @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
Tj @ react-dom.min.edd8b7a6.js:179
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
Ra @ react-dom.min.edd8b7a6.js:178
(anonymous) @ react-dom.min.edd8b7a6.js:178
R @ react.min.755b0ae9.js:16
ua.port1.onmessage @ react.min.755b0ae9.js:22
react-dom.min.edd8b7a6.js:150 GET https://[REDACTED].com/wp-admin/widgets.php?legacy-widget-preview%5BidBase%5D=custom_html&legacy-widget-preview%5Binstance%5D%5Bencoded%5D=YToyOntzOjU6InRpdGxlIjtzOjA6IiI7czo3OiJjb250ZW50IjtzOjU2NDoiPGRpdiBzdHlsZT0ibWFyZ2luOmF1dG87dGV4dC1hbGlnbjpjZW50ZXI7Ij48aWZyYW1lIHN0eWxlPSJ3aWR0aDoxMjBweDtoZWlnaHQ6MjQwcHg7bWFyZ2luOmF1dG87IiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIiBzY3JvbGxpbmc9Im5vIiBmcmFtZWJvcmRlcj0iMCIgc3JjPSIvL3dzLWV1LmFtYXpvbi1hZHN5c3RlbS5jb20vd2lkZ2V0cy9xP1NlcnZpY2VWZXJzaW9uPTIwMDcwODIyJk9uZUpTPTEmT3BlcmF0aW9uPUdldEFkSHRtbCZNYXJrZXRQbGFjZT1HQiZzb3VyY2U9c3MmcmVmPWFzX3NzX2xpX3RpbCZhZF90eXBlPXByb2R1Y3RfbGluayZ0cmFja2luZ19pZD1hdXRob3JidXp6dWstMjEmbGFuZ3VhZ2U9ZW5fR0ImbWFya2V0cGxhY2U9YW1hem9uJnJlZ2lvbj1HQiZwbGFjZW1lbnQ9QjA4QjQzSEdYUyZhc2lucz1CMDhCNDNIR1hTJmxpbmtJZD1kODI2NmQ4ZGMzMWY1NjY0MDhiY2M4ZDRhZmE1ZTA1NSZzaG93X2JvcmRlcj10cnVlJmxpbmtfb3BlbnNfaW5fbmV3X3dpbmRvdz10cnVlIj48L2lmcmFtZT48L2Rpdj48ZGl2IHN0eWxlPSJjbGVhcjpib3RoOyI%2BPC9kaXY%2BIjt9&legacy-widget-preview%5Binstance%5D%5Bhash%5D=0a0cdbe8105e922300275abd22bc04bf&legacy-widget-preview%5Binstance%5D%5Braw%5D%5Btitle%5D=&legacy-widget-preview%5Binstance%5D%5Braw%5D%5Bcontent%5D=%3Cdiv%20style%3D%22margin%3Aauto%3Btext-align%3Acenter%3B%22%3E%3Ciframe%20style%3D%22width%3A120px%3Bheight%3A240px%3Bmargin%3Aauto%3B%22%20marginwidth%3D%220%22%20marginheight%3D%220%22%20scrolling%3D%22no%22%20frameborder%3D%220%22%20src%3D%22%2F%2Fws-eu.amazon-adsystem.com%2Fwidgets%2Fq%3FServiceVersion%3D20070822%26OneJS%3D1%26Operation%3DGetAdHtml%26MarketPlace%3DGB%26source%3Dss%26ref%3Das_ss_li_til%26ad_type%3Dproduct_link%26tracking_id%3Dauthorbuzzuk-21%26language%3Den_GB%26marketplace%3Damazon%26region%3DGB%26placement%3DB08B43HGXS%26asins%3DB08B43HGXS%26linkId%3Dd8266d8dc31f566408bcc8d4afa5e055%26show_border%3Dtrue%26link_opens_in_new_window%3Dtrue%22%3E%3C%2Fiframe%3E%3C%2Fdiv%3E%3Cdiv%20style%3D%22clear%3Aboth%3B%22%3E%3C%2Fdiv%3E 403
bf @ react-dom.min.edd8b7a6.js:150
bf @ react-dom.min.edd8b7a6.js:151
Vh @ react-dom.min.edd8b7a6.js:149
Qj @ react-dom.min.edd8b7a6.js:173
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
eb @ react-dom.min.edd8b7a6.js:170
gf @ react-dom.min.edd8b7a6.js:162
(anonymous) @ react-dom.min.edd8b7a6.js:73
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
$g @ react-dom.min.edd8b7a6.js:73
ja @ react-dom.min.edd8b7a6.js:73
Pa @ react-dom.min.edd8b7a6.js:157
Me @ react-dom.min.edd8b7a6.js:110
set hasPreview @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
loadContent @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
async function (async)
loadContent @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
_ @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
(anonymous) @ index.min.js?ver=6e2d835efd8c7855433bc374e4041a77:1
Tj @ react-dom.min.edd8b7a6.js:179
unstable_runWithPriority @ react.min.755b0ae9.js:24
Za @ react-dom.min.edd8b7a6.js:73
Ra @ react-dom.min.edd8b7a6.js:178
(anonymous) @ react-dom.min.edd8b7a6.js:178
R @ react.min.755b0ae9.js:16
ua.port1.onmessage @ react.min.755b0ae9.js:22
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.3.2
jquery.min.js:2 Uncaught TypeError: Cannot read property 'offsetTop' of null
    at Object.n.stickeyTicker (twp-script.js?ver=5.7.2:70)
    at HTMLDocument.<anonymous> (twp-script.js?ver=5.7.2:264)
    at e (jquery.min.js:2)
    at t (jquery.min.js:2)
n.stickeyTicker @ twp-script.js?ver=5.7.2:70
(anonymous) @ twp-script.js?ver=5.7.2:264
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
S.readyException @ jquery.min.js:2
(anonymous) @ jquery.min.js:2
e @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
t @ jquery.min.js:2
setTimeout (async)
(anonymous) @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
fire @ jquery.min.js:2
c @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
B @ jquery.min.js:2
jquery.min.js:2 XHR finished loading: POST "https://[REDACTED].com/wp-admin/admin-ajax.php".
send @ jquery.min.js:2
ajax @ jquery.min.js:2
s.ajax.s.ajax @ jquery-migrate.min.js:2
l @ heartbeat.min.js:2
(anonymous) @ heartbeat.min.js:2
setTimeout (async)
d @ heartbeat.min.js:2
v @ heartbeat.min.js:2
h @ heartbeat.min.js:2
(anonymous) @ heartbeat.min.js:2
dispatch @ jquery.min.js:2
v.handle @ jquery.min.js:2
jquery.min.js:2 XHR finished loading: POST "https://[REDACTED].com/wp-admin/admin-ajax.php".
send @ jquery.min.js:2
ajax @ jquery.min.js:2
s.ajax.s.ajax @ jquery-migrate.min.js:2
l @ heartbeat.min.js:2
d @ heartbeat.min.js:2
v @ heartbeat.min.js:2
(anonymous) @ heartbeat.min.js:2
dispatch @ jquery.min.js:2
v.handle @ jquery.min.js:2

@lordmatt
Copy link
Author

If I manually navigate to
https://[...].com/wp-json/wp/v2/types/null?context=edit&_locale=user
I see
{"code":"rest_type_invalid","message":"Invalid post type.","data":{"status":404}}
when I do the same for
https://matrixdreams.com/wp-admin/widgets.php?legacy-widget-preview%5BidBase%5D=custom_html&legacy-widget-preview%5Bins[SNIP]
I see a forbidden error.

Were I to guess, the null type might be what I would look at. I'm assuming that the custom HTML Widget is somehow failing to identify correctly and nothing catches the null return to handle the failure.

@github-actions github-actions bot removed the [Status] Stale Gives the original author opportunity to update before closing. Can be reopened as needed. label Jul 12, 2021
@noisysocks noisysocks added this to the WordPress 5.8.1 milestone Jul 19, 2021
@talldan talldan removed the [Status] Needs More Info Follow-up required in order to be actionable. label Aug 2, 2021
@netzgestaltung
Copy link

netzgestaltung commented Sep 3, 2021

Hi there,

5 mins ago i updated one of my instances to WP 5.8 with activated Gutenberg and all custom HTML widgets show the same "Forbidden" message in the widgets admin page.

i also found results about htaccess reating to this and i use WPAIOS which has added rules to htaccess - may there be some relation to security plugins (using a restricted param name?)

how do i get to editable widgets again without disabling that new feature?

@sippsolutions
Copy link

I'm experiencing this issue in one of my client's sites, where the REST ajax calls to for example /wp-json/wp/v2/sidebars?per_page=100&_locale=user trigger results like

{"code":"wp_die","message":"<h1>Error establishing a database connection<\/h1>","data":{"status":500},"additional_errors":[]}
or
{"code":"rest_cannot_manage_widgets","message":"Du bist leider nicht berechtigt, Widgets auf dieser Website zu verwalten.","data":{"status":401}}
even with super admin privileges.

When I run a copy of the site on my local machine, the page wp-admin/widgets.php tries to load all widgets (via wp-json/wp/v2/widget-types/XYZ/encode?_locale=user) and these widgets load their needed JS files etc. over and over again for each widget resulting in more than 1.500 requests in total (but the widgets all load in the end, on my local machine).

This seems to be an issue with too many widgets causing the website to fail on providers that restrict/limit requests or database connections (which should be perfectly fine to protect it from DoS attacks).

@netzgestaltung
Copy link

Also notice this possible coherence:
https://wordpress.org/support/topic/bad-query-strings-breaks-widgets-2/

@noisysocks
Copy link
Member

Many of the errors reported in this thread seem unrelated to the original error which is 403 Forbidden.

The 404 Not Found and 500 Internal Server Errors that have been reported are likely due to application bugs which are unexpected. In these cases we need to fail more gracefully and potentially show a more actionable error message in the Legacy Widget block. I'll make a note of that in #33540.

There is a known issue where having lots of data (e.g. a long string) breaks the preview. See #33540. This would cause a 413 Request-URI Too Long error.

It seems plausible that one of the causes of the 403 Forbidden error might be related to multisite. Is anyone able to reliably confirm that widgets will, when previewed, display a 403 Forbidden error when logged in as a super user on a multisite installation? I do not have a multisite environment handy right now so cannot test.

@noisysocks noisysocks added [Feature] Multisite Anything related to the specific experience of using a multisite Needs Testing Needs further testing to be confirmed. labels Feb 4, 2022
@github-actions github-actions bot added the [Status] Stale Gives the original author opportunity to update before closing. Can be reopened as needed. label Aug 25, 2022
@kathrynwp
Copy link

@lordmatt @sippsolutions @netzgestaltung Hi there, just circling back to this and wondered if any of you would have a moment to provide the info @noisysocks asked about above, to help move this along. Please let us know so we can keep this ticket going if it's still an issue for folks. Thanks!

@github-actions github-actions bot removed the [Status] Stale Gives the original author opportunity to update before closing. Can be reopened as needed. label Sep 6, 2022
@kathrynwp
Copy link

I'm going ahead and closing this, since no one has been able to confirm that this is still an issue. If anyone gets back to this later and is able to confirm the following, please add a comment with details and I'll be glad to reopen it. Thanks!

Is anyone able to reliably confirm that widgets will, when previewed, display a 403 Forbidden error when logged in as a super user on a multisite installation?

@kathrynwp kathrynwp closed this as not planned Won't fix, can't repro, duplicate, stale Sep 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature] Multisite Anything related to the specific experience of using a multisite [Feature] Widgets Screen The block-based screen that replaced widgets.php. Needs Testing Needs further testing to be confirmed.
Projects
None yet
Development

No branches or pull requests

9 participants