web-dev-qa-db-ja.com

Http://を含むメディアライブラリ内の画像の完全なURLを取得します

メディアファイルに//example.com/wp-content/uploads/2015/08/logo.pngがないhttp:があります。

変更するには?

picture URL without http:// 

私の投稿には完全なhttp://アドレスが必要です

いくつかのプラグインまたはあなたのテーマがあなたの添付ファイルのURLを変更すると確信しています。あなたのコードの中でwp_get_attachment_urlフックを見つけることを試みるか、単にこのように高い優先順位であなた自身のものを作成してください:

add_filter('wp_get_attachment_url', function($url) {
 return preg_replace("~^//(.+)$~", "https://$1", $url);
}, 999);

またはそれ以上:

add_filter('wp_get_attachment_url', function($url) {
  return set_url_scheme($url, 'https');
}, 999);

しかし、私はこの添付ファイルURLの振る舞いの理由を最初に見つけることをお勧めします。

1
Anton Lukin

メディアライブラリのURLはプロトコルに関連しています。つまり、安全なプロトコルを使用しているかHTTPを使用しているかに関係なく、リンクは常にドメインのプロトコルに従います。

今、あなたが問題を経験しているならば、あなたがすることができる何かがあるが推奨されていません。

まず、バックアップを取ってください。間違えた場合は"No"に戻ります。バックアップし、すべてをバックアップします。

それから、 をダウンロードしてインストールしてください - より良い検索置換 - // plugin。これにより、シリアル化されたデータを含め、データベース内の文字列を置き換えることができます。

プラグインのページに行き、以下を置き換えます。

//yourdomain.com/

https://yourdomain.com/

スラッシュ、スペースなどに注意してください。 "すべて" ここで問題になります。大文字の文字でさえ問題になる場合があります。

0
Jack Johansson