2012-03-14 13 views
2

の各プラグインの名前には、通常、[非アクティブ化|編集|設定]のようなボタン/リンクがあります。最近、自分のサイトの「編集」(および「設定」)ボタンが消えました。私はちょうど "Deactivate"または "Activate | Delete"を持っています。wordpress pluginsページのプラグインの編集ボタンが消える原因は何ですか?プラグインのページにある

私の質問は - これは何が原因でしょうか?

私は管理者としてログインしていますので、ボタンが表示されます。私は、最後のプラグインのインストールに何かが間違っているかもしれないと思うが、わからない。

これらのボタンが無効(非表示)になったり、バグ/エラーが発生する場合がありますか?

編集
これはサーバーで発生しています。私はまた、プラグインがすべてのボタンを持っている私のローカルコンピュータ上で実行されている全く同じファイル(比較者でチェックされている)を持っています。違いを見つけるためにDBを探していますが、今のところ重要なものは見つかりませんでした。

答えて

3

は、ユーザーのWebサーバは、(一般的にWWW-データまたは類似)として実行されていることを確認し、ファイルのアクセス権のエラーのような音は、プラグイン・ファイルへの書き込み権限を持っています。

+0

ありがとう、サイトは* nixで実行され、プラグインフォルダとすべてのサブフォルダ+ファイルに対して775のアクセス許可を設定しましたが、それは役に立たなかったようです。それとも私は別のことをしなければならないのですか – Priednis

+0

私は実際にはfalseを返す 'is_writable'関数を指している[wordpress.stackexchange.com](http://wordpress.stackexchange.com/a/45539/11156)の回答を得ました。だから今私は管理者と明確になっています... – Priednis

+1

ファイルに多くの権限を与えた後、編集ボタンが再び現れました。 – Priednis

1

これらの「ボタン」は「plugin_action_links」と呼ばれ、プラグインの作成者が設定できます。

プラグインの作者によっては、「設定」が含まれていないものもあります。

プラグインを更新した場合、新しいバージョンにはそれが含まれていない可能性があります。

プラグイン自体は機能しますか?

他のサイトとまったく同じバージョンですか? 「編集」リンクについては

- また、表示されたり、ユーザーのアクセス権や(例えばadminimizeのような)リンクの可視性に関係しているサードパーティ製のプラグインで無効にされないように設定することができます

プラグインの作成者のためのこれらのリンクを無効にする方法の例:

add_filter('plugin_action_links', 'disable_plugin_footlinks', 10, 4); 
function disable_plugin_footlinks($actions, $plugin_file, $plugin_data, $context) { 
    // Remove edit link. if you want to remove selective use if statement 
    if (array_key_exists('edit', $actions)) 
     unset($actions['edit']); 
    // Selectively remove deactivate link for specific plugins with if statement 
    if (array_key_exists('deactivate', $actions) && in_array($plugin_file, array(
     'plugin1_specific_name_folder_/plugin1_name.php', 
     'plugin2_name_folder_/plugin2_name.php' 
    ))) 
     unset($actions['deactivate']); 
    return $actions; 
} 
+0

ローカルコンピュータの同じファイルに関するテキストを編集しました。 – Priednis

+0

あなたのOPは考えられるシナリオでした - しかし、それはサーバーやローカルにある場合は重要ではありません--WPインストールとPLUGINSが両方(設定を含む)で同一であることが重要です - 確かに、すべてのプラグインを非アクティブ化する(デフォルトのテーマに戻す)。そして、デフォルトのプラグイン(askimetやhello-dollyなど)に同じエラーがあるかどうかを確認する。 – krembo99

+0

プラグイン自体も動作しませんでしたが、原因はわかりました。サーバはPHP4を実行しており、プラグインには認識されない '__construct()'スタイルのコンストラクタがあります。 'function ClassName()を追加しなければならなかった{ $ this-> __ construct(); } 'これを修正する機能。ご支援ありがとうございます! – Priednis

関連する問題