Using id to show item

时间:2020-01-15 作者:Michiel O

我正在做一个项目,我上传了一个gpx文件,并使用gpx的路径放入一个短代码插件我使用帖子id获取一个已填充的短代码我使用此代码获取短代码的信息,现在我想这样做,所以当我发布一篇带有gpx文件的新帖子时,它会自动获取id并使用它,我当前将id硬编码到其中,是否有修复方法?

<?php
global $wpdb; 
$thepost = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->postmeta WHERE post_id = 5574" ) );
echo do_shortcode (\'[sgpx gpx="\'.\'/wp-content/uploads/\' . $thepost->meta_value . \'"]\'); 
?>

1 个回复
SO网友:Rup

如果GPX文件附加到当前页面,则可以使用get_attached_media(), e、 g。

$gpx_files = get_attached_media( \'application/gpx+xml\' );
if ( count( $gpx_files ) >= 1 ) {
    echo do_shortcode (\'[sgpx gpx="\' . wp_get_attachment_url( $gpx_files[0]->ID ) . \'"]\');
} else {
    echo \'<p class="warning">No GPX file attached!</p>\';
}