Jquery Wordpress中的AJAX导航-Permalinks的问题
这就是我现在的处境: 我编写了一个博客主题,它类似于一张桌子,上面有很多东西,用户可以拖动,移动元素等等。博客的主要部分放在一本书中,你可以使用页面标记和翻页来浏览这些类别 为了给用户留下他/她实际上在使用“书”的印象,我首先使用了复杂的结构(主要涉及页面标记的位置):Jquery Wordpress中的AJAX导航-Permalinks的问题,jquery,ajax,wordpress,navigation,permalinks,Jquery,Ajax,Wordpress,Navigation,Permalinks,这就是我现在的处境: 我编写了一个博客主题,它类似于一张桌子,上面有很多东西,用户可以拖动,移动元素等等。博客的主要部分放在一本书中,你可以使用页面标记和翻页来浏览这些类别 为了给用户留下他/她实际上在使用“书”的印象,我首先使用了复杂的结构(主要涉及页面标记的位置): 每个类别都使用自己的模板(category-4.php、category-5.php等) single.php导致类别敏感模板(总共6个类别) 当我完成时,我发现有太多的流量是由图形元素造成的,因为它们每次点击都被重新加载,页面
劳拉欢迎来到SO。我不确定我是否理解您到底想做什么,但对于仅在WP中请求内容的AJAX,这里有一个常见的难题: 你想要的链接,当点击加载一个页面像往常一样。但是您也希望使用相同的链接通过AJAX加载相同的页面,这样就不希望同时加载布局 假设这是问题的核心,我通常会这样处理:
// functions.php
function is_ajax_request() {
return (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) &&
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest');
}
// e.g. in index.php or any other template file:
<?php if (!is_ajax_request()) { get_header(); } ?>
// ... Rest of your template ...
<?php if (!is_ajax_request()) { get_footer(); } ?>
//functions.php
函数是\u ajax\u request(){
返回(!empty($_服务器['HTTP_X_REQUESTED_WITH'])和
strtolower($_服务器['HTTP_X_REQUESTED_WITH'])='xmlhttprequest');
}
//例如,在index.php或任何其他模板文件中:
// ... 模板的其余部分。。。
这样,如果通过AJAX请求模板文件,则只加载内容,否则页面将照常加载
如果这对你有帮助,请告诉我,或者进一步解释一下你的目标。
我注意到这里的人对太长的问题都很害羞。所以-越短越好;) 嘿,波拉布劳,谢谢你的回答。因此,如果我得到了正确的代码,我将在我的模板中放入两个代码:一个用于案例1(AJAX:),另一个用于案例2(普通链接:很抱歉,它太长了……但不幸的是,我无法将问题缩短,所以我尝试通过结构化来弥补;)你知道那些试图获取帖子ID的插件有什么问题吗?只有当你请求页面时,它才会呈现标题(包含你所有的CSS/JS等),而不是使用AJAX,这通常意味着当你使用AJAX时,你会得到普通的内容,这通常也很好,因为你已经拥有了所有其他内容(导航、样式、标题等)。因此,不要在模板中使用
get_header()
,只需使用if(!is_ajax_request()){get_header();}
。无需其他
必要。嘿,Polarblou,我实现了代码,它工作起来很有魅力。我首先必须清理一下代码(尽管它仍然很凌乱)导致某些特定的部分必须重新加载,仍然在index.php的正文中。然而,我仍然在与另一个问题作斗争:插件的问题。如果现在你输入一篇单独的文章,sexybookmark栏会像一个符咒一样工作。它不会与AJAX加载一起工作。类似Smoothgallery的东西也是如此。对此有什么建议吗?谢谢再次为你的帮助。现在页面开始呈现。你能在这个问题上显示一些代码吗?我没有任何经验,这些插件,所以我需要看看你是如何实现它。-如果你觉得这个问题已经解决,但产生了一个新的,你可能想考虑关闭这一点,通过标记它解决和OP。用更多的细节来描述一个新的。