如果PDF存在,我正在尝试使用缩略图链接到同名PDF,但如果PDF不存在则不链接到任何内容。这是我的代码:
<?php
if ( function_exists('has_post_thumbnail') && has_post_thumbnail() ) {
$full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full') ;
$pdf = substr_replace($full_image_url , 'pdf', strrpos($full_image_url[0] , '.') +1);
$filename = $pdf[0];
if (file_exists($filename)) {
echo '<a href="' . $pdf[0] . '" title="' . the_title_attribute('echo=0') . '" . target="_blank" >';
the_post_thumbnail('Full Size');
echo '</a>';
}
else {
echo "The file $filename exists";
}
}
?>
目前,else语句只是为了证明它是否正在查找文件。这似乎是,因为它显示The file http://localhost/AWAD/wp-content/uploads/2012/03/+D.pdf exists
。如果我摆脱条件,后缩略图显示带有PDF的链接。我无法让条件工作。
有人能说出它为什么不起作用吗?
答案 0 :(得分:4)
您应该将FS上的路径传递给file_exists
,现在就传递一个URL
答案 1 :(得分:1)
我非常确定file_exists
想要一个完整的文件路径,而不是一个URL。因此,您可能希望使用WordPress wp_uploads_dir
函数获取上传目录的基本路径,然后将路径的其余部分追加到该目录的末尾,然后将该字符串传递给file_exists
。希望这是有道理的。