関数一覧の参考リンク
ショートコードの作成
functions.php に追記する。
add_shortcode( ショートコード名, 呼び出す関数名 );
function shortcode_RedHelloPrint(){
$msg = '<p style="color:red;">' . こんにちは . '</p>';
return $msg;
}
add_shortcode('red_hello', 'shortcode_RedHelloPrint');
上記で作成したショートコードの呼び出し
こんにちは
こんにちは
ショートコードの作成:引数あり
引数$attsにショートコードで指定した属性情報を受け取る。
function shortcode_ColorHelloPrint($atts){
$atts = shortcode_atts(array(
'color' => 'red', //colorの初期値
'font-style' => 'normal',
'font-weight' => 'normal'
),
$atts,
'color_hello'//ショートコード名。省略可能だが含めるのが推奨
);
$msg = "<p style=\"color:{$atts['color']}; font-style:{$atts['font-style']}; font-weight:{$atts['font-weight']};\">こんにちは</p>";
return $msg;
}
add_shortcode('color_hello', 'shortcode_ColorHelloPrint');
上記で作成したショートコードの呼び出し
こんにちは
こんにちは
こんにちは
こんにちは
こんにちは
こんにちは
こんにちは
こんにちは
上記例は 'font-style' のように変数名で使えない文字、ハイフン(-)が含まれた文字をキーにしていたため、$atts['font-style']で連想配列から値を取得しているが、extractを使用して変数名に取得する方法もよく見る。
function shortcode_ColorHelloPrint2($atts){
$atts = shortcode_atts(array(
'color' => 'red', //colorの初期値
'style' => 'normal',
'weight' => 'normal'
),
$atts,
'color_hello2'//ショートコード名。省略可能だが含めるのが推奨
);
extract($atts); //連想配列のキーから同名の変数を作成し、値も代入する
$msg = "<p style=\"color:{$color}; font-style:{$style}; font-weight:{$weight};\">こんにちは</p>";
return $msg;
}
add_shortcode('color_hello2', 'shortcode_ColorHelloPrint2');
上記で作成したショートコードの呼び出し
こんにちは
こんにちは
ショートコードの作成:コンテンツを囲む
[ショートコード名]コンテンツ[/ショートコード名]//テキストを外側から渡してもらって、赤色で出力
function shortcode_ColorStringPrint($atts, $content = null){
$msg = "<p style=\"color:red;\">{$content}</p>";
return $msg;
}
add_shortcode('color_string', 'shortcode_ColorStringPrint');
あいうえお
あいうえお
引数ありの場合
//テキストを外側から渡してもらって、赤色で出力(引数あり)
function shortcode_ColorStringPrint2($atts, $content = null){
$atts = shortcode_atts(array(
'color' => 'red', //colorの初期値
'style' => 'normal',
'weight' => 'normal'
),
$atts,
'color_string2'//ショートコード名。省略可能だが含めるのが推奨
);
extract($atts); //連想配列のキーから同名の変数を作成し、値も代入する
$msg = "<p style=\"color:{$color}; font-style:{$style}; font-weight:{$weight};\">{$content}</p>";
return $msg;
}
add_shortcode('color_string2', 'shortcode_ColorStringPrint2');
かきくけこ
かきくけこ
コンテンツにショートコードが含まれる場合
囲むコンテンツにショートコードが含まれる場合、shortcode_unautopを実行することでコンテンツ内のショートコードが全て実行される。
[card_box]
[card_item ...]
[card_item ...]
[card_item ...]
[/card_box]
add_shortcode(
'card_box',
function($atts, $content = null){
$content = do_shortcode( shortcode_unautop($content) );
if($content){
return '<div class="cardbox">' . $content . '</div>';
}
return '';
}
);
テンプレートファイルからショートコードを呼び出す
do_shortcode($content)
使用例
<?php do_shortcode('こんにちは
'); ?>
テーマのディレクトリURLを取得
<?php echo get_template_directory_uri(); ?>
実際に取得されるURL例
https://peralab.com/wp-content/themes/perapera
wp_headアクションをスタートさせる
<?php wp_head(); ?>
</head>タグの直前で使う。
wp_head()を実行しないとプラグインなどで一部機能が動作しなくなる。
<?php wp_footer(); ?>
</body>タグの直前で使う。
wp_footer()を実行しないとプラグインなどで一部機能が動作しなくなる。
管理画面で入力された情報を取得 get_bloginfo
bloginfoは結果を直接ブラウザーに表示する。
PHPで変数に取得したい場合はこちらを使う。
ブラウザーに表示する場合はechoを使う。
<?php $bloginfo = get_bloginfo( $show, $filter ); ?>
$show:取得したい項目のキーワード名(初期値は 'name')
$filter:(オプション) 取得した値に適用するフィルターを指定するキーワード。
初期値: 'raw'
'display' - $show に従って取得した値を wptexturize() 関数へ渡してから呼び出し元へ返す。
'raw' - $show に従って取得した値をそのまま返す。
よく使いそうなキーワード
'name' - 管理画面の「設定 > 一般」で設定された「サイトのタイトル」
'description' - 管理画面の「設定 > 一般」で設定された「キャッチフレーズ」
'wpurl' - 管理画面の「設定 > 一般」で設定された「WordPress アドレス (URL)」
'url' - 管理画面の「設定 > 一般」で設定された「サイトアドレス (URL)」を表示するものです。home_url()関数を使用するほうが推奨されている。
'admin_email' - 管理画面の「設定 > 一般」で設定された「メールアドレス」
設定の読み込み get_option
<?php get_option( $option, $default ); ?>
WordPressの各種設定を変数に取得する。
書き込み用のupdate_option、削除用のdelete_optionもある。
$変数 = get_option( $option, $default );
$option:(必須)取得するオプションの名前。小文字のみ。
$default:(オプション)値が存在しない場合のデフォルト値。初期値はfalse
例)
$bname = get_option('blogname', 'NO NAME');
オプション名はオプション設定リファレンスを参照。
設定の変更 update_option
<?php update_option( $option, $new_value, $autoload ); ?>
$option:(必須)設定するオプションの名前
$newvalue:(必須)保存する設定値
$autoload:(オプション)通常は指定しない。「yes」の文字列を指定すると、その設定はWordPress起動時に自動的に読み込まれる。
オプション名はオプション設定リファレンスを参照。
設定の変更 delete_option
delete_option($option);
$option:(必須)削除するオプションの名前
オプション名はオプション設定リファレンスを参照。