从AMP页面中删除自定义Div

时间:2018-11-05 作者:user1928108

我正在使用Automatic的插件在我的网站上实现AMP。目前,为了使我的视频响应迅速,我将YouTube视频包装在一个自定义分区上。因此,我网站上的YouTube视频如下所示:-

<div class="yt">
<iframe>....YT video code...</iframe>
</div>
问题是<div class="yt"> 和结束</div> 两者都出现在AMP页面上。如何删除它们?已经尝试寻求官方支持。尚未收到答复。

2 个回复
SO网友:user1928108

多亏Thomas在StackOverflow回答了我的问题-https://stackoverflow.com/questions/53158606/remove-div-with-a-class-without-removing-content

下面是您如何在Wordpress for AMP上完成的。在您的主题中functions.php 添加以下内容:-

add_action( \'pre_amp_render_post\', \'amp_vid_rmv\' );
   function amp_vid_rmv() {
add_filter( \'the_content\', \'amp_vid_div_rmv\' );
} 
function amp_vid_div_rmv($content) {
   $content = preg_replace(\'#<div class="yt">([\\s\\S]*?)</div>#\', \'$1\', $content);
   return $content;
}
请随时对此进行改进。

SO网友:Serhii Kushchenko

有时,您希望删除的不是html代码,而是短代码。然后使用类似的方法:

add_action( \'pre_amp_render_post\', \'amp_vid_rmv\' );
   function amp_vid_rmv() {
add_filter( \'the_content\', \'amp_vid_div_rmv\' );
} 
function amp_vid_div_rmv($content) {
  $content = preg_replace(\'#\\[shortcode_name_here\\]<br \\/>#\', \'$1\', $content);
   ?> <div>in func 9 </div> <?php 
   return $content;
}

结束

相关推荐

将wp-config.php上移一级-500错误-Nginx

我的wordpress安装位于/var/www/html/我已移动wp配置。php文件一级到/var/www/并删除了原始文件。然而,我得到了一个500错误。在wp配置中。php有一行内容如下:if ( !defined(\'ABSPATH\') ) define(\'ABSPATH\', dirname(__FILE__) . \'/\'); /** Sets up WordPress vars and included files. */ require_on