MENU

【SWELL】記事作成画面にメモ欄を設置したい

目次

SWELLテーマにはメモ欄がない

本サイトではSWELLテーマを使用してサイトを構築しております。SWELLテーマは特にUIが素晴らしく非常に使いやすいのですが、記事作成画面にメモ欄がないことに気が付きました。どうやらメモ欄を表示する設定はないようで、自分で追加する必要があるみたいです。

ブログを書く際、記事についてのメモや参考サイトを載せる欄があればとても便利だなと思ったので、SWELLテーマにメモ欄を作成する方法を備忘録としてまとめておきます。

functions.phpをカスタマイズ

///////////////////////////////////////
// カスタムボックスの追加
///////////////////////////////////////
add_action('admin_menu', 'add_memo_custom_box');
if ( !function_exists( 'add_memo_custom_box' ) ):
function add_memo_custom_box(){
  //メモボックスの追加
  add_meta_box( 'singular_memo_settings','メモ', 'view_memo_custom_box', 'post', 'side' );
  add_meta_box( 'singular_memo_settings','メモ', 'view_memo_custom_box', 'page', 'side' );
}
endif;


///////////////////////////////////////
// 表示
///////////////////////////////////////
if ( !function_exists( 'view_memo_custom_box' ) ):
function view_memo_custom_box(){?>
	<textarea name="the_page_memo" placeholder="" rows="10" style="width: 100%;"><?php echo get_the_page_memo(); ?></textarea>
	<p>この投稿に記録しておきたいメモがある場合は記入してください。</p>
  <?php
}
endif;

///////////////////////////////////////
// 保存
///////////////////////////////////////
add_action('save_post', 'memo_custom_box_save_data');
if ( !function_exists( 'memo_custom_box_save_data' ) ):
function memo_custom_box_save_data($post_id){
  if (isset($_POST['the_page_memo'])) {
    $the_page_memo = $_POST['the_page_memo'];
    update_post_meta( $post_id, 'the_page_memo', $the_page_memo );
  }
}
endif;

///////////////////////////////////////
// メモ内容の取得
///////////////////////////////////////
if ( !function_exists( 'get_the_page_memo' ) ):
function get_the_page_memo($post_id = null){
  if (!$post_id) {
    $post_id = get_the_ID();
  }
  $value = get_post_meta($post_id, 'the_page_memo', true);
  return $value;
}
endif;

functions.phpに上記コードを加えることで、記事作成画面にメモ欄を表示することができます。メモ欄はドラッグで移動することもできるので、好きな場所に設置しましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Webデザイナーのmutaです。
当ブログでは主にWeb制作やITの知識について発信しています。

目次