wordpressインポーターをWordPressの[ツール]オプションからインストールした後、アクティベートしようとすると、致命的なエラーが発生します。
関連するphpコード:
class WXR_Parser {
function parse( $file ) {
// Attempt to use proper XML parsers first
if ( extension_loaded( 'simplexml' ) ) {
$parser = new WXR_Parser_SimpleXML;
$result = $parser->parse( $file );
// If SimpleXML succeeds or this is an invalid WXR file then return the results
if ( ! is_wp_error( $result ) || 'SimpleXML_parse_error' != $result->get_error_code() )
return $result;
} else if ( extension_loaded( 'xml' ) ) {
$parser = new WXR_Parser_XML;
$result = $parser->parse( $file );
// If XMLParser succeeds or this is an invalid WXR file then return the results
if ( ! is_wp_error( $result ) || 'XML_parse_error' != $result->get_error_code() )
return $result;
}
// We have a malformed XML file, so display the error and fallthrough to regex
if ( isset($result) && defined('IMPORT_DEBUG') && IMPORT_DEBUG ) {
echo '<pre>';
if ( 'SimpleXML_parse_error' == $result->get_error_code() ) {
foreach ( $result->get_error_data() as $error )
echo $error->line . ':' . $error->column . ' ' . esc_html( $error->message ) . "\n";
} else if ( 'XML_parse_error' == $result->get_error_code() ) {
$error = $result->get_error_data();
echo $error[0] . ':' . $error[1] . ' ' . esc_html( $error[2] );
}
echo '</pre>';
echo '<p><strong>' . __( 'There was an error when reading this WXR file', 'wordpress-importer' ) . '</strong><br />';
echo __( 'Details are shown above. The importer will now try again with a different parser...', 'wordpress-importer' ) . '</p>';
}
// use regular expressions if nothing else available or this is bad XML
$parser = new WXR_Parser_Regex;
return $parser->parse( $file );
}
}
このエラーは、_WXR_Parser
_クラスがすでに「実行中」または宣言されていることを示しています。テーマまたは別のプラグインがそのクラスを組み込み、初期化する前にすでに存在していたかどうかをチェックしなかった可能性があります。すなわち。 if ( ! class_exists( 'WXR_Parser' ) )
。
競合の原因を特定するには、各テーマとプラグインを1つずつ無効にします。デフォルトのテーマのみがアクティブなままにしておく必要があります(つまり、TwentyFifteen)。
これは私にも起こりました。
私はこれのためにコードセクションに行きませんでした。
アクティベートしたテーマをTwenty-Sixteenに変更してから、プラグインをアクティベートして成功しました。
テーマで同じエラーが発生した後、wordpress=デフォルトのテーマに切り替え、次にworpressインポーターをインストールしました...そのインストール済みで正常に機能しています。次に、お気に入りのテーマを変更しました。ありがとう。