WordPressではバージョン2.5からショートコード(ショートコード)APIが追加され、BBSのBBCodeと同様に記事やページにもショートコードを便利に利用できるようになりましたショートコードは BBCode よりも柔軟で強力です。次に、Kayo がショートコードを紹介します。
一.ショートコードの紹介
ショートコードを使用すると、開発者は関数の形式でマクロ コンテンツを作成することでコンテンツを生成できます。この概念は少し曖昧に思われるかもしれませんが、実際には、基本的な PHP 関数を記述できれば使用できる非常にシンプルで実用的な関数です。ショートコードについては、以下で実際の例を使用してショートコードの使用法を説明します。
2.ショートコードフォーム
ショートコードは、閉じたタグと自己終了 (自動的に閉じられる) タグをサポートし、タグ内でのパラメーターの使用をサポートします。ショートコードの具体的な形式については、開発者がショートコードを作成する方法によって異なります。
Three.shortcode の例
ショートコードを使用する前に、まずテーマのfunctions.phpファイルでショートコードを定義する必要があります。例:
上記のコードをfunctions.phpに追加すると、次のような単純なショートコードが作成されます。[msc][/msc]タグを通じてショートコードを呼び出すことができます。 リーリー
記事またはページのコンテンツに上記の呼び出しを入力すると、対応する場所にウェルカム ステートメントを出力し、style.css で対応する CSS を定義してショート コードにスタイルを与えることができます。Kayo は WordPress のショートコード機能を簡単に紹介し、主にショートコードの主な概念と使用方法を紹介しました。この記事では、Kayo が、より複雑なショートコードの開発に役立つことを期待して、ショートコードのより重要な API を詳しく紹介します。
4. 関数 add_shortcode
この関数はショートコードを登録するために使用されます。上記の例を引用すると、ショートコード名とショートコード処理関数名という 2 つのパラメーターがあります。 リーリーmsc はショートコード名で、今後記事やページを作成するときに [msc][/msc] タグを直接使用してショートコードを呼び出すことができます。例の「myshortcode_function」はショートコード処理関数の名前です。以下では、ショートコード処理機能の分析に焦点を当てます。
5.ショートコード処理機能ショートコード処理関数はショートコードの中核であり、Flickr (WordPress フィルター) に似ています。これらはすべて特定のパラメーターを受け入れ、特定の結果を返します。ショートコード プロセッサは、$attr と $content という 2 つのパラメータを受け取ります。$attr は、本質的に連想配列であるショートコードのさまざまな属性パラメータを表し、$content は、ショートコード タグ内のコンテンツを表します。
上記の例のように、記事内で呼び出しが行われると、ウェルカム ステートメントが出力されます:
[msc title="ようこそ"]これは独立したブログです Kayo's Melody、このブログへようこそ[/msc]
記事が表示されると、WordPress は上記の [msc] などのショートコードをすべて登録し、ショートコード内に属性パラメーターとコンテンツがある場合、それらを分離して解析し、ショートコードのショートコード処理関数に渡します。加工後 ショートコード本来の内容ではなく、加工機能で出力された結果が記事内に表示されます。
このとき、属性パラメーターが解析され、連想配列が $attr に渡されます。たとえば、上記の例では、$attr の値は次のような連想配列になります。
リーリー
Six.shortcode_atts
shortcode_atts は、必要な属性パラメータにデフォルト値を設定したり、不要なパラメータを削除したりできる非常に実用的な関数です。
shortcode_atts() には、$defaults_array と $atts の 2 つのパラメーターが含まれています。$attr は、設定する必要がある属性のデフォルト値を表します。 リーリー$resultの結果は
リーリー'title' $defaults_array に異なる値があるため、この新しい値に基づいて 'title' が更新され、'description' の値も追加されます。 shortcode_atts() は、$defaults_array にない属性をフィルタリングすることに注意してください。$attr に 'ohter' 属性がある場合、'other' がないため、$result の結果は依然として上記の結果になります。 $defaults_array のこのプロパティ。もちろん、ここで言及されている値は属性のデフォルト値にすぎず、実際の出力値はショートコードが呼び出されたときに設定された値のままです。
7. さらに属性を解析し、属性のデフォルト値を設定しますextract() 関数は、属性をさらに解析し、属性のデフォルト値を設定するために使用されます。その機能の 1 つは、各属性パラメーター値を「$parameter name」の形式で変数に割り当てて保存することです ($title など)。例)簡単に呼び出すために、この関数を shortcode_atts() と併用すると安全に結果を出力できます。この点の具体的な使用方法については、この記事の最初のポイント「1. 関数 add_shortcode」の例を参照してください。 また、属性名の大文字は処理関数に渡される前に小文字に変換されるため、属性名を記述するときは直接小文字を使用することをお勧めします。