>>>24件の記事があります。

マルチサイトでウィジェットを共有する

下のコードで簡単にできますよ!なんて書いてあるのを見つけてやってみると、
結局できなくてはまってしまっている人が結構いらっしゃるみたいですね。

<?php
switch_to_blog(n); //nはサイトIDの数字
dynamic_sidebar( 'XXX' ); //XXXはサイドバーのID名
restore_current_blog(); //元のブログに戻すためのコード
?>

何を隠そう私もそのうちの一人で、以前は”Global Content Blocks”というプラグインの力を借りて
何とか表示できていました。
しかし、いつの間にかこの方法もNGとなり、色々と方法を探っていたところ
“Multisite Shared Sidebar”というプラグインを見つけることができました。
作者は日本の方ですから、使い方も分かりやすく説明してあります。
ただ、ちょっと説明不足のところがあると感じたのは
プラグインの有効化はネットワーク全体でしなければならないというところです。
あと、ウィジェットの一部分を取得ということはできないようです。
表示させたくない部分はCSSのdisplay:none;で対応させましょう。
DEMOとしてはサイドバー一番下の”Affiliate”がそうです。
このプラグインはファイル数も少ないし、何よりも分かりやすいので、
絶対にお勧めです。

遅ればせながらrealtime-calendarの変更

もう先月のことになってしまいましたが、
山の日が祝日なのに背景色が平日のようになっていたので変えてみた。
8月11日の固定だからコードの追加も簡単です。
他の固定の祝日のコードをコピペして、
必要な箇所を変更すればハイお終い!
というか、ちゃんと表示されるか確認をして本当の作業完了。
余談ですが、今の天皇が生前退位したら
天皇誕生日はどうなるんでしょうか。
もちろん変更になるんでしょうが、
12月23日は平成の日なんかとして祝日になるのだろうか。

tablepressのID番号が変更できないとき

先日テーブルのデータをインポートしたときに遭遇したトラブルです。
インポートそのものは簡単に成功したのですが、
ID番号が元のデータとずれていたので変更を試みました。
しかし、何度やっても受け付けてくれません。
焦って、折角インポートに成功したデータを一旦消去して、
もう一度やり直すことに・・・。
すると今度は、ID番号が一桁増えた状態で現れるという始末。
どうすれば問題が解決できるのか?
ググってみても、同じようなトラブルに遭遇した人がいないせいか
ズバリこれという解決策は見つからない。
仕方ないので、自分なりに色々とやってみました。
結論からいうと、データベースを弄るしかありません。
“wp_options” の中に “tablepress_tables”というのがあります。
問題の原因は”last_id” の値にあったのです。
例えば、値が既に “1” となっていれば、新しくインポートされる
テーブルのID番号は “2” から割り振られることになります。
筆者の場合は、そこの値を “0” にするのではなく、
テキストエリア内を全部削除してから
インポートをやり直したところ上手くいきました。
削除ではなくアレンジを加えたい場合は、いつでも元に戻せるように
エディタなどに内容をコピペしておいて作業を進めた方が無難です。

ヘッダーのcamara.jsを少し弄ってみることに・・・

どうしてもループを1回で終わらせたくて少し弄ってみました。
本当は1回ループしたあとに最初の画像を表示させて終わらせたかったのですが、
何分javascriptの知識がないもので、これが精一杯です。
因みに使ったのはbreak文。
幸か不幸かキャプションは最後消えます。
強引な感じの処理なので、ループが止まった訳ではなく
存在しない次の画像をいつまでもローディングし続けている状態になっている模様。
ネットで検索しても正しいやり方がなかなか見つからない。

LightboxがFirefoxだけで何故か機能しない問題

あくまでも私見ですが、これはjQueryとprototypeによるコンフリクトが原因ではありません。
はっきり言って、これはブラウザ側つまりFirefoxが問題なのです。
筆者自身この問題には以前に遭遇しており、解決策も書いておりました。
その記事を読んでもらっても良いのですが、ここにもう一度書いておきます。
メニューバーのヘルプより「トラブルシューティング情報」を選択すると、
「Firefoxをリセット」というボタンがあるので、それをクリックします。
問題はたったこれだけの操作で解決されます。
したがって、「Lightboxの使用を諦めなさい!」なんていうアドバイスは間違っています。
検索しても意外とこの情報は載っていないから不思議だ。

こういった具合に偉そうに書いていますが、筆者自身以前に書いていた解決策をすっかり忘れていて、
他の解決策をひねり出すために悪戦苦闘しておりました。
ここで、ひとつ疑問に思うことがあります。
Firefoxを使っている人の中に、リセットを必要としていることに気付く人はどれぐらいいるのでしょうか。
気付かない人は、Lightboxが機能しないのはソースが間違っているかコンフリクトが原因だと思うでしょう。
事実、筆者もそうでしたし、この問題の解決策を検索しても多くの人がそう思っているのが分かります。
では、リセットが必要だと気付かない人にも問題なくLightboxが見られるようにする方法はないのか。
もし解決策があれば、本当はこちらの方を先に実行しておくべきではないのか。
問題の解決策を探る過程で、筆者はLightboxが個別ページだけでは問題なく機能していることに気付きました。
そこで、headタグ内の差異を調べた結果、あるjsファイルが影響していることが分かりました。
このファイルを読み込ませる一文を加えてみたところ、見事問題解決!
これは、筆者がWp Ajax Edit Commentsとうプラグインをインストールしていたから気付けたことだと思います。
色々と試してみた結果、このファイルは指定フォルダに存在していなくても大丈夫なようです。
興味のある方はソースを見て試してみて下さい。
ただし、Firefoxをリセットする前に実行して下さい。
そうでないと、この方法で問題が解決されるかの確認ができません。

