メシのタネ

Webプログラミング 備忘録

  • AWS移行でコケ中

    現在このWebサイトが稼働している、このサーバーのMySQLをマスターとし、AWS上のRDSをスレーブとして、データ移行をしようと思ったが、バイナリロギングの取得が上手くいかない。多分の手順VPSのDBでスレーブ用のユーザ作成バイナリロギングを行うスレーブ側RDSにマスターのDUM[...]

    続きを読む
  • AWS ソリューションアーキテクト アソシエイトに合格しました。

    実は、今日までIT無資格でした。ええ歳だし、そろそろなんか資格取っておくかーと考えだしたので、取って嬉しい資格を取ろうと思ってたところ、AWSの資格あったなーと思って、調べてみたら、みんな14日で受かる!とか言ってるので、じゃあというこで、試験日14日後とかにして、試験の予約入れたのが地獄の始まり[...]

    続きを読む
  • DOMをPHPで操作できたらいいよね

    そうだよね。そう思うよね。JavaScriptでやると、画面がガタついたりするもんね。そうならないようにする方法もあるかもしれないけど、僕はできませんので、サーバー側でなんとかできたらええなぁと思って挑戦したけど、できませんでしたよ。PHP標準でHTMLをDOMにできるらしい今、技[...]

    続きを読む
  • 設計書ってなんで書くの?

    設計書をなぜ書くのかから始めてかれこれ3年近くこの禅問答をやっているわけですが、いまだに答えは出ません。ただ、その禅問答をやる中で設計書に対する取り組み方は大きく変わったので、その一部でも書いていきたい。基本設計はとにもかくにも必要だと思う設計書はいらぬ!という話をよく聞くし、自分[...]

    続きを読む
  • 書ききってやる。

    久々に書いてみる。久々に文章を書くということをやってみようと思う。伝える作業を観察したいと思ったからそうしたいと考えた。情緒的な文章は基本的にゴミ箱にぽいしてきましたが、情緒的なのも自分だと思う。「文章をかくという作業は、とりもなおさず自分と自分をとりまく事物との距離を確認すること[...]

    続きを読む

タームとかカスタムタクソノミーとかの扱い

wpppppppp

あんまりWordPressやってても本番はカテゴリで管理させてたりする、または保守ごと自分でやってたりするので、カスタム投稿とかタクソノミーとか自分のサイトでしか使った事が無かったんですけど、つい先日ばりばり触る機会があって、色々覚えたのでメモしておこうと思います。まぁ便利だなぁ、なるほどなーと思いました。結局、カスタム投稿とかタクソノミーは、サイト管理させる場合には物凄く良いもんだという結論に落ち着きました。

カスタム投稿で絞込み


カスタム投稿のトップで知ってると良いもんですよね。このコードだと全件表示ですが、’posts_per_page’ とpagedとか弄ればページを分けて使う事ができます。

現在表示ページのタームスラッグを取得


$termと書くだけで取得できます。いや、マジで取得できます。parse_urlとかして~とか考えてたんですけどそんなことしなくても出来ます。

タームスラッグからタームの情報を引っ張る


さっきのはスラッグ名しか取得できないので、$term一覧とかやりたくても、スラッグになっちゃってイラツキます。そんなイラツキを解消してくれるのが、このget_term_by関数です。この関数は第一引数をslugにすることによってタームのスラッグ名から対象のタームオブジェクトを引っ張ってきてくれます。戻り値はオブジェクトなんで、データの引き出しは名前出したいなら、obj->nameとなります。タームIDからも検索できますが、タームスラッグ取るのが割りと手軽にできるのでスラッグから取ってきたほうが使い勝手がいい気がします。

投稿からターム情報の取得(タームIDとか名前とかスラッグとか)


これで出来るのは、「投稿に属するカスタムタクソノミーのタームの取得」です。「タクソノミーに属するターム一覧を取得する」のは、別の手法で実現します。

タクソノミーに属するタームの一覧を取得する


さっき言ってた別の手法を紹介します。あくまで一例なので、もっと良い方法は沢山あると思います。

これで$taxonomysにタクソノミーが持ってるターム情報が入ります。で、これが入れ子になっている場合は、この$taxonomysオブジェクトをループでぶん回して、タームID抽出して、もう一回get_termsを使い、そのパラメータとして、作った配列のparentにタームIDを入れていけば、その子タームを取得する事が出来ます。

というわけで、久々の記事更新でした。

関連記事