我正在为我的某个网站创建一个简单的管理系统,现在我正在创建一个受WordPress启发的博客'发布系统。
在我的博客中,您可以将其另存为草稿版或已发布版。 现在我想创建一种方式,所以当你删除一个博客时,它会变成" trashed"在数据库中。当你恢复它时,它将再次恢复为同一类型,就像WordPress一样。
但是,WordPress如何将其删除的帖子恢复到原来的post_status?我查看了WordPress数据库,但我无法弄清楚,它是如何做到的,导致原来的post_status被" trash"当它被删除并且没有存储在表中的任何其他位置时。
那么它是如何记住"它的原始post_status?希望你明白我在问:D
很抱歉不是与代码相关的问题,但我无法在其他任何地方找到任何答案。
答案 0 :(得分:1)
简短:
WordPress帖子的上一个后期状态存储在wp_postmeta表中。 在该表中,邮件被删除的时间也被存储。
如果您随后还原帖子,则会删除包含该特定帖子的数据的行。
那应该回答你的问题。
答案 1 :(得分:0)
这是坦率的基本内容。您应该查看wp_posts表,看看已删除的帖子和已发布的帖子之间的区别(可能还有其他帖子)。 Wordpress通过更改该特定数据行的post_status列来完成此操作。这样它就知道有关职位的现状。
它可能与答案无关,但对于那些正在寻找这个问题答案的人,应该考虑查看数据源,即您正在尝试学习的任何系统的数据库...无论是Wordpress还是Moodle
答案 2 :(得分:0)
所有帖子,页面和cpts都存储在数据库中的{table_prefix}_posts
中。
被删除的帖子,页面或cpts的post_status
为trash
,在某些情况下永久链接也会更改为__trashed
e.g; http://example.com/sample-page__trashed
要恢复帖子页面,请将post_status
更改回published
并从永久链接中移除__trashed
(如果存在)。
我最近修复了使用“Frontend User Pro”插件的网站上的问题,并且登录页面和重置密码页面被删除了。该网站无法正常工作,我使用上述方法修复了它。