zishu's blog

zishu's blog

一个热爱生活的博主。https://zishu.me

Anghunk テーマは、バックエンドのコメントリストで絵文字をどのように解析しますか?

本文は Anghunk テーマの開発ドキュメント専用です。
https://github.com/98fuel/Anghunk

このソリューションは夢繁星の協力の下で完成しました。

イントロダクション#

Anghunk コメントは多くの美しい絵文字を含んでいますが、通常、Typecho バックエンドではこれらの絵文字を正常に解析することができません。以下の図のように;

image


しかし、私が絵文字を解析した後は、以下のように変わります。この機能が必要な場合は、以下の手順に従ってテーマを改造できます。

image

修正#

/admin/manage-comments.php ファイルを開き、ヘッダーに挿入します:

/*
* 絵文字を解析する
*/
function getparseBiaoQingComment($content) {
	$emopath=$_SERVER['REQUEST_SCHEME'].":". DIRECTORY_SEPARATOR . DIRECTORY_SEPARATOR . $_SERVER['HTTP_HOST'];
	$emo = false;
	global $emo;
	if(!$emo) {
		$emo = json_decode(file_get_contents(dirname(dirname(dirname(__FILE__))).'/zburu.com/usr/themes/Anghunk/libs/OwO.json'), true);
	}
	foreach ($emo as $v) {
		if($v['type'] == 'image') {
			foreach ($v['container'] as $vv) {
				$emoaa="::".$v['name'].":".$vv['icon']."::";
				$content = str_replace($emoaa, '  <img style="max-height:40px;vertical-align:middle;" src="'.$emopath.'/usr/themes/Anghunk/libs/emotion/'.$v['name'].'/'.$vv['icon'] .'.png"  alt="'.$vv['text'] .'">  ', $content);
			}
		}
	}
	return $content;
}

私が配置した位置に注意してください、必ず <?php ... ?> の間に入れてください

image

166行目 を見つけて、タグ内のコードを下記の注釈に置き換えてください。

<div class="comment-content">
   <!-- 絵文字付きコメントを解析して出力 -->
   <?php $con=$comments->content; echo getparseBiaoQingComment($con); ?>
</div> 

その後、バックエンドのコメントリストに戻ると、コメントが正常に解析されているのが見えます。この方法は Anghunk テーマのみに適用されます。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。