📅  最后修改于: 2023-12-03 14:48:32.127000             🧑  作者: Mango
在WordPress中,每当你对一篇文章进行编辑时,系统便会默认地保存一次新的副本。如果你经常编辑文章,就会发现这些副本会消耗掉你的数据库资源,从而影响网站的性能。为了解决这个问题,WordPress提供了一个设置参数,允许你控制文章保存的版本数目。本文将介绍如何使用PHP代码来设置文章保存的最大版本数目。
/**
* 设置文章保存的最大版本数目
*
* 这个代码片段会限制WordPress保存每篇文章的版本数量。如需修改版本数目,请将最后一行代码的数字更改为所需的版本数目即可。
*
* @param int $num_revisions 最大版本数目
* @param WP_Post $post 文章post object
* @return int
*/
function set_max_post_revisions( $num_revisions, $post ) {
if ( ! $post || ! property_exists( $post, 'post_type' ) || $post->post_type !== 'post' ) {
return $num_revisions;
}
return 3; // 最多保存3个版本的文章
}
add_filter( 'wp_revisions_to_keep', 'set_max_post_revisions', 10, 2 );
上述代码使用了WordPress的add_filter
函数来修改文章保存版本的数量。该函数需要三个参数:过滤器名称、进行过滤的回调函数和优先级。在本例中,我们使用的过滤器是wp_revisions_to_keep
,这个过滤器需要重新定义WordPress保存文章版本的数量。接下来,我们为这个过滤器指定了一个回调函数set_max_post_revisions
,其中该函数的第一个参数为最大版本数目,第二个参数为post object
即文章对象。最后一个参数“10”指定了函数的优先级数值,本例中默认为10。
在set_max_post_revisions
函数中,我们用条件判断语句if
来限制文章类型只针对posts设置版本数,其他对象如pages不受限制。最后,我们使用数字3来代表文章最大保存3个版本,你可以自行在这个数字设置你想要保存的版本数量。
通过使用上述代码,你可以帮助你的WordPress网站更好地管理文章编辑的版本历史记录。同时也减轻了数据库压力,提高了网站的性能和效率。