0

注:この質問は(SOに関係するかどうかを判断するために)注意が必要ですが、これは単純なWordPressの質問ではありません。

WordPress.comには、ホストされているWordPressブログからほとんど独立した、画像用のインフラストラクチャ(Nginxベースのサーバー)の独立したレイヤーがあると聞きました。

つまり、WordPress.comブログの画像は、次のようにw(幅)および/またはh(高さ)パラメーターを追加するだけでサイズを変更できます。

http://serenescribe.files.wordpress.com/2012/04/cropped-p1000206.jpg?w=400
http://serenescribe.files.wordpress.com/2012/04/cropped-p1000206.jpg?h=200

スクリプトはWebで入手できますか?(なぜなら、彼らは常に 「私たちはオープンソースを強く信じており、できる限りオープンソースにしようとしている」と言っているからです。

そこにある動的な画像サイズ変更スクリプトのほとんどは、安全ではなく、攻撃に対して非常に脆弱であるか(Tim Thumb)、または不適切に記述されているか、パフォーマンスが犠牲になります。良いものはありますか?

PS:たとえば、TimThumbのように、他にもいくつかの動的な画像サイズ変更スクリプトがあります。しかし、私はWordPress.comのブログが何を使用しているかにのみ興味があります。

4

2 に答える 2

3

(1) TimThumbを使用すると、画像のサイズ変更は、いくつかのパラメーターを追加するのと同じくらい簡単です。

http://example.com/timtumb.php?src=wp-content/uploads/2010/03/high_res_horsey.png&w=300&h=100

(2)次に、サイトのルート.htaccessファイルに次の書き換えルールを追加します。

RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} \.(gif|png|jpg|jpeg)
RewriteCond %{QUERY_STRING} (w|h)=(.*)$
RewriteRule (.*) /full/path/to/timthumb.php?src=$1&%1=%2&%3=%4 [L]

ルールの簡単な内訳:

  1. URIがファイルとして存在することを確認してください。
  2. 問題のURIが画像であることを確認してください。必要に応じて他の形式に展開します。
  3. 幅と高さの一方または両方が変更されていることを確認してください。
  4. 次のファイルを変数としてtimthumbに渡します。
    • $1=ファイル名
    • %1=wまたはh
    • %2=wまたはhの値
    • %3=wまたはh
    • %4=wまたはhの値

(3)これで、WordPress.comの場合と同じように、画像のサイズをほぼ変更できます。つまり、次のようになります。

http://example.com/wp-content/uploads/2010/03/high_res_horsey.png?w=300&h=100

http://www.myrant.net/2011/03/07/mimicking-wordpress-coms-image-resize-uris/から

于 2012-05-07T04:41:23.077 に答える
0

markratledgeが提供するソリューションに基づいて、他の人を助ける可能性のある簡単なプラグインを作成しました。

https://github.com/ubc/wave-resize-imageで見つけることができます。

.htaccessファイルが機能するように、readme.txtの説明に従って必ず更新してください。

于 2013-02-13T17:33:07.673 に答える