我正在使用Automatic的插件在我的网站上实现AMP。目前,为了使我的视频响应迅速,我将YouTube视频包装在一个自定义分区上。因此,我网站上的YouTube视频如下所示:-
<div class="yt">
<iframe>....YT video code...</iframe>
</div>
问题是<div class="yt">
和结束</div>
两者都出现在AMP页面上。如何删除它们?已经尝试寻求官方支持。尚未收到答复。我正在使用Automatic的插件在我的网站上实现AMP。目前,为了使我的视频响应迅速,我将YouTube视频包装在一个自定义分区上。因此,我网站上的YouTube视频如下所示:-
<div class="yt">
<iframe>....YT video code...</iframe>
</div>
问题是<div class="yt">
和结束</div>
两者都出现在AMP页面上。如何删除它们?已经尝试寻求官方支持。尚未收到答复。多亏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;
}
请随时对此进行改进。有时,您希望删除的不是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;
}
我的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