我正在确定主题,然后遇到一个问题,其中YouTube网址显示在我用作摘录的内容中。我目前有一个条件,如果没有摘录,它将显示精简的内容。这是我的模板代码:
<?php
if ( ! has_excerpt() ) {
echo wp_trim_words(wp_strip_all_tags( get_the_content(), 40 )) ;}
else {
the_excerpt();
}
?>
在此特定示例中,https://imgur.com/EdLdInW
该帖子的第一个标题是YouTube Gutenberg块,显示了修剪和剥离的the_content。它拉出了我不想要的YouTube URL。
当前在具有Understrap框架的Wordpress 5.1.1上。任何帮助都会很棒!
答案 0 :(得分:0)
您可以使用preg_replace删除URL:
$string = "The Third Culture: The Frontline of Global Thinking http://someurl.com/;via @edge";
$regex = "@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@";
echo preg_replace($regex, ' ', $string);
因此,您的情况将是这样:
<?php
if ( ! has_excerpt() ) {
$content = wp_trim_words(wp_strip_all_tags( get_the_content(), 40 )) ;
$regex = "@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@";
echo preg_replace($regex, ' ', $content);
}else {
the_excerpt();
}
?>