Questions tagged «javascript»

一种客户端脚本语言,可用于制作交互式网站。有关在WordPress上下文之外使用JavaScript的问题不在主题之列,但可能会在Stack Overflow上提出。

4
将Javascript添加到WordPress菜单
有没有办法将javascript放在WordPress菜单项的URL部分中?我的网站上有实时聊天功能,应该将此代码放到网站上,以建立一个打开实时聊天的链接(如此处建议)。 <!-- BEGIN OLARK CHAT LINK --> <a href="javascript:void(0);" onclick="olark('api.box.expand')"> Click here to chat! </a> <!-- END OLARK CHAT LINK --> 客户端需要实用工具导航栏中的链接,该工具栏是使用WordPress仪表板中的WordPress菜单创建的。但是,当我将其复制并粘贴javascript:void(0);" onclick="olark('api.box.expand')到WordPress仪表板的URL框中时,它只是消失了,链接仍然无效。 我读到的东西说,也许我可以在有问题的链接上放一个自定义类,然后编写一个Javascript函数,当该类的链接被单击时将触发该函数。我尝试了一下,但无法正常工作。我不太了解Javascript,因此有可能我写的完全错误。 有谁知道如何做到这一点?我想不使用插件就这样做。

3
在Gutenberg上触发Javascript(块编辑器)保存
所以我有一个metabox,我想在保存帖子时触发一些Javascript(在此用例中刷新页面)。 在经典编辑器中,这可以通过挂钩到save_post(具有较高优先级)的简单重定向来完成 但是由于Gutenberg现在将现有元框的保存过程转换为单个AJAX调用,因此它需要使用javascript,所以我该怎么做: 监听所有保存过程都已完成的事件,然后触发javascript吗?如果是这样,此事件称为什么?是否在任何地方都提到了这些事件?要么 触发metabox保存AJAX流程内部的javascript,然后可以在继续之前检查父页面保存流程的状态?

2
使用插件设置中的数据修改JS文件
我有一个插件,其中有一个javascript文件,该文件需要一些用户特定的设置。从插件的设置参数将这些设置导入javascript的最佳方法是什么? 换句话说,如果我将这些设置作为设置页面的一部分,用户可以在其中输入它们,那么如何最好地将这些值转换为javascript?我是否需要使用一些东西来附加一些脚本标签,并在每次页面加载时通过PHP进行设置?设置cookie是更好的方法吗?


4
是否有JavaScript API?如何在JS中访问公共和私有数据?
根据这篇文章,没有针对Wordpress的内置JavaScript API。因此,想要建立在AJAX上的开发人员似乎提出了自己的解决方案,这对我来说似乎不合适。 除了使用内置API获取帖子或任何数据外,我真正想念的是一小套JavaScript函数,用于处理后端和前端接口。现在,关于这个问题有什么计划吗? 例如,我很想知道 左侧主菜单折叠, 什么用户登录 他是哪一组 甚至客户端数据(例如浏览器) 等等。

1
Wordpress Visual Editor剥离HTML更改
当我使用WordPress HTML编辑器添加icomoon图标时,如下所示: <span class="icon-shield"></span> 然后切换到视觉编辑器,然后再回到HTML编辑器,图标消失。我正在尝试包含此Javascript来解决此问题。我查看了wp_enqueue_scripts并将其放在functions.php中,但仍然无法解决问题。 function oakwood_tinymcefix() { wp_enqueue_script( 'tiny_mce' ); echo '<script type="text/javascript">' , 'tinymce.init({ ... extended_valid_elements : "img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name]" });' , '</script>'; } add_action( 'admin_enqueue_scripts', 'oakwood_tinymcefix' ); 我怎样才能解决这个问题?

1
注册并排队有条件的(浏览器特定的)javascript文件?
该WP.SE社区一直建议使用wp_register_script,并wp_enqueue_script在主题/模板添加脚本(同样地,wp_register_style并wp_enqueue_style为样式表)。 这就是我注册和排队脚本的方式... 首先,我在functions.php中添加类似的内容 add_action('init','wpse54189_register_script'); function wpse54189_register_script(){ //Register scripts wp_enqueue_script( 'jquery' ); wp_register_script( 'aahan_bootstrap_transition', get_template_directory_uri().'/js/bootstrap-transition.js'); wp_register_script( 'aahan_bootstrap_carousel', get_template_directory_uri().'/js/bootstrap-carousel.js', array('aahan_bootstrap_transition')); wp_register_script( 'wpse54189_ajax_comment', get_template_directory_uri().'/js/no-reload-comments.js'); } 然后像这样在模板文件(例如header.php)中调用它 <?php wp_enqueue_script( 'aahan_bootstrap_carousel' ); ?> <?php wp_enqueue_script( 'wpse54189_ajax_comment' ); ?> 现在,至此,我该如何注册和入列特定浏览器可以识别的“条件JavaScript文件”?例如: <!--[if lt IE 9]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script> <![endif]--> 如何正确注册和入队? PS:我使用Reddle主题,该主题由Automattic的主题牧马人开发。主题的header.php直接使用前面提到的代码-即未排队。那么,这是否意味着这是唯一的方法?

2
使用wp_enqueue_script有什么好处?
在小型自助式网站上使用wp_enqueue_script有什么真正的好处?例如,Modernizr,为什么要通过函数将其排队,而不是直接在文档头内部调用它? 我可以在大型网站上看到好处,在大型网站上,您可能会在目录中四处移动,或者有多个人在文件中四处乱窜,或者在公开可用的主题中包含许多未知数,但是在像个人博客这样的小型网站上却有什么好处呢?还是很少-更改并且只有一个用户?在这种情况下,看起来好像多余的代码行。

1
wp_enqueue_scripts,wp_register_scripts,wp_print_scripts:我很困惑
我一直在阅读有关该主题的文章,但是阅读的次数越多,我越会感到困惑。 有人可以在短向我解释什么是之间的确切区别wp_enqueue_scripts,wp_register_scripts和wp_print_scripts? 例如,我在functions.php中包含以下代码-并且可以正常工作,但是我不明白为什么不能将其wp_print_scripts用于样式表,而如果将这些代码wp_enqueue_scripts用于javascript文件,该代码仍然可以工作: add_action('wp_print_scripts', 'add_my_js'); function add_my_js(){ if(!is_admin()){ wp_enqueue_script('default', get_bloginfo('stylesheet_directory').'/js/default.js', array('jquery')); } } add_action('wp_enqueue_scripts', 'add_my_stylesheet'); function add_my_stylesheet() { wp_register_style('default', get_bloginfo( 'stylesheet_url')); wp_enqueue_style( 'default'); }


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.