是否可以阻止所选插件在某些模板页面上加载?


8

我有一个带有表单的模板页面,该表单仅在我的网站中使用过一次。表单使用通过jquery validate插件(如此出色的插件)进行表单验证。加载cart66插件后,表单验证将停止工作。

花费大量时间寻找冲突,我认为只为该模板页面关闭插件是最容易的,因为该页面上不需要cart66。

是否可以停止在单个模板页面上加载插件?我正在使用WordPress 3.2.1

Answers:


3

使用插件管理器。 http://wordpress.org/extend/plugins/plugin-organizer/。它无法按模板禁用插件,但可以按帖子,页面,自定义post_type或任意URL禁用插件。


它是一个很好的插件,但是它不会取代代码级编辑,该插件很好,但效率不如手动编辑
chandan 2015年

手动编码方式的问题是,您必须做很多侦探工作才能弄清楚资源名称等。如果您错过了什么怎么办?插件会更新,资源被更改还是添加?您必须不断仔细检查您的手动代码吗?同时,使用插件管理器,一切都是自动的。
MarsAndBack '18

2

听起来好像cart66中的javascript和您的表单插件存在冲突。您可以使用入队脚本功能“关闭”每页/每篇文章等的javascript。

希望您的两个插件都写得很好,并在此方法中包含其javascript。

http://codex.wordpress.org/Function_Reference/wp_enqueue_script

如果是这样,它们将具有一个句柄,您可以使用该句柄注销(或出队)脚本。

http://codex.wordpress.org/Function_Reference/wp_deregister_script

您需要编写一个条件脚本

<?php if(!is_page('FORM-PAGE-SLUG')){wp_dequeue('form-javascript-handle')}?>

那应该是一个很好的起点。


感谢您已经考虑过搜索Cart66包含的所有脚本并使用队列来停止它们。如果有一种方法可以将所有插件一起打开,那就太好了。
lomokev 2011年

这可能是不可能的,尤其是使用电子商务插件时-在整个站点访问中,功能可能需要携带会话数据或其他变量,而这些功能可能会因丢失功能而丢失。如果有的话,最好的解决方案是找出与表单javascript有冲突的地方。尝试使用表单时,您在Firebug中遇到什么错误?
阿里斯·布莱文斯

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.