Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.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 在单个WordPress帖子页面上显示基于自定义元字段的相关帖子?_Php_Wordpress - Fatal编程技术网

Php 在单个WordPress帖子页面上显示基于自定义元字段的相关帖子?

Php 在单个WordPress帖子页面上显示基于自定义元字段的相关帖子?,php,wordpress,Php,Wordpress,我目前正在为我的一个DJ朋友开发一个网站,他将他的混音上传到Soundcloud进行分享,他还将使用他的网站发布他的混音(通过Soundcloud)和发布活动 为了处理事件方面的事情,而不是使用自定义的帖子类型,我只需将自己的元字段添加到标准的帖子屏幕上,设置帖子以显示事件信息(如果设置了),如果没有设置,则正常显示帖子,相关部分: global $wp_query; $postid = $wp_query->post->ID; $event_venue = get_post_met

我目前正在为我的一个DJ朋友开发一个网站,他将他的混音上传到Soundcloud进行分享,他还将使用他的网站发布他的混音(通过Soundcloud)和发布活动

为了处理事件方面的事情,而不是使用自定义的帖子类型,我只需将自己的元字段添加到标准的帖子屏幕上,设置帖子以显示事件信息(如果设置了),如果没有设置,则正常显示帖子,相关部分:

global $wp_query;
$postid = $wp_query->post->ID;
$event_venue = get_post_meta($postid, 'event_venue', true);
global $wp_query;
$postid = $wp_query->post->ID;
$mix_venue = get_post_meta($postid, 'mix_venue', true);
除此之外,为了处理他的混音,我还设置了一个自定义的帖子类型(通常是为了让他更容易区分,因为他在混音器和转盘之外并不是非常精通技术)和自定义元字段,允许他在混音中添加混音的录制位置(场地方面)和他的soundcloud URL(用于在帖子中自动嵌入混音,而不是使用插件)。我创建了一个自定义循环和
single mixes.php
页面来处理数据的显示,这基本上是原始循环(重命名为
loop mixes.php
所以我知道是什么)但包括一个文件
mix_data.php
,相关部分:

global $wp_query;
$postid = $wp_query->post->ID;
$event_venue = get_post_meta($postid, 'event_venue', true);
global $wp_query;
$postid = $wp_query->post->ID;
$mix_venue = get_post_meta($postid, 'mix_venue', true);
现在,我的问题。我想在单个帖子页面中,将
$mix\u vention
中保存的数据与设置了
$event\u vention
的其他帖子进行比较,并显示匹配的帖子(即,如果用户正在查看一个混音,那么他们可以看到任何即将发生的事件(实际上,任何过去的事件)在录制地点举行)


但是,我正在自学WordPress,我真的不完全确定从哪里开始。我知道你解决了这个问题,但我会建议一种可重复使用的方法

在主题的
functions.php
中放置此函数(对于
get_posts()
):

然后,在任何模板中,只需将其称为:
print\u event\u vironment($the\u mix\u vironment);


有用信息:。

Edit:test mix帖子在这里:我想在soundcloud播放器下面显示相关帖子:)你可能会注意到,在mix_data.php中,我在coundcloud播放器的时钟图标旁边回显了$mix_url,这是我在测试正确的输出,我只是还没有编辑完:)解决了:)对于其他使用此查询的人,我在loop-mixes.php中使用了一个新查询来显示它,如下所示;注意,我现在只把标题放进去了,因为我刚刚解决了它,现在要把它很好地格式化:)谢谢!这对于后面的一些想法很方便:)另一个查询,在我的主循环(博客页面)中,正如我所说,我包含了一个文件,用于检查事件细节的元字段是否已设置,并显示细节,但是,在我创建的新查询中,当我包含该文件(我原始帖子中的第一个粘贴箱)时,没有显示任何内容,尽管已经设置了详细信息(否则查询将找不到它们!我遗漏了什么吗?:/您是否在查询中执行查询?如果是,请尝试
函数
方法。使用此方法检查变量:
echo';
。如果您在问题中执行问题,请打开一个;)哦,是的,必须到外部站点查看代码是不好的。尽量使问题独立。更简洁的是,我发现很难理解你给出的所有解释,上下文很好,但是,在我看来,它太多了……我很傻,在获取相关帖子的元值时,我使用$postid而不是get_the_id()。愚蠢的我:)我不好,因为我没有开始一个新问题!索兹!没问题,很高兴你解决了!