我在WordPress网站上使用advanced\\u ads插件,该插件允许我创建不同类型的广告,包括图像广告、丰富内容广告等。该插件允许使用快捷码在我的网站上显示广告。
我在自定义模板文件上使用了丰富内容的广告类型,它允许我像博客帖子一样显示所有广告。现在,我想将每个广告的内容限制在30-50个字,因此我只能显示广告的简短描述,用户单击“阅读更多”按钮后将在单个页面中查看整个广告。
到目前为止,我愿意使用the_excerpt();
但advanced\\u广告允许[the_ad id]
在内容中放置广告的快捷码。在我的代码中,我循环遍历所有这些广告,并将每个广告的id分配给短代码,如[the_ad id=".$post->ID."]
而且效果很好。
然而,我愿意整合the_excerpt();
在我的代码中,限制字数并显示一个按钮Read More
这将允许用户查看全部内容。
这是我的代码:
<?php echo \'<div class="advert-div">\'; ?>
<h2 class="ad-title"><?php the_title(); ?></h2>
<?php
echo do_shortcode("[the_ad id=".$post->ID."]");
echo \'</div>\';
最合适的回答,由SO网友:mrben522 整理而成
使用wp_trim_words()
像这样:
<?php
$moreLink = \'<a href="\' . get_the_permalink() . \'">Read More</a>\';
echo \'<div class="advert-div">\'; ?>
<h2 class="ad-title"><?php the_title(); ?></h2>
<?php
echo wp_trim_words(do_shortcode("[the_ad id=".$post->ID."]"), 55, $moreLink);
echo \'</div>\';
只需替换即可,但您需要将外接程序的永久链接添加到
$moreLink
如果需要。