1

ワードプレスで画像のサイズを変更する場所は? データベースで?フォルダに?

元の画像のサイズを変更するにはどうすればよいですか(新しいバージョンを作成するのではありません)。ワードプレス サイトで大きすぎて読み込み時間が遅くなるかなりの数の画像をアップロードしたので、これをお願いします。サイズを変更して、1500px を超えるサイズがないようにします。

「サムネイルの再生成」を含むいくつかのプラグインをすでに見てきましたが、まだ見つけられていない、実際に必要なことを行うプラグインがあるかもしれません.

4

3 に答える 3

2

画像は「オンザフライ」でサイズ変更され、サーバーに保存され、その情報がデータベースに記録されます。

オリジナルの残骸とすべての「サムネイル」が生成されます。この場合、「サムネイル」とは、WPで生成されたすべての画像サイズ(大小を問わず)を指します。

私はWordPressStackExchangeで同じ質問に答えました。そして、解決策はこの記事から来ています:オリジナルの代わりにサイズ変更された画像を自動的に使用する方法

このスクリプトは、アップロードされた画像(設定で定義された大きいサイズよりも大きい場合)をWordPressによって生成された大きな画像に置き換えてサーバーのスペースを節約し、ライトボックスの場合のようにサムネイルを元の画像にリンクすると帯域幅を節約しますプラグインが使用されます。

add_filter('wp_generate_attachment_metadata','replace_uploaded_image');

function replace_uploaded_image($image_data) 
{
    // if there is no large image : return
    if ( !isset($image_data['sizes']['large']) ) 
        return $image_data;

    // paths to the uploaded image and the large image
    $upload_dir              = wp_upload_dir();
    $uploaded_image_location = $upload_dir['basedir'] . '/' . $image_data['file'];
    $large_image_location    = $upload_dir['path'] . '/' . $image_data['sizes']['large']['file'];

    // delete the uploaded image
    unlink($uploaded_image_location);

    // rename the large image
    rename($large_image_location, $uploaded_image_location);

    // update image metadata and return them
    $image_data['width']  = $image_data['sizes']['large']['width'];
    $image_data['height'] = $image_data['sizes']['large']['height'];
    unset($image_data['sizes']['large']);

    return $image_data;
}
于 2012-12-05T01:09:19.580 に答える
1

WordPress のadd_theme_supportadd_image_sizeを使用して、画像に複数のサイズを追加できます。つまり、WordPress は、新しいサムネイルをアップロードするときに、指定されたサイズの投稿サムネイルのコピーを作成します。これらのテクニックの詳細については、このチュートリアルを参照してください。

WordPress には別の関数もあり、特定のサイズに合わせて画像を縮小し、画像の新しいコピーを保存するために使用できるimage_resizeです。

ほとんどの開発者はadd_image_size、複数の画像サイズを追加して異なる場所に表示するために使用します。つまり、1 つの画像をホームページで としてfeatured image使用し、ページで同じ画像の別のサイズを使用することもできsingle.phpます。これを行うには、使用する必要があります

add_theme_support( 'post-thumbnails' );
add_image_size( 'homepage-thumb', 220, 180 ); // 220 pix width,180 pix height
add_image_size( 'singlepost-thumb', 590, 9999 ); // Unlimited Height Mode

homepage-thumbホームページに画像を表示するには、次を使用できます

if ( has_post_thumbnail() ) { the_post_thumbnail( 'homepage-thumb' ); }

または、single.php使用できるテンプレートで

if ( has_post_thumbnail() ) { the_post_thumbnail( 'singlepost-thumb' ); }

また、このプラグインを見ることもできます。この記事も役立つ可能性があります。それが役に立てば幸い。

于 2012-12-05T00:51:10.590 に答える
0

私の知る限り、元の画像のサイズを直接変更してメタデータを変更するプラグインはありませんが、コーディングを必要としない回避策 (あなたと同様の問題がありました) を見つけました。

  1. FTP で画像をダウンロードします (画像は wp-content/uploads/ ディレクトリに保存されます)
  2. 選択したソフトウェアでサイズ変更/編集操作を行い、FTP を使用して以前とまったく同じ場所に画像を再アップロードします (フォルダー構造やファイル名を変更しないでください)。
  3. WordPress 管理者にWPR Rebuild Meta Data プラグインをインストールします。「ツール -> メタの再構築」に進みます。これにより、変更されたすべての画像メタ データが再構築されます (たとえば、新しい画像サイズがデータベースに更新されます)。
  4. WordPress の管理画面に強制再生成サムネイル プラグインをインストールします。「Tools -> Force Regenerate Thumbnails」から使用してすべての画像に対して行うか、Wordpress Media Manager から使用して変更した画像に対してのみ行うことができます。これにより、古いサムネイルとカスタム画像サイズが削除され、新しい画像から新しいものが作成されます。
于 2017-08-31T20:07:04.753 に答える