想要在有文件下载时显示下载链接

时间:2012-07-06 23:15:50

标签: php wordpress conditional attachment

我的问题是,就像标题所说的那样,只有当可用的文件是...时,我才想显示文件的下载链接。

我不知道错误在哪里:

<?php $doc = get_post_meta(get_the_ID(), 'wp_custom_attachment', true); ?>

<div id="custom_pdf">  

 <a href="<?php echo $doc['url']; ?> "> 

 Download PDF Here  

 </a> 

 </div><!-- #custom_pdf --> 

这是正常的代码..它的工作正常,但在这里它无条件地显示...并且有条件的代码是:

<?php $doc = get_post_meta(get_the_ID(), 'wp_custom_attachment', true); ?>

<? if(strlen(trim(<?php $doc['url'] ?>)) > 0) { 
<div id="custom_pdf">  

 <a href="<?php echo $doc['url']; ?> "> 

 Download PDF Here  

 </a> 

 </div><!-- #custom_pdf --> 


} ; ?> // end if  

这里是错误的地方,但我不知道在哪里。

有人可以帮助我。感谢。

3 个答案:

答案 0 :(得分:3)

您的PHP代码未正确放入HTML代码中:

<?php $doc = get_post_meta(get_the_ID(), 'wp_custom_attachment', true);
if(strlen(trim($doc['url'])) > 0) {
?>
<div id="custom_pdf">  
<a href="<?php echo $doc['url']; ?>">Download PDF Here</a> 
</div><!-- #custom_pdf --> 
<?php } // end if  
?>

当您从HTML切换到PHP时,需要打开PHP标记<?php,当您从PHP切换到HTML时,需要关闭PHP标记?>

答案 1 :(得分:1)

当你已经在php

时,你正在打开一个<?php标签
<?php 
  $doc = get_post_meta(get_the_ID(), 'wp_custom_attachment', true);
  if(strlen(trim($doc['url'])) > 0) 
  { 
?>

  <div id="custom_pdf">  
     <a href="<?php echo $doc['url']; ?> ">Download PDF</a> 
  </div><!-- #custom_pdf --> 

<?php 
  } 
?>

答案 2 :(得分:0)

您可以尝试使用Download Monitor插件。您可以设置包括图标的显示配置。它具有分析和文件交换功能。您还可以检查“强制下载”选项,以便文件不会尝试加载到新的浏览器窗口中。

http://wordpress.org/extend/plugins/download-monitor/

相关问题