首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WooThemes PremiumNews主题jQuery与WordPress 3.2冲突

WooThemes PremiumNews主题jQuery与WordPress 3.2冲突
EN

WordPress Development用户
提问于 2011-07-05 08:40:23
回答 5查看 2.1K关注 0票数 0

今天早上,我更新了我的wp,在那之后,我的站点的一些jquery就不工作了。

我使用的主题是高级报纸主题。

升级后,类别下拉菜单(超级鱼类菜单)停止工作。我用的是光照盒插件的图像,这是停止工作的。

我关闭了所有插件并检查了主题,但是超级鱼仍然不起作用,我用最新的更新了主题框架,但仍然没有效果。

有人能帮我吗?

我的网站网址是:http://webstutorial.com/,我使用的主题是:http://demo.woothemes.com/?name=premiumnews

EN

回答 5

WordPress Development用户

回答已采纳

发布于 2011-07-06 00:40:44

问题在于主题。在主题演示中,超级鱼类下拉列表不起作用,由于某种原因,主题将从主题目录加载2次版本1.3.1,从WordPress包含目录加载版本1.6.1。

您的站点实际上加载了3次jquery。

我会联系主题支持。

票数 2
EN

WordPress Development用户

发布于 2011-07-06 15:36:38

进入header.php文件并颠倒以下行的顺序,使下拉列表在我的站点上工作,所以我想现在已经足够了。它仍然打破了我的特色内容画廊插件,但我会明白这一点后。

扭转这种情况:

代码语言:javascript
复制
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/includes/js/jquery-1.3.2.min.js"></script>

<?php wp_head(); ?>

所以wp_head代码是第一位的。

编辑

队列脚本的适当位置是在functions.php中,而不是直接在文档头中。

例如:

代码语言:javascript
复制
function my-theme_enqueue_scripts() {
    // only on the front end; don't mess with Admin scripts
    if ( ! is_admin() ) {
        // Only enqueue the core-bundled jQuery script
        wp_enqueue_script( 'jquery' );
    }
}
// Enqueue at proper hook
add_action( 'wp_enqueue_scripts', 'my-theme_enqueue_scripts' );

备注:

  1. 完全省略到jquery-1.3.2.min.js的硬编码链接。
  2. 您不希望将版本1.6.1 (与WordPress捆绑在一起)和版本1.3.2 (与主题捆绑在一起)都排队。只需使用核心捆绑版本。

如果主题正在添加任何其他脚本(例如,SuperFish),那么这些脚本也应该正确地排队。非核心捆绑脚本只需注册才能排队。要修改以前的功能,请执行以下操作:

代码语言:javascript
复制
function my-theme_enqueue_scripts() {
    // only on the front end; don't mess with Admin scripts
    if ( ! is_admin() ) {
        // Only enqueue the core-bundled jQuery script
        wp_enqueue_script( 'jquery' );
        // Register our superfish script, dependent upon jquery
        wp_register_script( 'superfish', get_template_directory_uri() . '/includes/js/superfish.js', 'jquery' );
        // Enqueue superfish script
        wp_enqueue_script( 'superfish' );
    }
}
// Enqueue at proper hook
add_action( 'wp_enqueue_scripts', 'my-theme_enqueue_scripts' );

这将迫使WordPress在SuperFish排队之后对jQuery进行排队。

重复文档头中的所有硬编码脚本链接。

票数 2
EN

WordPress Development用户

发布于 2011-07-06 00:27:30

WooThemes是一个商业主题开发商店;他们是唯一能够纠正主题的jQuery冲突的人。我建议联系他们的官方支持:

http://www.woothemes.com/support/

编辑

引用“任择议定书”在已接受的答复中的评论:

"...you是对的,他们是唯一真正能解决这个问题的人“。

由于WooThemes是商业主题,任何没有购买主题的人(如所有WPSE志愿者)都无法访问主题模板文件。因此,虽然我们可以看到主题的呈现输出,但实际上看不到导致jQuery冲突的底层代码。

我们可以猜到,但不能保证我们是对的。因此,我完全不同意关于WooThemes支持是唯一能够解决问题的“明显不真实”的说法。

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/22009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档