您可以使用该功能in_category()
检查该职位是否属于特定类别。
最好检查url是否已经存在,这样就不会有多个记录具有相同的url。
function custom_update_txt_file( $post_id, $post ) {
// Check if post is in category you can check by term_id or slug or array
if(in_category( \'uncategorized\', $post_id )) {
$post_url = get_permalink( $post_id ) . "\\r\\n";
$fp = fopen( ABSPATH . \'/post-links.txt\', \'a+\' );
$url_exists = false;
// Read each line to check if the url already exists.
while (($line = fgets($fp)) !== false) {
$url_exists = ($line == $post_url) ? true : false;
}
if(!$url_exists) {
fwrite( $fp, $post_url );
}
fclose( $fp );
}
}
add_action( \'publish_post\', \'custom_update_txt_file\', 10, 2 );
如果只想在帖子状态更改为“发布”时运行一次,而不是每次都使用状态“发布”更新帖子,那么还有一件事要做。
那么最好使用transition_post_status
钩如果post状态已更改,您可以使用它进行检查,然后执行某些操作。