はじめてのマルチポスト投稿

マルチポスト投稿、使い方がすこしずつ解ってきました。これ、テーマの中のfunctions.phpに書く方法がネットで紹介されていたので、その方法を使ってます。functions.phpで用意するPHPのコードは次のとおり。

1. ポストタイプを追加とは
WordPressの記事をデータベースで確認すると、wp_postsというテーブルにpost_typeという項目があり、そこにポストタイプが記録されます。そして記事として表示されるのはpost_typeが「post」のみ。

今回設定するマルチポスト投稿では、この「post」の他に記事として表示可能なpost_typeを設定し、デフォルトの「post」と同じように使えるようにします。

2. functions.phpに設定する内容
さっそくですがfunctions.phpにカスタムポストを設定する手順です。
(1) WordPressの関数、register_post_type()でポストタイプを追加する。
(2) WordPressの関数、add_filter()で、追加したポストタイプを表示する際のURLを定義する。’post_type_link’と’rewrite_rules_array’の2つを定義する。
(3) WP_Widgetクラスを継承した新しいWidgetのクラスを定義する。このクラス内に__construct()でウィジェット名定義し、widget()で機能を定義する。

3. 使い方
使い方は次のとおり。
(1) ポストタイプが有効になると、WordPressの管理メニューにデフォルトの「投稿」の他、新しいポストタイプの投稿が表示されます。このメニューでカスタムポスト投稿の記事を追加します。
(2) 記事を公開したら、表示されるかチェックします。
(3) 管理メニューから「外観」の「ウィジェット」を使い、functions.phpに追加したウィジェットを追加します。(テーマによって、表示される場所に制限があります。)

4.試した例
下記は、WordPressデフォルトのテーマ「twentysixteen」のサイドメニューにカスタムポスト投稿「最新の技術記事」用ウィジェットを追加した例です。

WordPressで初体験

WordPressを初めて使ったのは2005年か2006年くらいだったと思う。あれから、15年以上のつきあい、ということに。個人でも仕事でも使ってきた訳ですが、隅から隅まで何でも知っている訳ではない。

4月から担当することになったWebページで、さっそくさぼってきた問題が発生。いや、いろいろあって3月まで表示に使っていたテーマが使えなくなってしまった。急遽、フリーのテーマに置き換えたのだが、いろいろ問題が。

一番の問題はカスタム投稿タイプ。ネットで調べると企業向けのサイトをWordPressで作る場合、必ず使うほどポピュラーな技術らしい。しかし、これまで一度も使ってこなかったので、焦った。

まあ、なんとか表示できるようにしたものの、スキル不足を実感。こんな年ですが、まだまだ学ぶことがあるな、という感想でした。

久々のWebエンジニア

今の仕事になってから、すっかりエンジニアっぽい仕事が無くなっていました。企業の情報システムらしい問い合わせ対応とか、リストの作成とかはあったのですが、パソコンに詳しい人ならできるかも、というものばかり。

そんな中、3月末にエンジニアっぽい仕事を請け負いました。で、仕事の内容はWordPressの管理。いや、記事の作成は誰でもできるでしょう、というのは置いておいて、本番環境と同じデータでテスト環境を作り、対応することに。そのテスト環境を作っていると、エンジニアっぽいな、と充実した時間を過ごせました。