Так что в WordPress есть ряд условных выражений, которые позволяют запускать функции в определенных частях сайта, а не в других. Например:
is_feed() will allow you to target RSS feeds.
is_singular() will allow you to target single posts and pages.
is_amp() will allow you to target pages being served via the AMP version.
Шучу над последним. Эта функция не существует, но об этом я и спрашиваю. Есть ли функция или механизм, который я могу использовать, чтобы проверить, обслуживается ли страница через AMP-версию этой страницы?
Мой желаемый код будет примерно таким:
if( true === is_singular() && !is_feed() && !is_amp() ):
add_filter( 'the_content','swp_insert_pinterest_image', 10 );
endif;
Конечно, is_amp () слишком универсален, поэтому я добавлю свои префиксы вендоров и так далее, чтобы избежать конфликтов имен, но я отвлекся.
Итак, как я могу проверить AMP в WordPress? Есть ли функция, которую мы можем написать, или, может быть, есть параметр запроса или переменная $ _GET, которую можно проверить?
Чтобы определить, находитесь ли вы на странице AMP, используйте is_amp_endpoint()
,
Других решений пока нет …