我找到了基于此页面代码的解决方案:https://core.trac.wordpress.org/ticket/22180
所有附件文件的post状态均为“继承”。因此,首先您需要添加“inherit”作为可能要搜索的帖子状态之一。您可以使用wp\\u link\\u query\\u args筛选器来完成此操作。
function my_wp_link_query_args( $query ) {
if (is_admin()){
$query[\'post_status\'] = array(\'publish\',\'inherit\');
}
return $query;
}
add_filter(\'wp_link_query_args\', \'my_wp_link_query_args\');
默认情况下,您将获得的url是附件url,而不是文件url。因此,如果需要文件url,可以使用filter wp\\u link\\u查询来过滤结果。
function my_modify_link_query_results( $results, $query ) {
foreach ($results as &$result ) {
if (\'Media\' === $result[\'info\']) {
$result[\'permalink\'] = wp_get_attachment_url($result[\'ID\']);
}
}
return $results;
}
add_filter(\'wp_link_query\', \'my_modify_link_query_results\', 10, 2);
foreach循环遍历所有结果,找到具有某种媒体类型的结果,并用文件URL替换附件URL。