在删除帖子之前,如何检查是否链接到该帖子?


15

如果我想“安全”删除帖子。我想确保(我的博客中)没有链接到“待删除”帖子。我怎么做?


不确定如何执行此操作,但是您可能无法尝试:将帖子移至垃圾箱并使用链接检查器插件。如果链接检查器插件足够聪明,它应该告诉您任何链接到帖子的链接,而这些链接在您的站点上不再可见。
布雷迪

1
+1是个好问题。想法是扫描所有帖子的帖子内容,但是对于一个没有大量帖子的大型网站而言,这可能会很痛苦。我可以通过将帖子的链接的序列化数组保存在其postmeta中(对于新的和现有的),然后从postmeta表中查询此元信息并进行扫描,并返回链接到要删除的帖子的arry ID来获取信息。您可以暂停它,也可以使其采取所需的任何操作。
Ashfame,2011年

@Ashfame:有趣的建议。现在,如果您要为其创建插件...
Jan Fabry

另一个+1加收藏夹。@Jan Fabry&@Ashfame-我敢肯定你想一起努力!:)
kaiser

@ user3047您是否不想将此标记为已解决?
kaiser

Answers:


6

阅读此线程后,我发现有时也可能需要它。因此,结果如下:

内部链接检查器插件

它在您的帖子编辑屏幕上添加了一个meta框,其中显示了指向所有内部链接到当前显示帖子的所有帖子的链接。如果要更改输出(例如添加一些内容),请使用提供的过滤器。在自述文件中可以找到有关如何使用过滤器的示例。

该插件是GPL2许可的。也许我还会将其放入官方仓库中,以允许从您的自托管博客中进行安装。编辑:完成。

...或...

...或我们自己


并感谢@Drake提供了sql查询(请继续并支持他的回答)。
kaiser

有点粗糙,但还可以。如果您在同一帖子中有多个链接,它将显示重复项。接受的解决方案。
user3047 2011年

感谢您的注意。没意识到。将在将来的版本中更改。
kaiser

6

您可以执行以下查询:

SELECT ID, post_title, post_date, post_content 
FROM wp_posts 
WHERE post_content 
LIKE '%your-post-title%' ORDER BY post_date

以获得按日期链接到旧邮购订单的所有帖子。


1

没有单独的表或数据结构可保留帖子到帖子的链接,因此执行此操作的最佳方法是在您的帖子中搜索要删除的帖子的URL。搜索将根据帖子的HTML代码进行,因此即使您在视觉编辑器中看不到该链接,它也将包含完整链接。

当然,您还应该搜索页面,因为它们也可以包含指向帖子的链接。

另一种方法是使用Google。如果您搜索link:http://example.com/2011/05/post-to-delete/它,将返回在那里链接的所有页面。然后,您还可以添加site:example.com以将结果限制为仅网站上的页面。当然,这不会像在您当前数据库中进行的搜索那样最新。


好点子。但是我正在处理的特定博客是私人的……
user3047 2011年

1

只需使用Google的网站站长工具-它就有一个显示内部链接的特定页面。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.