您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
26. 搜索结果页以及首页数据调用和展示
发布时间:2023-03-14 23:06:38编辑:雪饮阅读()
日期归档页
前番了解到日期归档页本身数据时候通过get_the_date获取的,但是对于如下三种情况
http://localhost/wpcourse/2023/03/07/
http://localhost/wpcourse/2023/03/
http://localhost/wpcourse/2023/
也就是说按年-月-日、年-月、年不同维度时候输出的数据都是年-月-日,即便手动格式化也要写代码去判断。
这种情况下仅对年-月-日的维度来说比较准确。这里发现如果是在年或年-月维度,则如果没有格式化或者格式化为年-月-日的格式时候,这里看到的时间就你的实际实际的年-月-日时间,不是文章发布的年-月-日时间(这样说或许不对,反正你可以观察下时间不太对劲(当然这种业务展现逻辑也是有问题的。。。))
但如果使用the_archive_title或get_the_archive_title函数就可以在年时仅展示年份,在年-月时仅展示年-月,在年-月-日是才展示年-月-日
不过也有一个缺点是新增了前导输出(根据情况维度会对应出现“年份”,“月份”,“日期”前导)
不过这种或许还有其他办法解决。
那么完善后的date.php如
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>日期本身的数据 get_the_date:<?php echo get_the_date();?></p>
<p>日期本身的数据 get_the_date(格式化):<?php echo get_the_date("Y-m-d");?></p>
<p>日期本身的数据 the_archive_title:<?php the_archive_title();?></p>
<p>日期本身的数据 get_the_archive_title:<?php echo get_the_archive_title();?></p>
</div>
</div>
</div>
<?php if(have_posts()):?>
<?php while(have_posts()):the_post();?>
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>文章标题:<?php the_title();?></p>
</div>
</div>
</div>
<?php endwhile; ?>
<?php else: ?>
<p>对不起,暂时没有任何内容!</p>
<?php endif;?>
搜索结果归档页
搜索结果归档页一般的于当前使用主题目录中建立search.php如
<?php
/*
get_search_query方法实际上就是为了获取出现在地址栏中s参数后面的关键词
*/
?>
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>搜索结果归档页本身的数据 get_search_query.:<?php echo get_search_query();?></p>
</div>
</div>
</div>
<?php if(have_posts()):?>
<?php while(have_posts()):the_post();?>
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>文章标题:<?php the_title();?></p>
</div>
</div>
</div>
<?php endwhile; ?>
<?php else: ?>
<p>对不起,暂时没有任何内容!</p>
<?php endif;?>
首页-最新文章归档页
后台如果配置首页为最新文章归档页,则一般的首页归档页是主题目录中index.php
那么这个首页基本就没有什么首页本身数据了,就直接是首页文章列表吧属于是。
则index.php就比较简单了
<?php if(have_posts()):?>
<?php while(have_posts()):the_post();?>
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>文章标题:<?php the_title();?></p>
</div>
</div>
</div>
<?php endwhile; ?>
<?php else: ?>
<p>对不起,暂时没有任何内容!</p>
<?php endif;?>
首页-静态页面-主页
首页-静态页面-主页归档页一般的是主题目录中page.php
由于该主页一般挂载到指定页面上,所以该归档页有自身数据就是所挂的那个页面的数据。
这样的话,主要数据就是两个,一个是wp_query,另外一个就是文章列表,当然属于是当前这个自定义页面也就是主要所挂的这个自定义页面的详情页属于是。
那么这个page.php也就较为简单,主要是理解下这个页面的主体数据除了wp_query以外就是该页面详情了。
<?php
print_r($wp_query);
?>
<?php if(have_posts()):?>
<?php while(have_posts()):the_post();?>
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>文章标题:<?php the_title();?></p>
</div>
</div>
</div>
<?php endwhile; ?>
<?php else: ?>
<p>对不起,暂时没有任何内容!</p>
<?php endif;?>
首页-静态页面-文章页
首页-静态页面-文章页的归档页其实也就是博客文章索引页归档
那么这个也是有页面自身数据和文章列表的。
一般的是在主题目录的home.php
自身数据主要是wp_query以及查询对象(get_queried_object方法获取的数据)
那么home.php如
<?php print_r($wp_query);?>
<hr/>
<?php print_r(get_queried_object());?>
<hr/>
<?php if(have_posts()):?>
<?php while(have_posts()):the_post();?>
<div style="border:1px solid pink;">
<div style="display:flex;justify-content: center;">
<div style="border:1px solid red; width:90%;">
<p>文章标题:<?php the_title();?></p>
</div>
</div>
</div>
<?php endwhile; ?>
<?php else: ?>
<p>对不起,暂时没有任何内容!</p>
<?php endif;?>
关键字词:归档