Advanced Custom Fields の「関連」「投稿オブジェクト」はとても便利だけど、非公開の記事まで公開されちゃから要注意だよ、という話。

Advanced Custom Fields プラグイン。
めっちゃ便利です。
WordPress案件だと必須だというくらい重宝させていただいています。

で、その機能の中に「関連」「投稿オブジェクト」というフィールドタイプがあります(両方共似たようなもん)。
ブログ記事に関連する記事を手動でピックアップして関連付けるという機能です。
・シリーズ物の記事の過去記事を関連付けたり。
・ブログ記事に、店舗用カスタム投稿を関連付けて、新たな導線を作ったり。
・トップページ用のスライダーをオプションページで作成したり。

で、つい最近、それについて納品先から指摘がありました。
「非公開記事が出ちゃってるんだけど……。」

(;・∀・)

出ますね。
非公開記事も予約投稿も選択できちゃうし、公開してないのに出ちゃいますね。

というわけで、こちらの対応はテンプレートファイルからの呼び出し側にてコントロールします。
なぜ、プラグインの方を改修しないの?という疑問については、予約投稿をしたものも「関連」で選択したいし、という理由です。

ついでに、非公開記事については、管理者ログイン中には【非公開: 記事タイトル】という感じで出すようにします。
(通常のループの中と似たようにします)

以下のスクリプトは、オプションページでトップページ用のおすすめ記事を出す!という例になります。

とっても便利なプラグインはとっても便利だけど、自分が作っていないだけに全仕様を把握して使うわけではありません。
ちゃんと動く理屈を把握して使いましょうね、という話でした。

WordPressの固定ページで、WP_Queryで記事を取得するもページネーション(the_posts_pagination)がうまく動作しない場合の解決方法。

ちょいと調べてみたけど、結構その対応手段がネットに公開されていなかったので、ソース調べてみた。

get_the_posts_pagination() 内で、$GLOBALS['wp_query']->max_num_pages が1以上じゃないと処理をしないのに、固定ページ内で WP_Query を回しても $GLOBALS['wp_query']->max_num_pages には値が入っていないのが原因。

なので、自分でぶっ込んでやれば良いみたい。

こんな感じ。(2016年1月28日現在。WordPressのバージョンは4.4.1)

Gitで差分ファイルのアーカイブ(ZIP)を取得する。特に“/usr/bin/git: Argument list too long”と怒られた人向け。

これに至った経緯。

・すでに稼働中のWebサイト(他社が構築したもの)の改修案件。
・既存のソースをすべてGitにぶち込んで、SourceTreeで管理。
・WordPressで構築されているのでファイル多杉。差分ファイルだけを納品したい。

みたいな感じ。

20150528_01
こんな感じで、Commandクリックで2つ選択して、その差分ファイルをZIPで書きだそうぜ!という試み。

手順としては、ターミナルから動作するシェルプログラムを作成して、それをSourceTreeのカスタムアクションに登録して起動させるというもの。

まずはシェルの作成。

diff_archive.sh

ネットでよく見かけるのは、

こんな感じのもの。この場合、差分ファイル数が多すぎる場合、/usr/bin/git: Argument list too longって怒られます。その対策として、多少環境に依存しちゃいますが、xargsでgit archiveに放り込んで行きます。

んで、このシェル(diff_archive.sh)に実行権限を付与。
右クリックの「情報を見る」で、ユーザ行の実行チェックボックスをチェック。

次に、そのシェルプログラムをSourceTreeのカスタムアクションに登録。

20150528_02
SourceTreeの環境設定から、カスタムアクションタブを開いて、アクションを追加。

これで準備完了。
このエントリーの最初の画像のように、2つのコミット行を選択して、右クリック。
カスタムアクションから「指定された差分をZIPで書きだす」(追加したアクションで登録した名称)をクリックで、gitのディレクトリに_diff_archive.zipが書きだされます。

参考サイト

Argument list too longって怒られない人向け
http://ics-web.jp/lab/archives/4475

怒られちゃった人への対処方法
http://blog.shnr.net/gitで差分のエクスポート/

で、このページがその両方をまとめたものになります。

Gitが、おもしろいほどわかる基本の使い方33〈バージョン管理、SourceTree、Bitbucket〉
大串 肇 久保靖資 豊沢泰尚
エムディエヌコーポレーション
売り上げランキング: 4,591

WordPressで、特定のプラグインの更新通知を非表示にする方法について、ネットの情報間違ってないかな?

このエントリーのタイトルで検索すれば、山ほど情報が出てくるんだけど、そのどの情報も、

functinos.php

ってありますよね。
これやると、すべてのプラグインの更新通知が非表示になるんですけど。

ってやれば、その特定のプラグインだけ非表示にできたんだけど、それっぽい情報がどこにも無い。
この辺、ソースを読んでフィルタの挙動を見るのが正しい方法なんだろうけど、時間がなくて手探りしかできない状態。
誰か……。

WordPressにて、メディアアップローダーからCSVファイルをアップして、自動的にテーブルを作成するショートコードをテキストボックスに自動挿入!

CSVファイルをアップして、自動的にテーブルをつくるプラグインが欲しいなぁと思って検索したら、あっと云う間に見つかりました。

» CSVファイルのデータからテーブルを表示させるショートコード | Simple Colors

素晴らしい。Simple Colorsさん、素敵です。

しかしこれだと、アップしたファイルのURLをコピーして、エントリー画面にてテキストボックスにペーストして、それを元にショートコードを作成するという流れとなり、クライアント様にこのショートコードを入力させるのはかなりハードルが高そうなので、自動で投稿に挿入するように機能を追加してみました。

続きを読む WordPressにて、メディアアップローダーからCSVファイルをアップして、自動的にテーブルを作成するショートコードをテキストボックスに自動挿入!