我应用了一个过滤器来删除所有主题样式,但我希望只有当url以/amp/结尾时才会发生这种情况。
下面的代码正在删除。所有页面上的css样式,不过滤permalink的术语。
我正在使用AMP for Wordpress 插件,在URL的末尾添加amp。例如:mysite。com/类别/post slug/放大器/
function remove_all_theme_styles() {
if ( get_permalink($post->ID) . \'/amp/\' ) {
global $wp_styles;
$wp_styles->queue = array();
}
}
add_action(\'wp_print_styles\', \'remove_all_theme_styles\', 100);
他们说要补充,但两者都不起作用。
function remove_all_theme_styles() {
if ( $_SERVER[\'REQUEST_URI\'] == get_permalink($post->ID) . \'/amp/\' ) {
SO网友:Nathan Kinkead
在您的示例中,$_SERVER[\'REQUEST_URI\']
将返回/category/post-slug/amp/
这与get_permalink($post->ID)
这将返回https://example.com/category/post-slug/
有很多方法可以做到这一点,但我想到的一个简单方法是。。。
if ( strpos($_SERVER[\'REQUEST_URI\'], \'/amp/\' ) !== false ) {
这个
strpos()
PHP函数在第一个字符串中查找第二个字符串的位置,如果未找到,则返回false。
因此,这实际上是在请求URI中搜索“/amp/”的存在,如果找到了,则继续执行函数的其余部分。