只是想知道如何获取一篇文章所附文件的url,并将其显示在该CPT的管理页面中。该文件通过名为“grading\\u form”的ACF文件上载字段附加到帖子
我有管理页面列设置(使用我的自定义插件),数据填充在所有列中(同样,使用自定义插件)。
每篇文章都附有PDF格式文件。我想有一个在管理页面有一个PDF文件链接列。
到目前为止,我有以下几点:
function toogee_grading_applications_column( $column, $post_id ) {
// Grading Form column
if ( \'grading_form\' === $column ) {
$gradingForm = wp_get_attachment_url( \'grading_form\' );
if ( ! $gradingForm ) {
_e( \'N/A\' );
} else {
echo $gradingForm;
}
}
}
add_action( \'manage_grading_applications_posts_custom_column\', \'toogee_grading_applications_column\', 10, 2);
注意:我还有其他专栏都使用上述格式,但我只是为了缩短这篇文章而将它们从这篇文章中删除了
一旦我有了PDF文件附件的URL,我只想在else
语句在该列中具有链接:
echo \'<a href="\'.$gradingForm.\'">Grading Form</a>\';
除非有更好的方法?
感谢您的任何意见
最合适的回答,由SO网友:Sally CJ 整理而成
这个File field\'s documentation 有一些您可以尝试的选项,但这里有一个示例,如果您的字段Return Value 是数组,您可以在其中使用$gradingForm[\'url\']
要获取附件URL,请执行以下操作:
$gradingForm = get_field( \'grading_form\', $post_id );
echo $gradingForm ? \'<a href="\' . esc_url( $gradingForm[\'url\'] ) . \'">Grading Form</a>\' : \'N/A\';
以及正确的使用方法
wp_get_attachment_url()
通过将附件(post)ID作为以下唯一参数传递:
wp_get_attachment_url( 123 )
.
在你的情况下,这里有一个不使用get_field()
:
$att_id = get_post_meta( $post_id, \'grading_form\', true );
$gradingForm_url = wp_get_attachment_url( $att_id );