Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 创建一个单独的页面以从父帖子传递自定义字段_Php_Wordpress_Custom Fields - Fatal编程技术网

Php 创建一个单独的页面以从父帖子传递自定义字段

Php 创建一个单独的页面以从父帖子传递自定义字段,php,wordpress,custom-fields,Php,Wordpress,Custom Fields,我有一个内容共享网站,在那里我可以共享Windows7的主题和小工具 我使用自定义字段上传文件,并将其值存储在名为durl的自定义字段中 现在我想创建一个名为“下载”的单独页面,当用户访问posts页面并单击下载按钮时,必须将其转发到一个新页面,在该页面上必须开始下载 新页面“下载”必须从帖子中获取自定义字段值“$durl” 可能吗?我已经在codeigniter中完成了,但不知道如何使用wordpress实现这一点 请指导我 问候,, RIA只需创建一个名为下载的新页面模板。 复制并粘贴主题文

我有一个内容共享网站,在那里我可以共享Windows7的主题和小工具

我使用自定义字段上传文件,并将其值存储在名为durl的自定义字段中

现在我想创建一个名为“下载”的单独页面,当用户访问posts页面并单击下载按钮时,必须将其转发到一个新页面,在该页面上必须开始下载

新页面“下载”必须从帖子中获取自定义字段值“$durl”

可能吗?我已经在codeigniter中完成了,但不知道如何使用wordpress实现这一点

请指导我

问候,,
RIA只需创建一个名为下载的新页面模板。 复制并粘贴主题文件中page.php中的所有代码, 就在上面写着:

<?php get_header();?>

将此粘贴到代码部分,以创建新模板文件

<?php
/*
  TEMPLATE NAME: 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 } ?>

希望这能有所帮助


马蒂

这是另一种方法

通过复制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>

它应该打印下载页面中的自定义字段值(这是与您的帖子相关的下载链接)


这段代码的思想是在$\u GET中传递post ID,并使用post ID通过其自定义字段获取下载链接。

您是说常规的post方法吗?比如$duri=$_POST[“duri”];对目前,我可以使用此代码在post页面中获取下载链接,但我想在名为“下载”的单独页面中获取durl。。如何在其他页面中获取自定义字段值..谢谢您的支持,先生。。上面的代码由用户操作。。当然,你的想法也差不多。@Ahmed在我之前就得到了你的答案;)有可能定制永久链接吗,先生?我们可以为页面设置唯一的标题吗,比如“下载posttitle”,目前我在所有下载URL中只看到相同的页面标题。。我们可以让它适合带有前缀Download的文章标题吗?您可以在下载页面中有一个自定义标题,并在属性中尝试以下操作:Download:哪个应该打印Download:您的文章标题…谢谢先生。。但是我可以尝试使用if条件在present header.php中添加代码吗?是否可以从permalinks中隐藏“?fileID=”并保留just/download/ID?有些人建议使用.htaccess,但当我使用.htaccess时,我在帖子的fileID中没有得到任何值。。先生,有什么办法解决这个问题吗