【发布时间】:2018-02-10 19:44:01
【问题描述】:
我有一个名为 Players 的自定义帖子类型,它生成 8 个不同的播放器,每个播放器每个播放器有 3 个视频。这些视频中的每一个都有一个标题。假设“玩家 A - 跑步” “玩家 A - 游泳”
如何通过关键字进行搜索,这样每当我输入播放器 A 时,它只会显示播放器 A 的视频。现在,无论何时输入播放器 A,它都会显示搜索结果中的所有视频
<?php
$s=($_GET["s"]); // Insert the searched keyword into a variable
// check if the repeater field has rows of data
if( have_rows('videos') ):
// loop through the rows of data
while ( have_rows('videos') ) : the_row();
$video_1_title= get_sub_field('video_1_title');
$video_2_title= get_sub_field('video_2_title');
$video_3_title= get_sub_field('video_3_title');
$video_1= get_sub_field('video_1');
$video_2= get_sub_field('video_2');
$video_3= get_sub_field('video_3');
?>
<?php
endwhile;
endif;
?>
<?php if ( have_posts() ) :
while ( have_rows('videos') ) : the_row(); ?>
<div id="post-<?php the_ID(); ?>" class="videoPosts">
<?php
if(stripos($video_1_title, $_GET["s"])!== false) ||
(stripos($video_2_title, $_GET["s"])!== false) ||
(stripos($video_3_title, $_GET["s"])!== false)) :
?>
<div id="one"><?php echo $video_1?></div>
<div id="two"><?php echo $video_2?></div>
<div id="three"><?php echo $video_3?></div>
<?php endif; ?>
</div>
<?php
endwhile;
endif;
?>
【问题讨论】:
-
欢迎来到 Stack Overflow。你能确认这是在哪个页面上吗?例如,它是档案、单曲等吗?我只是想弄清楚你的
$post是什么 -
这是一个 search.php 页面。我正在构建一个具有特定设计的自定义 search.php 页面,该页面将在单独的部分中显示所有视频、图像和描述。我只是无法显示包含该特定值的单个帖子。例如,当您键入“John”时,它应该在单独的部分中显示有关 john 的所有图像、视频和描述。现在它显示所有视频,但将“约翰的”视频放在搜索结果页面的顶部。
-
它们只是普通帖子,即您没有使用自定义帖子类型?我很确定我知道这个问题,但我只是想在提出解决方案之前获取所有信息!
-
我正在使用 ACF Pro,并且我创建了一个名为“Players”的帖子类型,其中包含一个名为 videos 的转发器字段,其中包含 3 个名为 video_1_title、video_2_title、video_3_title 的子字段。
-
是的,但是这些字段是添加到常规 Wordpress 帖子、页面还是自定义帖子类型中?
标签: php wordpress advanced-custom-fields