Jika saya mengganti nama plugin (dalam file php utamanya) apakah saya masih mendapatkan notifikasi pembaruan?


17

Saya baru-baru ini terpaksa mengedit file inti dari sebuah plugin. Saya telah memperbarui judul kata plugin untuk menunjukkan bahwa itu telah diedit.

Pertanyaan saya adalah apakah plugin akan tetap mendapatkan notifikasi pembaruan? Jika demikian, saya kemungkinan akan menonaktifkan pembaruan untuk plugin ini, untuk mencegah seseorang lupa tentang pembaruan dan penulisan ulang saya.

Idealnya, saya ingin melihat apakah plugin mendapatkan pembaruan, tetapi tidak mengizinkannya terjadi hanya dengan mengklik pembaruan. (itu harus dihapus dan diinstal ulang, atau serupa).


Tentang masalah ini, saya baru-baru ini memposting laporan bug di WordPress Track: Pencadangan direktori plugin / tema. Saya berpikir bahwa cadangan otomatis di dalam tetapi sebelum fitur pembaruan otomatis akan membuat segalanya lebih mudah untuk semua orang. Saya tidak melihat alasan mengapa ini tidak dilakukan ketika pembaruan otomatis dirilis pertama kali, atau mengapa itu tidak dilakukan sementara itu, atau mengapa itu tidak boleh dilakukan.
Ando

Jawaban:


17

Seperti yang dikatakan SickHippie dan AFAIK, Anda tidak dapat memiliki keduanya. Saya menambahkan jawaban dengan info yang saya kumpulkan di Stack ini.


Nonaktifkan pemberitahuan pembaruan untuk masing-masing plugin

Bainternet dalam Komentar:

Cukup buka file plugin dan ubah nomor versi menjadi sesuatu seperti 9,9.9

Jawaban Hameedullah Khan (menghapus pemberitahuan pembaruan Akismet):

function filter_plugin_updates( $value ) {
    unset( $value->response['akismet/akismet.php'] );
    return $value;
}
add_filter( 'site_transient_update_plugins', 'filter_plugin_updates' );

Apa yang Memicu Peringatan Pembaruan Plugin

Jawaban Otto:

API menggunakan mekanisme yang agak rumit untuk mencocokkan plugins dengan plugins yang diketahuinya, tetapi ini adalah hal-hal utama yang diperiksa: Plugin URI, Plugin Name, dan Plugin slug (nama direktori tempat plugin berada)

Ubah salah satu dari itu dan Anda mengurangi kemungkinan menemukan kecocokan, tetapi mungkin masih mendapatkannya jika dua dari mereka cocok, misalnya.

Info di readme.txt tidak digunakan untuk ini. Header file PHP plugin itu sendiri digunakan.


Pendekatan alternatif 1


Pendekatan alternatif 2 diambil dari Komentar

  • ganti nama plugin, nomor versi, dan nama direktori
  • pasang plugin asli tetapi biarkan dinonaktifkan untuk menerima pemberitahuan pembaruan
  • tambahkan pesan khusus ke deskripsi plugin (atau ganti yang asli)
  • hapus tindakan plugin (Aktifkan | Edit | Hapus) dan kotak centang untuk Tindakan Massal

masukkan deskripsi gambar di sini

add_filter( 'all_plugins', 'wpse_56968_on_list_plugins' );
add_filter( 'plugin_action_links_akismet/akismet.php', 'wpse_56968_remove_plugin_actions', 10, 4 );
add_action( 'admin_head-plugins.php', 'wpse_56968_remove_plugin_checkbox' );

function wpse_56968_on_list_plugins( $plugins )
{
    $plugins['akismet/akismet.php']['Description'] = '<strong>*** NOTICE: PLUGIN ONLY TO CHECK UPDATES IN THE ORIGINAL ONE! ***</strong> ';// . $plugins['akismet/akismet.php']['Description'];
    return $plugins;
}

function wpse_56968_remove_plugin_actions( $actions, $plugin_file, $plugin_data, $context ) 
{
    unset( $actions['activate'], $actions['edit'], $actions['delete'] );
    return $actions; 
}

function wpse_56968_remove_plugin_checkbox()
{
    ?>
        <script type="text/javascript">
            jQuery(document).ready( function($) {
                $('tr#akismet th.check-column').html('&nbsp;')
            });     
        </script>
    <?php
}

Tiket Inti Terkait


Jawaban yang luar biasa! Mungkin saya akan mengubah nama plugin, nomor versi, dan nama direktori, dan kemudian menginstal plugin asli tetapi membiarkannya dinonaktifkan sehingga saya bisa melihat ketika itu diperbarui.
Zach Lysobey

1
@ZachL - Cemerlang! Itu seharusnya bekerja dengan baik!
SickHippie

2
Anda juga dapat memodifikasi header plugin asli Descriptiondan menambahkan beberapa pemberitahuan, seperti:Description: ONLY FOR REFERENCE, DON'T ACTIVATE!...[rest of the description]
brasofilo

1
@ZachL - Menambahkan alternatif kedua penuh berdasarkan Komentar ini :)
brasofilo

3

Anda tidak dapat menonaktifkan pembaruan tetapi tidak memperbarui notifikasi - mereka terikat bersama.

Untuk menonaktifkan notifikasi sama sekali, ubah nama folder tempat plugin itu berada.

Metode pribadi saya adalah 3 pada judul plugin di plugin.phpfile utama , jadi dalam daftar plugin saya, saya melihat AAA/Plugin Name. Ini menempatkannya di bagian atas daftar untuk referensi, dan akan ditampilkan di daftar plugin dan dalam daftar pembaruan. Ini pada dasarnya adalah bendera pribadi jadi saya tahu untuk tidak memutakhirkan secara otomatis plugins tertentu.


Terima kasih atas tanggapannya. Hanya untuk memperjelas, apakah Anda mengatakan bahwa mengganti nama plugin TIDAK menghentikan pemberitahuan pembaruannya?
Zach Lysobey

Sedangkan untuk kalimat pertama Anda ... Saya yakin saya bisa menemukan cara untuk mencapai efek ini, mungkin dengan beberapa js licik untuk hanya menghapus tautan dari notifikasi.
Zach Lysobey

AFAIK, mengganti nama file utama atau judul plugin di file utama itu tidak menghentikan pembaruan pemberitahuan. Saya cukup yakin bahwa Repositori Plugin menarik berdasarkan nama folder (zip yang diunduh dari Repo harus memiliki nama yang sama ditambah nomor versi). Untuk menonaktifkan pembaruan, ada daftar plugin dan daftar pembaruan, jadi pastikan JS Anda diaktifkan di kedua tempat (juga, bagikan JS itu - bisa bermanfaat).
SickHippie
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.