From cbb65e2d97a18237e02e7c7bcb3950d6b00844f0 Mon Sep 17 00:00:00 2001 From: Anton Date: Wed, 9 Oct 2024 21:17:02 +0300 Subject: [PATCH] Update Layout.js --- docs/docusaurus/src/theme/Layout.js | 54 ++++++++++++++++++++++++----- 1 file changed, 46 insertions(+), 8 deletions(-) diff --git a/docs/docusaurus/src/theme/Layout.js b/docs/docusaurus/src/theme/Layout.js index 58601a1810..5bc9fe1d05 100644 --- a/docs/docusaurus/src/theme/Layout.js +++ b/docs/docusaurus/src/theme/Layout.js @@ -4,16 +4,53 @@ import Head from '@docusaurus/Head'; export default function CustomLayout(props) { useEffect(() => { - // Создаем
для блока Яндекса в конце body - const adDiv = document.createElement('div'); - adDiv.id = 'yandex_rtb_R-A-12294791-1'; - adDiv.style.height = '200px'; - document.body.appendChild(adDiv); + // Создаем обертку для блока Яндекса под правым меню + const wrapperRightMenu = document.createElement('div'); + wrapperRightMenu.style.height = '200px'; // Устанавливаем высоту обертки + wrapperRightMenu.style.marginTop = '20px'; // Добавляем отступ сверху - // Добавляем скрипт для отображения рекламы + // Создаем
для блока Яндекса под правым меню + const adDivRightMenu = document.createElement('div'); + adDivRightMenu.id = 'yandex_rtb_R-A-12294791-2'; + + // Добавляем рекламный блок в обертку + wrapperRightMenu.appendChild(adDivRightMenu); + + // Находим правое меню и вставляем обертку под ним + const rightMenu = document.querySelector('.theme-doc-toc-desktop'); + if (rightMenu) { + rightMenu.parentNode.appendChild(wrapperRightMenu); + } + + // Создаем обертку для блока Яндекса над подвалом + const wrapperAboveFooter = document.createElement('div'); + wrapperAboveFooter.style.height = '200px'; // Устанавливаем высоту обертки + + // Создаем
для блока Яндекса над подвалом + const adDivAboveFooter = document.createElement('div'); + adDivAboveFooter.id = 'yandex_rtb_R-A-12294791-1'; + + // Добавляем рекламный блок в обертку + wrapperAboveFooter.appendChild(adDivAboveFooter); + + // Находим элемент подвала и вставляем обертку перед ним + const footer = document.querySelector('footer'); + if (footer) { + footer.parentNode.insertBefore(wrapperAboveFooter, footer); + } else { + // Если подвал не найден, добавляем в конец body как резервный вариант + document.body.appendChild(wrapperAboveFooter); + } + + // Добавляем скрипт для отображения рекламы для каждого блока const script = document.createElement('script'); script.innerHTML = ` window.yaContextCb.push(() => { + Ya.Context.AdvManager.render({ + blockId: "R-A-12294791-2", + renderTo: "yandex_rtb_R-A-12294791-2", + type: "feed" + }); Ya.Context.AdvManager.render({ blockId: "R-A-12294791-1", renderTo: "yandex_rtb_R-A-12294791-1", @@ -25,8 +62,9 @@ export default function CustomLayout(props) { // Удаляем элементы при размонтировании компонента return () => { - document.body.removeChild(adDiv); - document.body.removeChild(script); + wrapperRightMenu.remove(); + wrapperAboveFooter.remove(); + script.remove(); }; }, []);