• 解決済 hinomi

    (@hinomi)


    投稿した記事をゴミ箱に移動させ、
    ゴミ箱の記事を削除するために、「完全に削除する」という部分を
    クリックして削除しますが、

    「完全に削除する」をクリックしたときに、アラートが表示されず、
    いきなり記事が削除されます。
    記事の削除は嬉しい機能ではあるのですが、
    アラートが表示されず、いきなり記事が削除されてしまうのは、
    もし間違えて消去してしまった場合などを考えると、
    ゾッとします。
    (実際に1度経験してしまっています。)

    もし間違えてクリックしてしまってもいいように、
    アラートで確認してくれるような仕組みがほしいのですが、
    なにかアドバイスありませんでしょうか?

    時々本当に困ることがあるので・・
    すいませんが、お願いします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • 以下のような感じでどうでしょう。一括処理の適用ボタン操作は考慮していませんがリンクをクリックした時に確認メッセージを表示させています。
    ダメな場合はブラウザのソースを表示でJavaScriptのコードが吐き出されているか確認してから検証してみてくださいね。

    functions.php

    <?php
    add_action('admin_head-edit.php','delete_confirm');
    function delete_confirm() {
    	if ( is_user_logged_in()) {
    		if( isset( $_GET[ 'post_status' ] ) &&  $_GET[ 'post_status' ] == 'trash' ) {
    			echo '
    				<script>
    				jQuery( document ).ready( function( $ ) {
    					$( "a.submitdelete" ).click( function() {
    						if( !confirm( "削除しますか?" ) ) return false;
    					});
    				});
    				</script>
    			';
    		}
    	 }
    }

    参考

    トピック投稿者 hinomi

    (@hinomi)

    Tsuyoshi.さん
    ご返信ありがとうございます。

    コードを貼り付けてみましたところ、
    上手く機能しました。
    ありがとうございます。

    また、すいませんがこのコードについて一点質問があります。
    このコードは、ゴミ箱にある記事の削除の際にアラートが表示される
    というスタイルでしたが、
    wp-config.phpにdefine(‘EMPTY_TRASH_DAYS’, 0);というコードを入れ、
    ゴミ箱の機能を無くし、投稿の一覧画面からストレートに
    「完全に削除」を行った場合はダメでした。

    define(‘EMPTY_TRASH_DAYS’, 0);でも可能にする場合は、
    どのようにすると可能になるのでしょうか?

    if( isset( $_GET[ 'post_status' ] ) && $_GET[ 'post_status' ] == 'trash' ) {
    の部分でゴミ箱のページかどうか判別しているのでごっそりifのブロックを外せばいけるかもしれませんが、jQueryの記述は見直す必要があるかもしれませんのでそのあたりはご確認下さい(完全に削除するのリンクのcssのクラス名など)

    トピック投稿者 hinomi

    (@hinomi)

    Tsuyoshi.さん
    お返事が遅くなってしまい、すいませんでした。

    if( isset( $_GET[ ‘post_status’ ] ) && $_GET[ ‘post_status’ ] == ‘trash’ ) {
    の部分を削除することで、
    ゴミ箱ではない、投稿の一覧の画面で機能しました。

    jQueryの記述については、修正の必要なく、Tsuyoshi.さんのコード
    そのままで問題なく作動しました。

    希望の動きが実現できましたので、
    こちらからではありますが、解決済みとさせていただきます。

    本当にありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「投稿の完全削除の時にアラートを表示したい」には新たに返信することはできません。