esc_js

説明

string esc_js( string $text )
文字列をインラインJavaScript向けにエスケープ処理する。

パラメータ

  • $text
    文字列を指定。

返り値

エスケープ処理した文字列を返す。

注意

具体的には次のような処理を行っている。
  • ・文字エンコーディングUTF-8における無効な文字を取り除く。
  • ・特殊文字をHTMLエンティティに変換する。
  • ・'(シングルクォート)のHTMLエンティティを'に変換する。
  • ・"\r"を除外する。
  • ・"\n"を"\\n"に置き換える。

使用例

  • 文字列をインラインJavaScript向けにエスケープ処理する。
    <?php $escaped_text = esc_js( $text ); ?>

フィルター

[2.0.6]エスケープ処理した文字列を返す前に'js_escape'フィルターを呼び出す。パラメータ$safe_textにはエスケープ処理した文字列が、$textには本関数が受け取った内容が格納されている。
return apply_filters( 'js_escape', $safe_text, $text );

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/formatting.php

最終更新 : 2019年01月24日 11:49



お勧め

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

ブロックエディターの色設定を変えてみる(2019年12月11日 更新)

バージョン5.3で機能強化されたブロックエディター。対応を考えて新テーマ「Twenty Twenty」のソースコードを眺めていく。

5.3の新機能:日付とタイムゾーン(2019年10月2日 更新)

WordPress 5.3 Beta 1」に記載されていた「Time/Date component fixes」という見出し。開発者向として新しい関数の追加や多くのバグが修正されたとなっており、チェックせざるを得ない。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。