Javascript 如果多次访问,为什么jquery会从WordPress短代码中获取相同的ID?

Javascript 如果多次访问,为什么jquery会从WordPress短代码中获取相同的ID?,javascript,php,jquery,wordpress,shortcode,Javascript,Php,Jquery,Wordpress,Shortcode,我创建了一个快捷码,它生成一个带有滑动选项的jquery产品卡 我想把它包含在wordpress插件中,这样它就可以被wp短代码调用。我成功地做到了这一点,但我面临的问题是,当我在同一页上添加两次短代码时,它不会传递新ID。我在短代码本身中提供唯一的ID。请查看快速生成短代码的功能 function procard($atts) { $wm_atts = shortcode_atts(array( 'id' => 1, ), $atts); $wc

我创建了一个快捷码,它生成一个带有滑动选项的jquery产品卡

我想把它包含在wordpress插件中,这样它就可以被wp短代码调用。我成功地做到了这一点,但我面临的问题是,当我在同一页上添加两次短代码时,它不会传递新ID。我在短代码本身中提供唯一的ID。请查看快速生成短代码的功能

function procard($atts) {
$wm_atts = shortcode_atts(array(
    'id' => 1,        
        ), $atts);

$wce_uid = $atts['id'];

wp_enqueue_script('wce_reg_script' . $wce_uid, plugins_url('js/wce_script.js', __FILE__), array('jquery'), '1.0.0', true);
$data_array = array(
    'wce_id' => $wce_uid,        
);
wp_localize_script('wce_reg_script' . $wce_uid, 'data_object_name', $data_array);

$wc_output = '';
$wc_output .= '<div class="card">I removed all html for now</div>';
return $wc_output;
unset($data_array);
}

add_shortcode('procard', 'procard'); 
当短代码以ID 1和2出现两次时,警报将仅以ID 2显示两次。它不会带来ID 1。因为第一个短代码由于唯一ID而无法传递正确的数据


有什么想法吗?

粘贴我们这个元素
data\u object\u name.wce\u id
,这是页面上的某个id吗?如果你在php函数中看到wp\u localize\u脚本,它会将该值发送到jqueryy,你必须在插件中只调用一次
wp\u localize\u脚本
,并且只包含一次。。然后在页面上,当您发出警报ID时,我认为会很好。问题是jquery需要更新一些css类,如果短代码在同一页面上执行两次,jquery需要另一个具有唯一类名的实例。您可以将html页面添加到您的问题中,您可以将其粘贴到此处或粘贴到pastebin并在此处共享,,另外,jquery在客户端应该如何处理它
jQuery(document).ready(function($) {

alert("The ID is "+ data_object_name.wce_id)
});