diff --git a/ghost/sodo-search/src/App.js b/ghost/sodo-search/src/App.js index ea860f3564..9194a69098 100644 --- a/ghost/sodo-search/src/App.js +++ b/ghost/sodo-search/src/App.js @@ -73,14 +73,19 @@ export default class App extends React.Component { showPopup: true }); }; - const customTriggerSelector = '[data-ghost-search]'; - this.customTriggerButtons = document.querySelectorAll(customTriggerSelector) || []; + + this.customTriggerButtons = this.getCustomTriggerButtons(); this.customTriggerButtons.forEach((customTriggerButton) => { customTriggerButton.removeEventListener('click', this.clickHandler); customTriggerButton.addEventListener('click', this.clickHandler); }); } + getCustomTriggerButtons() { + const customTriggerSelector = '[data-ghost-search]'; + return document.querySelectorAll(customTriggerSelector) || []; + } + handleSearchUrl() { const [path] = window.location.hash.substr(1).split('?'); if (path === '/search' || path === '/search/') { @@ -92,6 +97,10 @@ export default class App extends React.Component { } addKeyboardShortcuts() { + const customTriggerButtons = this.getCustomTriggerButtons(); + if (!customTriggerButtons?.length) { + return; + } this.handleKeyDown = (e) => { if (e.key === 'k' && e.metaKey) { this.setState({