在这里提问之前,我已经搜索了一段时间,找到了一个关于使用快捷码和javascript调用创建wordpress插件的教程。
但我无法让它在我这边起作用。本教程为here
基本上,它应该添加一个显示预定义字符串的电传终端。我能够跟踪到绘制终端的部分。但我看不到代码中的什么地方,我们调用javascript函数来制作“动画”。有一个zip可以下载所有源代码,可以找到teletype javasources(未最小化)here
所以,我的问题是,我不知道如何从php文件调用javascript/jquery函数。
有没有人可以尝试一下本教程,并就如何完成缺失的部分向我提供建议?
我认为我迷失的部分是最后一个:使数据可用于JavaScript
我当然联系过作者,但我仍然没有答案,能够完成这项工作非常令人沮丧。
我想php部分一定有一些东西:
<input <?php echo implode( \' \', $atts ); ?> />
<?php if ( array_key_exists( \'description\', $options ) ) : ?>
<?php esc_html_e( $options[\'description\'] ); ?>
<?php endif; ?>
但我找不到什么。。。
谢谢
西尔万
最合适的回答,由SO网友:Nicolai Grossherr 整理而成
使用wp_enqueue_script()
具有$in_footer
参数设置为true
, 加载带有短代码的脚本时。要将数据从代码的PHP部分传递到JS部分,请使用wp_localize_script()
.
wp_enqueue_script( \'script_name\', \'/script-location/script.js\', array(), \'1.0.0\', true );
$data_array = array(
\'key_1\' => \'val_1\',
\'key_2\' => \'val_2\'
);
wp_localize_script( \'script_name\', \'data_object_name\', $data_array );
现在,您可以通过寻址数据对象来访问脚本中的数据,例如:
console.log( data_object_name.key_1 );