1

私は多数の Wordpress サイトをホストしています。毎日バージョンをチェックし、Wordpress の最新バージョンと一致しない場合は通知するスクリプトを作成したいと考えています。

現在、バージョンを確認する最も簡単な方法は、wp-includes/version.php ファイルを調べることです。そのため、次のようにしました。

grep "$wp_version =" /home/*/public_html/wp-includes/version.php > /~/wordpress/versions.txt

上記の行は、1 日 1 回実行されるように cron に配置されます。

次に、上記のスクリプトの各行を次のようにテーブルに整理する php スクリプトを作成します。

フォルダー (wordpress サイトがインストールされているフォルダー) ; バージョン

次に、上記の「バージョン」が、設定する変数 $wp_latest_version と一致するかどうかをスクリプトで確認します。一致する場合は「バージョン」セルが緑色に変わり、一致しない場合は「バージョン」セルが赤色になるので、更新が必要なサイトを私や同僚が知ることができます。

最後の部分をどのように行うかについては、ある程度のアイデアがありますが、現在、「.txt ファイルをテーブルに変換する」プロセスで立ち往生しています。

助言がありますか?

また、MySQL を使用する必要がありますか?

これは、表に変換したい出力テキストの一部です。

/home/alton/public_html/wp-includes/version.php:$wp_version = '3.5.2';
/home/boutaces/public_html/wp-includes/version.php:$wp_version = '3.4';
/home/byseacom/public_html/wp-includes/version.php:$wp_version = '3.5.2';
/home/capricho/public_html/wp-includes/version.php:$wp_version = '3.5.1';
/home/carlosva/public_html/wp-includes/version.php:$wp_version = '3.6.1';
/home/cerimoni/public_html/wp-includes/version.php:$wp_version = '3.5.1';
/home/cotaksis/public_html/wp-includes/version.php:$wp_version = '3.6.1';
/home/crisblog/public_html/wp-includes/version.php:$wp_version = '3.5';
/home/customup/public_html/wp-includes/version.php:$wp_version = '3.5.2';
/home/dentist/public_html/wp-includes/version.php:$wp_version = '3.4.2';
4

1 に答える 1

0
foreach($lines as $line)
{
    if(preg_match('|\/home\/(.+?)\/public_html\/wp-includes\/version.php:\$wp_version = '(.+?)';|', $line, $matches))
    {
        $folder = $matches[1];
        $version = $matches[2];
    }
}

Once you have the values separated from the string, write them either into a db of your choice or into a file.

于 2013-10-04T18:48:51.313 に答える