ワードプレスの投稿画面と固定ページの管理画面にカスタムフィールド追加しh1を取得する方法

ワードプレスの投稿画面と固定ページの管理画面にカスタムフィールド追加しh1を取得する方法

タイトルのままですが、

WordPressでページごとにh1を変えたくて、
また、カスタムフールドに入れたキーワードでh1にしたい場合、以下のようにすると出来ます!

functions.phpに以下を追記してください!

// SEO関係 h1とか
// カスタムフィールド追加
add_action('admin_menu', 'add_custom_fields');
add_action('save_post', 'save_custom_fields');
 
function add_custom_fields() {
  add_meta_box( 'my_sectionid', 'カスタムフィールド', 'my_custom_fields', 'post'); // 投稿管理画面に表示
  add_meta_box( 'my_sectionid', 'カスタムフィールド', 'my_custom_fields', 'page'); // 固定ページ管理画面に表示
}
 
function my_custom_fields() {
  global $post;
  $meta_keywords = get_post_meta($post->ID,'meta_keywords',true);
  $h1 = get_post_meta($post->ID,'h1',true);
  $noindex = get_post_meta($post->ID,'noindex',true);
  if($noindex==1){ $noindex_c="checked";}
  else{$noindex_c= "/";}
 
  echo '<p>キーワード(meta keyword)カンマ区切り。2〜6つまで<br />';
  echo '<input type="text" name="meta_keywords" value="'.esc_html($meta_keywords).'" size="40" /></p>';
  echo '<p>大見出し(h1)40文字以内を推奨<br />';
  echo '<input type="text" name="h1" value="'.esc_html($h1).'" size="50" /></p>';
  echo '<p>低品質コンテンツならチェックすると「noindex」に<br />';
  echo '<input type="checkbox" name="noindex" value="1" ' . $noindex_c . '> noindex</p>';
}
 
// カスタムフィールドの値を保存
function save_custom_fields( $post_id ) {
  if(!empty($_POST['meta_keywords']))
    update_post_meta($post_id, 'meta_keywords', $_POST['meta_keywords'] );
  else delete_post_meta($post_id, 'meta_keywords');
 
  if(!empty($_POST['h1']))
    update_post_meta($post_id, 'h1', $_POST['h1'] );
  else delete_post_meta($post_id, 'h1');
 
  if(!empty($_POST['noindex']))
    update_post_meta($post_id, 'noindex', $_POST['noindex'] );
  else delete_post_meta($post_id, 'noindex');
}
// SEO関係 h1とか ここまで!

それから、
header.phpとかでh1を表示させた居場所に、以下を記載してください!

<?php $custom = get_post_custom(); ?>
<?php if(empty($custom['h1'][0])){ $custom['h1'][0] = get_the_title(); } ?>
<h1><?php echo $custom['h1'][0] ?></h1>

これでOKです!

ポチッ☆とクリックお願いします!
↓ ↓ ↓

  • にほんブログ村 IT技術ブログ ホームページ・サイト制作支援へ

コメントは受け付けていません。

サブコンテンツ

TOP