У меня есть следующая функция в проекте im, над которым работает, и все до сих пор отлично работает, кроме того, что я застрял, показывая сообщение об ошибке во всплывающем окне, когда функция умирает.WP Show wp die error как предупреждение
Это Ajax Script
jQuery(window).load(function() {
action = jQuery.QueryString["action"];
collection_id = jQuery.QueryString["cc"];
current_userid = jQuery.QueryString["cu"];
user_name = jQuery.QueryString["su"];
collection_name = jQuery.QueryString["cn"];
cbcolor = jQuery.QueryString["ccol"];
permission = jQuery.QueryString["permission"];
if(action == 'sharecookbook' && jQuery('body').hasClass('logged-in')) {
new jQuery.flavr({
content : 'Do you really want to add this collection?',
dialog : 'confirm',
onConfirm : function(){
jQuery.ajax({
url: wpb_ajax_url,
data: 'action=wpb_sharecollection&collection_id='+collection_id+'¤t_userid='+current_userid+'&user_name='+user_name+'&collection_name='+collection_name+'&cbcolor='+cbcolor+'&permission='+permission+'&nonce='+ajax_object.nonce,
dataType: 'JSON',
type: 'POST',
success:function(data){
window.location = "/";
}
});
},
});
}
});
Тогда следующий Аякс PHP Funtion
/* share new collection */
add_action('wp_ajax_nopriv_wpb_sharecollection', 'wpb_sharecollection');
add_action('wp_ajax_wpb_sharecollection', 'wpb_sharecollection');
function wpb_sharecollection(){
global $wpb;
$output = '';
extract($_POST);
check_ajax_referer('ajax_form_nonce', 'nonce');
$wpb->share_collection($current_userid,$collection_id,$collection_name,$cbcolor,$user_name,$permission);
wp_send_json ($output);
}
И следующая функция сбора доли определен в выше PHP Funtion
/* Share collection */
function share_collection($uid,$id,$name,$cbcolor,$user,$permission) {
$cbcolor = str_replace(" ", "#", $cbcolor);
$type = 'shared';
$user_id = get_user_by('email', $user);
$collections = $this->get_collections($user_id->ID);
$collectionsdata = $this->get_collectionsdata($user_id->ID);
$collectionsdataoriginal = $this->get_collectionsdata($uid);
$collectionsdatashared = $this->get_collectionsdatashared($uid);
foreach($collectionsdata as $j => $ajj) {
if (isset($ajj['parent']) && $ajj['parent'] == $id && isset($ajj['owner']) && $ajj['owner'] == $uid) {
wp_die('This is an error', 'Error');
}
}
$collections[] = array();
$collectionsdata[] = array('label' => $name,'cbcolor' => $cbcolor,'owner' => $uid,'parent'=>$id,'type' => $type,'permission' => $permission);
$collectionsdataoriginal[$id] = array('label' => $name,'cbcolor' => $cbcolor,'owner' => $uid,'type' => $type);
$idx = count($collectionsdata) - 1;
$collectionsdatashared[] = array('myid'=>$id,'suser' => $user_id->ID,'child'=>$idx);
update_user_meta($user_id->ID, '_wpb_collections', $collections);
update_user_meta($user_id->ID, '_wpb_collectionsdata', $collectionsdata);
update_user_meta($uid, '_wpb_collectionsdata', $collectionsdataoriginal);
update_user_meta($uid, '_wpb_collectionsdatashared', $collectionsdatashared);
}
В последнем коде вы видите, что wp_die определен с сообщением об ошибке. Мне нужно предупредить об этом, когда функция умирает для пользователя. Можете ли вы предложить способ сделать это.
Заранее спасибо
благодарит за ваш ответ. он не работает. однако, когда я смотрел на консоль, она не выглядела так, как будто это порождает 500 ошибок –