我有一个内容共享网站,我在那里分享Windows 7的主题和小工具。
我使用自定义字段上传文件,并将其值存储在名为durl的自定义字段中。
现在我要创建一个名为" Download"的单独页面。当用户访问帖子页面并单击下载按钮时,必须将其转发到必须开始下载的新页面。
新页面"下载"必须获得自定义字段值" $ durl"从帖子。
有可能吗?我已经在codeigniter中完成了它,但不知道如何使用wordpress实现这一点。
请指导我。
的问候, 里亚斯
答案 0 :(得分:1)
这是另一种方法。
通过复制page.php创建下载模板,并将其放入新模板中:
<?php
/*
Template Name: Downloads
*/
?>
使用页眉,页脚等填充模板,如page.php。在WordPress中创建一个新页面并将模板“下载”分配给它。
例如,在原始帖子(single.php)中,动态创建下载链接:
<a href="/download/?fileID=<?php echo $post->ID; ?>">Download File</a>
用户将被重定向到您刚刚创建的“下载”页面。您需要将此代码放在下载模板/页面中:
<?php
if (isset($_GET['fileID']) && is_numeric($_GET['fileID'])) { // to verify that fileID is passed
// we now have the post ID in downloads page and can create download link
$file = get_post_meta($_GET['fileID'], 'durl', true);
}
?>
<a href="<?php echo $file; ?>">Download now</a>
它应该在下载页面(这是与你的帖子相关的下载链接)中打印自定义字段值
此代码的想法是在$ _GET中传递帖子ID,并使用帖子ID通过其自定义字段获取下载链接。
答案 1 :(得分:0)
只需创建一个名为Downloads的新页面模板。 复制并粘贴,主题文件中page.php的所有代码, 然后就在上面说:
<?php get_header();?>
将其粘贴在代码部分,以创建新的模板文件..
<?php
/*
TEMPLATE NAME: Downloads
*/
?>
转到管理区域内的页面,如果您还没有创建名为downloads的页面,请将新模板分配到此页面,
在新模板页面代码中
放置此段代码,是否要显示下载链接
<?php
if(isset($_POST['durl'])){
$durl = trim($_POST['durl']);
?>
<div id="download_box">
<a href="<?php echo $durl;?>">click here to download</a>
</div>
<?php } ?>
希望这会有所帮助。
玛蒂