Определение AMP-страниц, сгенерированных официальным плагином AMP для WordPress, при одновременном использовании на сайте ускоренных и обычных страниц.
О плагине AMP для WordPress
Речь идет об официальном плагине AMP для WordPress, логотип которого вы видите на изображении:
Этот плагин предоставляет возможность включать или отключать генерацию AMP для отдельных страниц и записей. Иногда на ускоренных и обычных страницах требуется размещать разный код. Для этого требуется определить, к какому типу страница относится.
Идентификация страниц AMP
Для определения AMP-страниц, сгенерированных плагином, и размещения соответствующего кода используется оператор if
с функцией is_amp_endpoint()
:
1 2 3 4 5 |
<?php if ( function_exists( 'is_amp_endpoint' ) && is_amp_endpoint() ) : ?> <script>Код для AMP-страниц</script> <?php else : ?> <script>Код для обычных страниц</script> <?php endif; ?> |
Если код необходимо разместить только на AMP-страницах, оператор else
и код для обычных страниц из конструкции if
можно исключить.
Пример размещения кода
Размещение кода в зависимости от типа записи или страницы (AMP или не AMP) рассмотрим на примере автоматизированных объявлений AdSense для ускоренных и обычных страниц, а также кода счетчика Google Analytics.
Следующий код размещен в файле header.php
перед закрывающим тегом </head>
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php if (function_exists( 'is_amp_endpoint' ) && is_amp_endpoint()) { ?> <!-- Код для объявлений AMP в раздел «head» --> <script async custom-element="amp-auto-ads" src="https://cdn.ampproject.org/v0/amp-auto-ads-0.1.js"></script> <!-- Код для аналитики AMP в раздел «head» --> <script async custom-element="amp-analytics" src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js"></script> <?php } else { ?> <!-- Автоматизированные объявления AdSense для обычных страниц в раздел «head» --> <script data-ad-client="ca-pub-0000000000000000" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <?php } ?> |
Следующий код размещен в файле footer.php
перед закрывающим тегом </body>
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
<?php if (function_exists( 'is_amp_endpoint' ) && is_amp_endpoint()) { ?> <!-- Объявления Adsense для AMP в раздел «body» --> <amp-auto-ads type="adsense" data-ad-client="ca-pub-0000000000000000"> </amp-auto-ads> <!-- Конец объявлений Adsense для AMP --> <!-- Код счетчика Google Analytics для AMP --> <amp-analytics type="gtag" data-credentials="include"> <script type="application/json"> { "vars" : { "gtag_id": "UA-00000000-0", "config" : { "UA-00000000-0": { "groups": "default" } } } } </script> </amp-analytics> <!-- Конец кода счетчика Google Analytics для AMP --> <?php } else { ?> <!-- Код счетчика Google Analytics для не AMP --> <script> window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; ga('create', 'UA-00000000-0', 'auto'); ga('send', 'pageview'); </script> <script async src='https://www.google-analytics.com/analytics.js'></script> <!-- Конец кода счетчика Google Analytics для не AMP --> <?php } ?> |
Смотрите как отключить комментарии через админ-панель WordPress.