繁体   English   中英

固定链接无法在Wordpress类别下拉Ajax中按预期方式工作

[英]Permalink not working as expected in wordpress category dropdown ajax

这是我的PHP代码:

define('WP_USE_THEMES', false);
require_once('../../../wp-load.php');
$post_type = $_GET['posts_type'];
$name = $_GET['name'];
$pageNum = $_GET['num_page'];
switch($post_type){
    case "category":
        getCategoryPosts($pageNum, $name);
        break;
}

function getCategoryPosts($p, $n){
    query_posts('posts_per_page=5&paged='.$p.'&cat='.$n);
    if(have_posts()){
        echo "<ul class='category-dropdown-posts'>";
            while(have_posts()){
                the_post();
                $permalink = get_the_permalink();
                echo "<li><a href=".$permalink.">";
                echo get_the_post_thumbnail($post->ID, array(172, 132), array('class'=>'dropdown-pic'));
                echo "<p class='dropdown-title'>".get_the_title();
                echo "</p></a></li>";
            }
        echo "</ul>";
    }
    wp_reset_query();
}

现在,除了永久链接之外,其他所有东西都工作正常。 如您所见,a标签应该同时包裹在img和p标签周围,但是我得到的是这样的东西:

<li>
<a href="..."></a>
<img ..../>
<p>...</p>
</li>

知道有什么问题吗?

编辑:ajax响应的console.log似乎是正确的,但显示混乱。 我在虚拟机的Ubuntu中使用Firefox。 编辑2:这是ajax响应:

<ul class='category-dropdown-posts'><li><a style='display:block' href=http://localhost/wordpress/post-to-post/><img width="172" height="114" src="http://localhost/wordpress/wp-content/uploads/2014/12/post-to-post-300x199.jpg" class="dropdown-pic wp-post-image" alt="Post To Post" /><span class='dropdown-title'>Post to Post</span></a></li></ul>

我已经解决了问题。 如您所见,a中的href未被引用,这导致了该行为。 感谢您的帮助。

锚元素不应包含段落元素。 从技术上讲,HTML5允许这样做,但是某些浏览器可能无法正确处理它。 我的猜测是您正在浏览器的开发工具中查看源代码,当遇到段落时它会自动关闭锚点。 在这种情况下,查看实际源应该显示按预期格式的HTML,即使它呈现的好像锚点早早关闭一样。 尝试将锚点放置在段落中,或将锚点的显示属性设置为block。 更多信息:

可以在<a>标签中使用<p>标签吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM