2013-03-07 100 views
0

我有一个模板文件,它显示了称为下载类别的帖子。对于每篇文章我附上一个pdf文件。我已经给出了一个链接来下载页面上的PDF文件。但是,当我点击下载链接,它转到帖子页面,从那里我必须点击下载文件。有没有什么办法可以直接下载而不需要去帖子。 ?我一直在使用wp_get_attachment_url作为试过超reference.but它不是,我是用working.The代码如下:wp_get_attachment_url无法正常工作

<?php /* 
Template Name: Downloads Template 
*/ 
?> 
<?php get_header(); ?> 
<?php 
$recent = new WP_Query("cat=7&orderby=title&order=ASC"); 
while($recent->have_posts()):$recent->the_post(); 
$desc_values = get_post_custom_values("description"); 
?> 
<div id="download_featured_image" class="<?php the_ID(); ?> download_image_title_desc"> 

     <a href="<?php the_permalink() ?>" rel="title"> 
    <?php 
     if (has_post_thumbnail()) { 
      the_post_thumbnail(); 
     } 
    ?></a> 
<a href = "" > <?php if (is_user_logged_in()) { 
     echo "Download"; 
    }?></a> 
    <a href=" http://localhost/wordpress/login.php"> <?php if(!(is_user_logged_in())) 
    { 
     echo "Please signup/login to download this file"; 
    } 
    ?> 
</a> 

<div id="Download_post_description"> 
     <?php 
      if(is_array($desc_values)) 
      { 
       foreach($desc_values as $key => $value); 
       echo "$value</n>"; 
      } 
     ?> 
    </div> 
</div> 
<?php endwhile ?> 
<?php get_footer(); ?> 

我想给的链接在href上传PDF我已经离开空白。有人能帮我吗?

+0

如果您使用的是'wp_get_attachment_url()'函数?你说你把* pdf文件附加到了这篇文章中,这是否意味着它是帖子内容的一部分,还是它在元领域?其内容部分为 – kjetilh 2013-03-07 14:05:02

+0

。我没有使用上述代码中的函数。告诉我如何在超级引用中使用它,如果你可以请。 – MidhuN 2013-03-07 14:29:15

+0

我假设您已经将PDF上载到媒体库。您应该将PDF的附件ID(或者甚至是直接链接本身)设置为自定义字段,而不是内容中的内容,以便将其提取出来。请参阅我的回答下面的 – kjetilh 2013-03-07 15:00:34

回答

1
  1. 添加PDF附件ID作为自定义字段的值,例如attached_pdf_id
  2. 获取使用wp_get_attachment_url()

网址 -

<?php 
if (is_user_logged_in()) { 

    $pdf_link = wp_get_attachment_url(get_post_meta(get_the_ID(), 'attached_pdf_id', true)); 

    if ($pdf_link) { 
     ?><a href = "<?php echo $pdf_link ?>" >Download</a><?php 
    } else { 
     ?>Sorry, no link available. Please contact the webmaser.<?php 
    } 
} 
?> 
+0

我已经给自定义字段的附件的网址。然后它不工作。还有什么我应该做的吗? – MidhuN 2013-03-08 05:50:37

+0

我的代码假定自定义字段是附件“post”的ID。如果你明确地设置了URL,你不需要调用** wp \ _get \ _attachment \ _url()**函数 – kjetilh 2013-03-08 06:20:46

+0

你让我的一天更美好..非常感谢 – MidhuN 2013-03-08 06:24:49