ギャラリータブが表示されない、の理由

ギャラリータブが表示されない、の理由
WordPressの投稿やページの編集画面では[画像を追加]して画像をアップロード&記事に挿入できます。アップロードが完了すると「画像を追加」ウインドウに[ギャラリー]タブが追加表示されて、画像が複数ある場合にはギャラリー形式で投稿に挿入することもできます。
しかし、ここでハマってしまう人はどうにも抜け出せない怪現象に悩まされることになります。起こらない人にはまったく発生しない不可思議現象なので、ネット上にも何も情報がありません。なんで?!俺だけなの?WordPress のバグじゃねぇの?何なんだよムキー!!
残念ですがそんな風では解決しません。生き方を変えてみたらどうだい?そうすりゃ案外すんなり解決するってもんだぜ。

不具合の症例

  • 「画像を追加」ウインドウで画像をアップロードしたのに[ギャラリー]タブが表示されない。
  • get_children で画像を取得できない。

そして、このような症状が発生する状況については謎に包まれています。

  • 一度[ギャラリー]タブが表示されるようになると、以降その投稿では問題が発生しない。
  • 公開済の投稿に後から画像を追加しても発生しない。
  • 新規投稿/ページで発生する気がする。
  • 発生したりしなかったりする。
  • 俺は何もおかしなことはしていない。

こんな心霊現象が起こったら、自分は呪われてるかもしれないとオノノいてしまいますね。何しろほとんどの人がお目にかからない症状です。宇宙人にさらわれたって言っても誰も信じてくれないのと同じですよ。でも大丈夫、wpxtreme はそんな貴女の味方です。オッサンは対象外です。さぁ、悩み苦しんでいた自分を嘲ったヤツらに思い知らせてやるんだ!ごめんなさい、私が悪かったです、って。

不具合の症例の原因

何故ギャラリータブが表示されないのか、何故 get_children で画像を取得できないのか。それは、ヒトコトで言えば

画像が投稿/ページにリンクされていないから。

えーっ!共学の私立ですね。ちゃうわ。驚愕の事実です。投稿/ページの[画像を追加]で画像をアップロードして[投稿に挿入]までしてるのになんでやねん。メディアライブラリにもちゃんとあるし!ホラ見てみ!画像が投稿にリンクされていないホラ、使用されてないじゃない・・・。ギャラリータブも get_children も投稿/ページにリンクしている画像が対象です。言い換えると、親に投稿/ページが設定されていない画像はギャラリータブ でも get_children でも出てこないのです。

画像が投稿/ページにリンクされない理由

この問題にぶち当たった人がどんな風に新規投稿/ページを作成しているのか、その様子が私にはハッキリと見えます。玄関を入って左側にトイレがありますね?そうでしょうそうでしょう。では、手順を再現してみます。

  1. 投稿/ページを新規追加。
  2. タイトルを入力(またはタイトル未入力のまま 3.)
  3. 「アップロード/挿入」から[画像を追加]アイコンをクリック。
  4. 画像をアップロード。
  5. パニック!

そうでしょうそうでしょう。コレの何がいけないのか。それは、ヒトコトで言えば

タイトル欄にフォーカスがある状態から、いきなり[画像を追加]しているから。

ピンときませんね。普通の人は本文を書いて、その途中で[画像を追加]します。なので問題が起こりません。じゃぁ、なんでいきなり[画像を追加]するとダメなのか。それは、ヒトコトで言えば

その時点では新規の投稿/ページがまだ保存されていないから。

ますますピンときませんね。この状態で画像をアップロードしたらどうなるでしょう。画像はアップロードされるとメディアとして保存されます。そのときに新規の投稿/ページが保存されていなければ、このメディアの親が存在しないことになります。リンク先が無い、ってことですね。あ、やっとピンときましたか。遅いわ。今更そんなこと言われてももう引き返せないところまで来ちまってんだ。
これが、ちゃんとアップロードできたのに「使用されていないメディア」になってしまうカラクリです。ほとんどヒトコトで説明できましたね。チョロいもんです。

[画像を追加]で問題を起こさないための作法

要は、画像を追加しようとする時に新規投稿/ページが保存されていれば良いので、以下のいずれかで OK です。

  • タイトルを入して、本文欄をクリックする。
  • タイトルを入力して、公開メタボックスの[編集]をクリックしてみる。
  • タイトルを入力して、そのままじっと待つ。

タイトル欄からフォーカスを外すとすぐ保存が始まります。タイトル欄でひたすら待ってるとしばらく経ってから保存が始まります。しばらくってどのくらいだよ、と思ってソースを調べ始めたアナタは今後の成長がとても楽しみです。ちなみに新規投稿/ページが保存されたよ、のサインは以下のとおり。

  • タイトルの下にパーマリンクが表示される。
  • 本文欄の下に「下書きを保存しました」と表示される。
  • [公開]ボタンの左に[ゴミ箱へ移動]が表示される。

追記:
どこかで自動保存を OFF にしてる場合、このマナーを守っても新規投稿/ページは下書き保存されないので気をつけよう。 wp_deregister_script('autosave'); とかダメよ。

システム的には「画像アップロード時に新規投稿/ページが未保存ならソッチを先に保存する」というのがベストですけど、これは不具合だ問題だお前が悪い俺は悪くない、と騒いでも何も解決しません。問題をちゃんと受け入れて、どうすれば皆が幸せになれるか、そのために自分に何ができるかを考えてみましょう。そうすれば、あなたの人生はきっと良い方向に向かいますよ。ご寄付を希望される方は CONTACT からどうぞ。

動作確認バージョン
  • WordPress 2.9.1
参照

5 Comments

  • いま、ワードプレスで編集して困ってたので助かったぁ。 RT @kzxtreme ギャラリータブが表示されない、の理由 http://bit.ly/d4DgnY

  • wordpressの怖現象に悩まされたぁ。何故か、ギャラリータブが表示されないという不可思議な・・・。とりあえず解決。軽くメモ。さて次は・・・
    http://t.co/YlDgtHly

  • 怪現象にはまっていたのを助けて頂きました。
    ありがとうございました。

  • kz kz

    解決して良かったです!
    これで心おきなく WordPress ライフをエンジョイできますね☆