2012-12-15 140 views
0

我为客户端编写了一个网站,他们要求这样做是因为他们在一个父代下有很多侧边栏页面,当点击页面链接时,它会加载每次没有页面重新加载的同一区域。他们还要求在重新加载URL时进行更改,并且您可以通过访问该特定网址访问每个页面。不幸的是,我不知道该怎么做。我发现了很多教程和代码片段,但它们并没有提供确切的功能。在div中加载Wordpress页面时无需重新加载页面,同时更改url

例如,如果你去这里:http://lookseewatch.com/independentinsurance/commercial-insurance/

你会看到不同的类型,它们的价格商业保险的长边框。当您点击“Automobile”或任何链接时,该页面应该加载到边栏右侧的div区域。该网址应该改变,以反映这种变化http://lookseewatch.com/independentinsurance/commercial-insurance/automobile/。所有这些页面在Wordpress中都是独立和动态的。

任何人都可以提供一些帮助吗?这是目前如何正在生成的侧边栏:

wp_list_pages('title_li=&child_of='.$post->ID.''); 

让我知道如果你需要从我这里任何其他代码或对功能的任何问题。

谢谢!

回答

0

这有点复杂。捕捉用户事件的方法很多,停止默认行为并在其上运行自定义代码。例如,您可以听锚点击并返回0以不加载它们的链接。

但是,如果您在浏览器地址栏中更改URL,只要我知道,JS无法控制它,因为它位于网页域之外,并且从外部网页控制浏览器组件会打开很多安全缺陷。

这看起来像他们想避免横幅加载数少点击:P如果性能问题,首先你可以使用缓存插件,这将存储在HD所有数据库查询,并在未来的页面加载使用这些文件而不是进行新的查询。

您还可以在PHP变量中构建完整的侧边栏,将其缓存为HD并从此读取,而不是每次构建整个代码。这将像添加静态HTML片段。

0

这可以通过与AJAX结合的pushstate技术来完成。有一个很好的jQuery插件叫做PJAX,它实现了这个功能。 http://pjax.heroku.com/

我刚刚发布了一个名为WP-PJAX的插件,它使整个WordPress站点PJAX驱动。我不确定这是否能解决您的问题,但它可能适合您。 https://github.com/pelmered/wp-pjax

+0

我想做类似的事情,但只能使用个别的WordPress插件。我在你的插件论坛留下了一条评论。希望能从你那听到答复! – Erlend

相关问题