質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

2244閲覧

WordPressで記事内の最初の画像をアイキャッチ代わりに使ってる画像だけSSL化してくれない

Granhiro

総合スコア11

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2019/08/06 05:59

発生している問題・エラーメッセージ

WordPressで構築したサイトのSSL化をしました。
しかし「このサイトは安全ではありません」と表示されてしまいました。
コンソールでエラーを調べたところ、
「安全なページ上で (安全でない) 混在表示コンテンツ “http://www.xxxxxx.com/wp-content/uploads/2019/05/xxxxx.jpg” を読み込んでいます]が見つかりました。
記事内の最初の画像をアイキャッチ代わりに使ってる画像だけSSL化してくれないのですが、対処法ご存じの方いらっしゃいますでしょうか?
※他はすべてhttpsになっています。

対象の個所は以下のように表示させています。

####▽front-page.php

<?php query_posts('category_name=news&showposts=3'); ?> <?php if(have_posts()): while(have_posts()): the_post(); ?> <li> <a href="<?php the_permalink(); ?>" style="background-image:url(<?php echo catch_that_image(); ?>);" class="newpost-img"></a> </li> <?php endwhile; endif; ?>

####▽function.php
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src='"['"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];

if(empty($first_img)){ //Defines a default image
$first_img = "https://www.mie-biyouhari.com/wp-content/themes/tsuisuma-pc/images/top/default.jpg";
}
return $first_img;
}

試したこと

以下の記事を参考にfunction.phpを修正してみましたが駄目でした。
参考記事)SSL化するときに、記事の最初の画像をアイキャッチとしてサムネイルにしたのをhttpsにする記述
https://hirocreate.com/wordpress/ssl%E5%8C%96%E3%81%99%E3%82%8B%E3%81%A8%E3%81%8D%E3%81%AB%E3%80%81%E8%A8%98%E4%BA%8B%E3%81%AE%E6%9C%80%E5%88%9D%E3%81%AE%E7%94%BB%E5%83%8F%E3%82%92%E3%82%A2%E3%82%A4%E3%82%AD%E3%83%A3%E3%83%83/

補足情報(FW/ツールのバージョンなど)

PHP 7.2.17
WordPressバージョン 5.2.2

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

データベース内のURL部分を一括で書き換えるなどしましたか?その手順とやりかたを間違えるとDB内に残ることが有ります。
また、キャッシュの消去(WPのキャッシュプラグインやブラウザキャッシュ)が必要な場合も有ります。

投稿2019/08/06 08:04

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Granhiro

2019/08/07 01:19

>kei344さん 回答ありがとうございます。 試しに1記事追加して新規に画像を読み込ませてみると、新記事の画像はhttps となっていました。 ということは、問題はfunction.phpの書き方ではなく、キャッシュの問題であることがわかりました。 これがわかったのはkei344さんのおかげです。ありがとうございます! ただ、WP Fastest CacheとWP Super Cacheを使ってキャッシュの消去をしてみたものの、ssl対応していない画像を読み込み続けてしまい解決できずじまいです。 でも、いずれ新しい記事が増えていけば解決するであろう問題なので、このまま待ってみようかと思います。
Granhiro

2019/08/07 01:38

追記 httpsで読み込んでくれない画像をファイル名を変更してアップロードするという方法で解決させました。根本的な解決にはなってない気もしますがとりあえずSSL化完了しました。 この発想のヒントになった記事|JetpackのPhotonは上書き不可なので注意です https://amaneco.tv/photon-caution/
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問