2

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

我不知道错误在哪里:

<?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  

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

有人可以帮帮我吗。谢谢。

4

3 回答 3

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 标签?>

于 2012-07-06T23:23:59.163 回答
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 
  } 
?>
于 2012-07-06T23:22:40.903 回答
0

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

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

于 2012-07-07T02:14:07.220 回答