WP-Table ReloadedからTablePressへ

WP-Table Reloadedが開発打ち切りというアナウンスを聞いて、
今後使い続けて大丈夫なのだろうかと心配していたら、
TablePressの方へ移行して開発は続けられるとのことで一安心。
非常に人気が高いプラグインなので、心配された方も多かったのではないかと思います。
また、早速移行してみたものの日本語化の問題に直面していた方もおられたのではないでしょうか。
何を隠そう、筆者もその一人でした。
しかし、もうご安心下さい。バージョン1.1では日本語化はもう既になされいます。
翻訳して下さった方には厚く御礼申し上げます。
今まで蓄えてきたファイルの移行もすんなりいくようで、こちらも一安心といったところ。
機能もアップしていくとなれば、有難いことこの上ないですな。
開発者の方、本当にありがとうございます。

ヘッダーのイメージで少し遊んでみる

jQueryのプラグインでスライダーのカッコイイやつを見つけたので、ちょっと導入してみることにした。
ただし、もともとカスタムメニューでjQueryを利用して動きを付けていたので、簡単にはいかなかた。
カスタムメニューは問題なく動くのだが、スライダーの方が止まったままなのだ。
色々と調べてみるとjquery.jsではなく、jquery.min.jsでないと動かないことが分かった。
何もしないとwp-includesフォルダ内のjquery.jsが自動で読み込まれるので、
テーマフォルダ内のfunction.phpをいじって、グーグルよりjquery.min.jsだけが
読み込まれるようにした。
これも調べてみると、最新のものにすると不具合を起こす可能性があるということで
1.7.1を導入することに・・・。
結果はご覧の通りですが、残念ながらIE8以前のブラウザでは真面に動いてくれない。
ローダーをバーにすれば良いのかもしれないが、IEの都合で自分の好みを変更する気はないので
しばらくはこのままにしておくつもりだ。
一番の問題であったカスタムメニューとのコンフリクトも解消されたし、次はキャプションを
入れることに挑戦しようかと思っている。

反省しきり

あるプラグインの日本語化について分かった振りして記事を書いていたら、
何と翻訳を担当されている方から直接メールを頂いた。
自分では全然気にしていなかったのだが、この件に関してはいつの間にか
検索エンジンでトップに表示されていた。
間違った情報が載っているのに上位表示されたのでは、悪い影響を及ぼす可能性が
大きいということで、内容を改めてもらいたい旨の連絡であった。
記事の通りにやっても動作に問題はないのだが、間違いは正す必要があるし
検索エンジンの上位に偉そうに載っているのは色んな意味で問題である。
この記事に限らず、ほかの件でも十分に検証した上で書くようにしないと
恥をかくのは自分だからと、大いに反省を促された出来事であった。

キャプチャの効果

先日、スパムコメントの多さに閉口して取り付けたキャプチャですが、
効果はかなりあるようです。
スパムコメントがまったく無くなった訳ではありませんが、
激減したことは確かです。
スパムコメントに悩まされている方には導入をお勧めします。
ただし、メインのスクリプトとスタイルシートを少しいじらないと
好みのデザインにはなりません。
テーマがtwentyelevenの場合は特にそう感じます。

サイドバー用のプラグインをコンテント内に表示させる方法

説明の前にサンプルを示しておきます。
それはフロントページの「営業日カレンダー」です。
これはサイドバーに表示させるために作られたプラグインです。
ダウンロードファイルは下のサイトにあります。
www.is-p.cc/wordpress/plug-in/business-calendar/700
有効化されたプラグインをウィジェットエリアにドラッグ&ドロップする前に、
目的のウィジェットエリアができていなければなりません。
それには先ずテーマフォルダ内のfunctions.phpに
widgetを登録するところがあるので、他のID名と重複しないように注意して
新しいwidgetを書き加えます。
次はスタイルを調整するためにセレクターを決めます。
この場合のタグはdivで良いでしょう。
この段階でfunctions.phpファイルをアップしてダッシュボードから
ウィジェットエリアがちゃんとできているか確認しましょう。
筆者の場合はついでに日本語に直しています。(下図)

次にやるべきことは貼り付ける場所に次のコードを挿入します。

			<?php if ( ! dynamic_sidebar( 'sidebar-n' ) ) : ?>
			<?php endif; // end sidebar widget area ?>

sidebar-nの“n”はfunctions.phpで指定した数字に書き換えて下さい。
あとはスタイルシートを書き換えるか書き加えるなりすれば、
思い通りのデザインになるはずです。