【WordPress】タイトルの頭に自動でカテゴリーを入れる

昨日7/7は次世代ラボ勉強会に行ってきました!

やっぱり同年代の人と話すとモチベが上がるし、固まった頭をほぐせるので
定期的に行くのは良さそうです^^

勉強会のときにWordpressの話を少ししたので、少し前に作った便利?なやつを公開します。

概要

タイトルの先頭や末尾に【Wordpress】のようにその記事のカテゴリー
がついていることをよく見かけるのではないでしょうか。

今回は記事の投稿時に自動で【Wordpress】のようなカテゴリーを入れるという試みです。
(厳密には更新するたびにチェックして、なければ追記する)

サンプル

外観テーマエディタテーマのための関数 (functions.php)に以下のコードをコピペして
保存するとすぐに使えるはずです。

やっていることは、記事の更新のたびに、タイトルをチェックして
カテゴリーの文字列がなかったら追加するというものです。

function auto_insert_category_to_title( $post_id, $post ) {
    $cat = get_the_category( $post->ID );
    if ( !empty($cat) ) {
        remove_action( 'wp_insert_post', 'auto_review_title' );
        $category_name = $cat[0]->name;
        //追加したい文字列形式はここで指定
        $add_title = '【' . $category_name . '】';
        if(strpos($post->post_title, $add_title) === false) {
            wp_update_post( array(
                'ID' => $post_id,
                //末尾に追加したい場合は
                //'post_title' => $post->post_title . $add_title,
                'post_title' => $add_title . $post->post_title,
                'post_content' => $post->post_content
            ));
        }
        add_action('wp_insert_post', 'auto_review_title', 10, 2 );
    }   
}
add_action('wp_insert_post', 'auto_insert_category_to_title', 10, 2);

問題点

MarkdownエディタのWP Githuber MDを使っている方は注意です!
タイトルの自動挿入と同時にMarkdown記法HTML記法に変換される問題がおこります🙄

対策わかる方は教えてください🙏

コメント

タイトルとURLをコピーしました