[WordPress] 要求されたデータのない負荷/表示しないにワードプレス プラグイン原因ページ

スポンサーリンク

質問

ここに取り組んでのプラグインです。タスクは CSV ファイルを解析して、ワードプレスに HTML テーブルとして表示するショート コード ページが存在します

プラグインをアクティブにし、それを含むページを訪れるときのショート、ページが読み込まれない、私のブラウザー (FireFox、クロムメッキ) しようとするためページを読み込むことはできません、; を WSoD を得ないもこれが起こるとき、CPU 使用率が 85% 非常に異常があることに注意してくださいも私のサーバーの統計情報をチェックします。

プラグインを無効にすると、CPU 使用率を正常に返します (通常 0 14 %) とプラグインのショート コードを含むページがロードされます (が明らかに、ショート コードによって要求されたデータをロードされません).

私は見当が絶対に何が原因です

私も似たようなタスクを実行するたびに同じ結果を経験している知られている作業スクリプトの例を見つけたを使用してみました

Excel 2003 で生成された CSV ファイルを開こうと、CSV ファイルはプラグイン フォルダー

ここでは、CSV ファイルの内容:

Make, Model, Origin, Color, Miles, Options
Chevy, Tahoe, Delaware, Black, 10000, LX
Ford, F150, Texas, Red, 5000, S
Chevy, Corvette, Utah, Red, 12000, SE
Mazda, Miata, Florida, Blue, 90000, LX

< hr/>

<?php
   /*
   Plugin Name: CSV 3
   Plugin URI: 
   Description: Displays CSV files as HTML tables
   Version: 1.0
   Author: Kreation
   Author URI: 
   License:
   */

add_shortcode( "csv", "open_csv_file");

function open_csv_file() {
$file = file_get_contents( plugin_dir_path( __FILE__ )  . 'Book1.csv' );
    $handle = fopen("$file", "r");
    $data = fgetcsv($handle, 1000, ",");
    $color = $data[3];
    $options = $data[5];
    echo('<table>');
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {

        $color = $data[3];
        $options = $data[5];
        //generate HTML
        echo('<tr data-color="' . $color . '" data-options="' . $options . '">');
        foreach ($data as $index=>$val) {
            echo('<td>');
            echo htmlentities($val, ENT_QUOTES);
            echo('</td>');
        }
        echo('</tr>');
    }
    echo("</table>");
    fclose($handle);
    }
?>

答え

ファイルが場所で、正確なディレクトリの場所のため、plugin_dir_path を使ってみてください存在ことを確認してください。第二にリフレッシュごとにそれが目的ではない何を推測するファイル内のすべてのデータを抽出します。だからキャッシュ データベースと時間でそれを保存するしようとする必要があります。

http://stackoverflow.com/questions/29093684/wordpress-plugin-causes-page-to-not-load-does-not-display-requested-data

スポンサーリンク

Leave a Reply