@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


// PNGをアップロードした瞬間にサーバー側でJPGへ強制変換
add_filter('wp_handle_upload', function($fileinfo) {
    $ext = strtolower(pathinfo($fileinfo['file'], PATHINFO_EXTENSION));

    // PNGのみ変換する
    if ($ext !== 'png') return $fileinfo;

    $png_path = $fileinfo['file'];
    $jpg_path = preg_replace('/\.png$/i', '.jpg', $png_path);

    // ImageMagickを使って強制変換
    $image = imagecreatefrompng($png_path);
    if ($image) {
        imagejpeg($image, $jpg_path, 90); // 品質90で保存
        imagedestroy($image);

        // PNGを削除
        unlink($png_path);

        // WordPressに JPG として渡す
        $fileinfo['file'] = $jpg_path;
        $fileinfo['url']  = preg_replace('/\.png$/i', '.jpg', $fileinfo['url']);
        $fileinfo['type'] = 'image/jpeg';
    }

    return $fileinfo;
});

// PNG をアップロードしたら必ず JPG に変換（Imagick版）
add_filter('wp_handle_upload', function($fileinfo) {

    $ext = strtolower(pathinfo($fileinfo['file'], PATHINFO_EXTENSION));

    // PNG 以外は何もしない
    if ($ext !== 'png') {
        return $fileinfo;
    }

    $png_path = $fileinfo['file'];
    $jpg_path = preg_replace('/\.png$/i', '.jpg', $png_path);

    try {
        // ImagickでPNGを読み込み
        $img = new Imagick($png_path);
        $img->setImageFormat('jpeg');
        $img->setImageCompressionQuality(90);
        $img->writeImage($jpg_path);
        $img->destroy();

        // PNGを削除
        unlink($png_path);

        // WordPressに JPG として渡す
        $fileinfo['file'] = $jpg_path;
        $fileinfo['url']  = preg_replace('/\.png$/i', '.jpg', $fileinfo['url']);
        $fileinfo['type'] = 'image/jpeg';

    } catch (Exception $e) {
        // 変換失敗時はそのままPNGとして扱わせる
    }

    return $fileinfo;
});