• 挙がってそうなネタと思えるのですが、見つけられなかったもので…。ちなみに、2.9.2 でも同様です。

    wp-config.php で FS_METHOD を指定しない場合、wp-admin/includes/file.php 内の get_filesystem_method() 関数で、

    if ( ! $method && isset($args['connection_type']) && 'ssh' == $args['connection_type'] && extension_loaded('ssh2') && function_exists('stream_get_contents') ) $method = 'ssh2';

    としているので救われますが、ドキュメントやコメントに記載の通り、

    define ('FS_METHOD', 'ssh');

    と指定した場合、wp-admin/includes/file.php 内の function WP_Filesystem() 関数内で

    $method = get_filesystem_method($args, $context);

    の戻り値 $method が ‘ssh’ となるため、その後の

    if ( ! class_exists("WP_Filesystem_$method") ) {
    		$abstraction_file = apply_filters('filesystem_method_file', ABSPATH . 'wp-admin/includes/class-wp-filesystem-' . $method . '.php', $method);
    		if( ! file_exists($abstraction_file) )
    			return;
    
    		require_once($abstraction_file);
    }

    で、ありもしない WP_Filesystem_ssh クラス(WP_Filesystem_ssh2 クラスならありますけど)を探したり、ありもしない wp-admin/includes/class-wp-filesystem-ssh.php ファイル(wp-admin/includes/class-wp-filesystem-ssh2.php ならありますけど)を探したりしてコケるんですが。

    私がここの仕様を誤解しているんでしょうか。

  • トピック「FD_METHOD が ssh の場合に関して」には新たに返信することはできません。