the*_*ing 0 php url wordpress wordpress-theming custom-wordpress-pages
在我的 WordPress 中v5.6
,我在作者页面中使用以下代码来显示自定义歌曲中的所有当前作者post_type
的帖子。
<?php
$author_page_link = esc_url(get_author_posts_url(false, ID->user_nicename));
?>
<a href="' . $author_page_link . '?post_type=song">All Songs</a>
Run Code Online (Sandbox Code Playgroud)
上面的链接将过滤当前作者的所有歌曲,其 URL 如下:
http://www.music.com/author/current_author/?post_type=song
我想在过滤器页面中显示作者的“歌曲”和“诗歌”自定义帖子。
我尝试过下面的链接,但没有成功:
<a href="' . $author_page_link . '?post_type=song+poem">All</a>
<a href="' . $author_page_link . '?post_type=song&post_type=poem">All</a>
Run Code Online (Sandbox Code Playgroud)
如何获得一个链接来过滤单个作者的多个自定义帖子中的帖子?
更新1
我使用的是archive-song.php
模板,这就是为什么song
页面中只显示自定义帖子。
当将以下 URL 与 一起使用时?post_type=song+poem
,archive.php
仅在模板层次结构中,URL 重定向到author.php
。
http://www.music.com/author/current_author/?post_type=song+poem
如果我将以下 URL 与 一起使用?post_type=song&post_type=poem
,仅在模板层次结构中,则仅过滤archive.php
最后的结果(可以是诗歌或歌曲,以最后一个查询为准)。post_type
http://www.music.com/author/current_author/?post_type=song&post_type=poem
更新2
这是我的作者页面(https://pastebin.com/kCrYebcD)。此页面仅显示所有帖子类型的当前作者的最新 10 篇帖子。
这是我的存档页面(https://pastebin.com/twkWn5Bc)。在这里,我想显示作者所有帖子类型的所有帖子。
要通过 URL 参数包含多个帖子类型,您需要将其声明为数组。
您的网址应如下所示:
echo '<a href="' . $author_page_link . '?post_type[]=song&post_type[]=poem">All</a>';
Run Code Online (Sandbox Code Playgroud)
这应该对你有用。