WordPressのプラグイン操作がエラーに

お久しぶりですm(__)m

珍しくNode.jsの記事を書いており、投稿しようとしたら、Facebook上の自分のページに自動投稿できないΣ( ̄ロ ̄lll)

今までできていたのになんでだろーと調べていたら、wordbookerが終了していたことがわかりました。。。他のブログでも同じようなことを言っている人がちらほら( ̄▽ ̄;)

便利でしたが使えないことにはどうしようもないため、wordbookerを削除しようとしたところ、プラグインの削除ボタンがない。。。またまた、新規のプラグインもインストールできない事がわかり、調査することに。

・・・これがかなりはまりました。
結論から言いますと、設定の問題だったんですけどね。wp-config.phpに以下の設定を入れると使えるようになりました。

define('DISALLOW_FILE_MODS',false);
define('DISALLOW_FILE_EDIT',false);

 

これを解決するために、wordpressのソースを見ることになりましたよ。ええ。
ドキュメントに書いてあったのかもしれませんが、見てないですもん。ヾ(。`Д´。)ノ
取り合えず、プラグインのアップデートのページのプログラムを順に追っていったらわかりました。

◇ /usr/share/wordpress/wp-admin/includes/class-wp-upgrader.php

~
public function update( $type, $item ) {
    $skin = new Automatic_Upgrader_Skin;

    switch ( $type ) {
        case 'core':
~
    }
    // Determine whether we can and should perform this update.
    if ( ! $this->should_update( $type, $item, $context ) )
                  ^^^^^^^^^^^^^
~

 
should_updateの関数かな( ̄Д ̄;;

~
public function should_update( $type, $item, $context ) {
    // Used to see if WP_Filesystem is set up to allow unattended updates.
    $skin = new Automatic_Upgrader_Skin;

    if ( $this->is_disabled() )
                ^^^^^^^^^^^
~

 
is_disabledの関数かな(-。-;)

~
public function is_disabled() {
    // Background updates are disabled if you don't want file changes.
    if ( !defined( 'DISALLOW_FILE_MODS' ) || DISALLOW_FILE_MODS )
                    ^^^^^^^^^^^^^^^^^^
~

 

DISALLOW_FILE_MODSっぽくね?Σ(゚д゚;)
つまりは、DISALLOW_FILE_MODSが設定されていない、もしくはDISALLOW_FILE_MODSが真のときエラーになるということがわかったので、設定ファイルに設定があるかどうかを確認したところありませんでした。orz

アップデートしたときに仕様が変更になったんでしょうかね。。。
何にせよ無意味なところで時間を使ってしまいました。この記事で助かる人がいればいいのですが。

そんなこんなで落ち着いてきたので、今度はNode.jsの記事を書きます!!


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です