如果固定链接相同,是否不插入?

时间:2018-06-05 作者:Peter Westerlund

我有一个foreach循环插入帖子。我已经有了一些语句来检查post是否已经通过唯一的元值存在。但不知何故,通常当网站加载缓慢时,会发生一些奇怪的事情,出现重复的帖子。相同的永久链接,但仅在url末尾使用“-2”和“-3”等。

我想知道是否有钩子或什么东西可以阻止wp_insert_post() 如果检测到必须将帖子添加到永久链接中,则函数将阻止插入帖子。

1 个回复
SO网友:Levi Dulstein

您可以向foreach循环中添加额外的检查,以查看是否已经存在与您要添加的slug完全相同的post。如果没有看到当前的代码,就很难准确地说出您需要做什么。

我假设你知道你想插入的slug和一种帖子?

您可以先使用该slug查找现有帖子:

$existing_item = get_page_by_path( \'your-post-slug\', OBJECT, \'your_post_type\');

// null means that there is no post with that slug
if ( null === $existing_item ) {
    // proceed with inserting a post 
}
请记住,这将对页面性能产生更大的影响,因为您正在向循环中的每个项目添加额外的查询。

结束