アフィリエイト広告を利用しています

[ PR ]

検索
<< 2024年12月 >>
1
2 3 4 5 6 7
8
9 10 11 12 13 14
22
23 24 25 26 27 28
29
30 31
最新記事
カテゴリーアーカイブ
写真ギャラリー
プロフィール
あどのまつりさんの画像
あどのまつり
ファン


[ PR ]

2024年08月01日

Wordpress有料テーマ「SWELL」で文字化けって

まぁちなみにここの記事をWordpressテーマを「SWELL」にすると、なんとブログカードを使うと!じゃじゃん!未だに文字化けするという結果。。。なんか二年前にも直した気がするんだけどなぁ〜

って、ことで毎度知らべるのも忘却が著しい還暦のおじさんなので、ここに記すとしよう。

参考記事を探して、辿りつくと
SWELLの…
get_ogp_inwp.php

もうちょっと親切な記事では…
/plugins/get_ogp_inwp.php

そもそも初心者はそれがどこかも分からんw

adono-xxx:レンタルサーバーで名前を付けた自分のWordpress置場な!

\wp-content
\themes
\swell
\classesの下の

\plugins
\get_ogp_inwp.php

と書けカスめ!(有料やて…wウケる。直せテーマ!治せ頭!)
adono-xxx\wp-content\themes\swell\classes\plugins\get_ogp_inwp.php

これを編集する。
ちなみに私は、
大手レンタルサーバーでは最安のロリポップさんなので、ロリポップだけ詳しく書かせて頂きます。





「ログイン」して
左メニューから
「サーバーの管理・設定」
「ロリポップ!FTP」
自分で名前を付けた修正したいファイル名をクリック
※複数ある場合は、上から順番に修正しよう〜

\wp-content
\themes
\swell
\classes
\plugins
\get_ogp_inwp.php

ここまで潜ると

中味が見れるはず。。。
※実際直接PHP触るので、書き換えに失敗するとエラー表示やHPが最悪立ち上がらなくなるので、修正前に修正ファイルをコピーしておくことが望ましい。

くれぐれも自己責任でね







<?php・・・

*あとなんだかんだ中味は書いてありますが
一応全部コピペして

1.メモ帳に貼り付ける
2.Ctrl +f
3.public static function parse で検索し

*---
// 非推奨な mb_convert_encoding の代わりに mb_encode_numericentity を使ってhtmlエンコード
から
// reset libxml_error
の間を
*---

// 非推奨な mb_convert_encoding の代わりに mb_encode_numericentity を使ってhtmlエンコード

//2024.8.1-update
$response_body = mb_convert_encoding($response_body, 'UTF-8', 'ASCII, JIS, UTF-8, EUC-JP, SJIS');
$response_body = mb_encode_numericentity( $response_body, [0x80, 0x10FFFF, 0, 0x1FFFFF ], 'UTF-8' );


// Avoid getting a loadHTML () parsing error
$old_libxml_error = libxml_use_internal_errors( true );

// Load HTML
$doc = new DOMDocument();
$doc->loadHTML( mb_convert_encoding($response_body, 'HTML-ENTITIES', 'UTF-8') );
//2024.8.1-update ここまで

// reset libxml_error

こう書き換える。
と、今編集中のWordpressのブログカードも上手く表示するようになる。
一応Wordpressのキャッシュもクリアーしてから表示するように。

Wordpress_キャッシュクリア.png

例1:一発目はこう修正したが上手く表示せず
// Load HTML
//$doc = new DOMDocument();
//$doc->loadHTML( $response_body );
$doc = new DOMDocument();
$doc->loadHTML( mb_convert_encoding($response_body, 'HTML-ENTITIES', 'UTF-8') );



例2:二発目はこう修正したが上手く表示せず
$response_body = mb_encode_numericentity( $response_body, [0x80, 0x10FFFF, 0, 0x1FFFFF ], 'UTF-8' );
// Avoid getting a loadHTML () parsing error
$old_libxml_error = libxml_use_internal_errors( true );
// Load HTML
//$doc = new DOMDocument();
//$doc->loadHTML( $response_body );
$doc = new DOMDocument();
$doc->loadHTML( mb_convert_encoding($response_body, 'HTML-ENTITIES', 'UTF-8') );



例3:三発目に成功!〇
//2024.8.1-update
$response_body = mb_convert_encoding($response_body, 'UTF-8', 'ASCII, JIS, UTF-8, EUC-JP, SJIS');
$response_body = mb_encode_numericentity( $response_body, [0x80, 0x10FFFF, 0, 0x1FFFFF ], 'UTF-8' );
// Avoid getting a loadHTML () parsing error
$old_libxml_error = libxml_use_internal_errors( true );
// Load HTML
//$doc = new DOMDocument();
//$doc->loadHTML( $response_body );
$doc = new DOMDocument();
$doc->loadHTML( mb_convert_encoding($response_body, 'HTML-ENTITIES', 'UTF-8') );
//2024.8.1-update ここまで

今回はちゃんとrenameしてから作業しましたよぉw
あまり深く理解はしていないものの、既に修正していた先人がいたので順番に試していった結果でございます。昔から適当にやって。。。「だから貴方はダメなのよぉ」〜と女上司に言われたプログラマー?SE?時代を思いだした次第でございます。

だから貴方はダメなのよ02.png


< 参考にさせて頂いた記事 >
SWELL不具合:関連記事ブロック(ブログカード)文字化け対策カスタマイズ
ブログカード文字化け対策
[解決済] ブログカードのキャッシュをクリアするとページが表示されなくなってしまう


それでは、またね〜
posted by あどのまつり at 01:40 | ブログ

Build a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: