2016-03-09 4 views
1

Я создал плагин WordPress. Он использует кешированный файл xml в папке плагина /cache/feed.xml. Теперь я хочу, чтобы администратор мог удалить этот файл со страницы параметров плагинов. Кнопка или текстовая ссылка. Есть идеи?Как удалить файл из папки плагина WordPress

ответ

1

На формы или AJAX вызова, в зависимости от того вы хотите больше

PHP

add_action('wp_enqueue_scripts', 'my_unique_enqueue_assets'); 
add_action('wp_ajax_my_cache_removal', 'my_cache_removal_ajax_handler'); 

function my_unique_enqueue_assets() 
{ 
    wp_enqueue_script('my_script', plugins_url('/my_script.js', __FILE__), array('jquery'), false, true); 
    wp_localize_script('my_script', 'my_script_ajax_object', array('ajax_url' => admin_url('admin-ajax.php'))); 
} 

function my_cache_removal_ajax_handler() 
{ 
    if(file_exists (plugin_dir_path(__FILE__) . 'cache/feed.xml')) 
    { 
     unlink(plugin_dir_path(__FILE__) . 'cache/feed.xml') 
    } 
} 

JS

jQuery(document).ready(function ($) 
{ 
    $('#clear_mah_cache').click(function() 
    { 
     $.ajax({type: "post", dataType: "json", url: my_script_ajax_object.ajax_url, data: {action: 'my_cache_removal'}}).done(function (e) 
     { 
      alert('You cache is kaput now'); 
     }); 
    }); 
}); 

HTML

<button id="spr_reset_votes">Clear dat cache</button> 
+0

Привет, Игорь. Благодаря! Не могли бы вы дать мне пример Ajax с этим кодом? – Gerard

+0

@ Герард обновил мой ответ. Попробуйте это –

+0

Спасибо Igor! Как мне это назвать? Не могли бы вы привести пример с помощью кнопки al или txt? Я очень благодарен – Gerard

Смежные вопросы