我使用jquery进行wordpress高级搜索。 当用户点击搜索按钮时,通过使用jquery我获取所有搜索参数并使用$ .post()函数发送到admin-ajax.php ... 我在functions.php文件中创建一个函数并接收所有搜索值并编写wp_query来获取wp帖子。
$args = array(
'category_name' => '3d');$query = new WP_Query($args);
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
echo '<a href="'. the_permalink() .'">test</a>';
}
wp_reset_postdata();
}
在上面的代码中,当我打印一个标签时,输出是这样的:
http://localhost/site/%d8%af%d8%a7%d9%86%d9%84%d9%88%d8%af-%d9%81%db%8c%d9%84%d9%85-zootopia/test0
问题1:测试是一个链接,但没有任何href!链接的href像链一样打印在链接之外! 问题2:“0”字符自动打印后,所有输出值甚至空回显在php中都会打印“0”字符! 请帮助我,谢谢...
答案 0 :(得分:0)
您需要用此替换代码。因为您在 echo 内部时使用的是the_permalink()
而不是get_the_permalink()
。
https://developer.wordpress.org/reference/functions/get_the_permalink/ https://developer.wordpress.org/reference/functions/the_permalink/
$args = array('category_name' => '3d');
$query = new WP_Query($args);
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
echo '<a href="'. get_the_permalink() .'">test</a>';
}
wp_reset_postdata();
}