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

カレンダーのずれ

原因は数日前に追加したカウントダウンタイマーのタイムゾーン設定でした。
‘Asia/Tokyo’ではなく’UTC+9’に変更したら直りました。
それにしても、気付くのが遅かったですね。
数日間恥ずかしい状態になっていました。
あまり更新しないので、ブログ自体見ることがないとこういうことになりますね。
でも、お陰様で他のおかしいところも発見できたので良かったです。
“災い転じて福となす”ですかね。

カウントダウン・タイマー

一年以上先の大会ばかりだったので、近場の大会を追加しました。
スライダーのキャプションがありますので、これ以上の表示は無理です。
秋は“スポーツの秋”と言われるだけあって、スポーツの大会が多いですね。
ただ、9月はまだ暑い日が多いので選手のコンディション管理は大変でしょうね。
日本人選手の活躍とともに大会の盛り上がりを大いに期待しています。

カウントダウン表示変更

FIFAワールドカップ2026はスペインの優勝で幕を閉じました。
開幕するまでのカウントダウンをして、それ以後は開幕してからの日数を自動で切り替えて表示させていました。
お陰で開幕から閉幕まで38日もかかることが分かりました。
いやー、今回の大会は色々と物議を醸しましたね。
ある意味それだけ面白かったのかもしれませんね。
いつまでも経過日数を表示させておく訳にはいかないので、
今度はラグビーのワールドカップ2027に変えました。
2027年10月1日のピンポイントであと何日かを調べると
1日ずれているようなんですが、設定が間違っているんでしょうか。

何でこんな仕様なんだろう?

こう思わせるのが、検索キーワード未入力時(空欄やスペースのみ)に公開済み投稿や固定ページが「全件表示」されることだ。
AIに尋ねてみると、「WordPressが誕生した初期バージョンから続く標準のデフォルト仕様」という答えが返ってきた。
以前はこうではなかったという説もあるけど、どちらが正しいんだろう。
これって、閲覧者に対する利便性のためなのかなぁ。
未入力検索を意図的にやっている人の目的って何なんだろうか。
もし、間違ってそうなったのであれば、面食らうんじゃないだろうか。
投稿者とか管理人はログインすれば、投稿や固定ページ全件なんて簡単に見られるのだからこの機能は必要ないと思う。
逆にこの仕様に納得できない管理人としては、この仕様を止めて404に飛ばしたりフロントページを表示させたりとかするように改造する必要がある。
このブログではfunctions.phpに必要なコードを書いて対処している。

カウントダウンタイマーをリニューアル

これまでは指定日まで、あと何日かを計算して表示するPHPを使っていましたが、
指定日を過ぎるとマイナスの数字が表示されてしまうようになっていました。
それに文章もおかしなことになってしまうので、次のイベントに切り替えが必要でした。
そこで、切り替えを忘れてしまっても良いように、指定日を過ぎると経過した日数を
自動で表示するようにしてみました。
まあ、いつかは手動で切り替えが必要ですが、これで数日は切り替えが遅れたとしても安心です。
なお、モバイル版は左サイドバーに表示させています。

私的SSL化考察

重い腰を上げて遂にこのブログもSSL化することに・・・。
と言っても、やったことはレンタルザーバーのユーザー専用ページでhttp用のリストから
https用のリストへURLを移して、あとはWordPressのプラグインの中に自動的にSSL化してくれるものがあるので、
それを導入しただけ。
何と簡単なことか。
しかし、注意すべき点もいくつかある。
例えば、画像を表示するために外部のURLを貼っているとしよう。
それがhttpsに対応していれば何の問題もないのだが、
対応していない場合はデットリンクとなり
ブラウザがロードを繰り返すことになる。
最終的にはロードを諦めるようだが、javascriptのロードがその後となるようなブラウザだと問題は致命的となる。
モバイル用のサイトでメニューを表示させるためにjavascriptを使っている場合は、
メニューがなかなか表示されないことになってページ移動が儘ならない。
画像だけではなく、cgiやhtmlのページを表示する場合にも注意深くURLを変更する必要がある。
つまり、ただ単にhttpをhttpsに変更すれば良いっていうことではない場合もある。
まあ、SSL化の作業が終わったら、すべてのページでちゃんと鍵マークが付くか確認しよう。

2018/04/18 加筆
天気予報、ニュースなど借り物のパーツはデッドリンクを含む画像やフラッシュが使われていることが多く、
SSL化したサイトには向かないようだ。よって、このブログのウィジェットからも外すことにした。

前の記事の続き

今回採用させてもらったテーマは”Mobile Friendly”というもので、
最初からスライドバーを出現させるスクリプトが備わっている。
しかも片方からだけではなく、左右両方から出てくるやつがだ。
しかし、運用の仕方によっては長所ばかりの機能が付いている訳ではない。
例えば、スライドバーを開いて、それを閉じるにはどこをクリックまたはタップしても
OKのような作りになっている。
これは一見便利なようだが、このブログのように階層があるメニューの場合はNGである。
理由は、ポップアップのメニューが開くと同時にサイドバーは閉じてしまうからだ。
逆に階層構造ではないメニューには最適かもしれない。
では、どのような対処をしたかというと、階層の親メニューだけクリックが無効になるように
スクリプトに少し加筆した。
あと、最初から入っている検索フォームは使い物にならないようだ。
自分でsearchform.phpを用意すれば問題なしかと思いきや、そうは問屋が卸さない。
ここでも前述のクリック問題が発生する。
アコーディオンメニューは安易にプラグインを使うのではなく、
十行足らずで間に合うfunctionをこれまた加筆すれば良いでしょう。
あとはCSSで如何に見栄え良くするかの問題です。
スライドバーの開閉にはトグルボタンを取り付けてカッコよく見せたいのですが、
このスクリプトを改造するのは我々素人にはちょっと無理でしょう。

遅ればせながら・・・

このブログもやっとレスポンシブ化に着手。
今回は両サイドから出てくるスライドバーを採用することに。
右か左から出てくるスライドバーはものすごい数のスクリプトが公開されていますが、
両方から出てくるものは多くはありません。
あったとしても機能的に首を傾げたくなるものや、
やたらとファイルのサイズが大きかったりします。
面倒だからとテーマも探しているうちに、スライドバーのスクリプトを
含んでいるものがあったので、それを採用することに。
しかし、望んではいないというか使わないであろうスクリプトもかなり含まれていましたので、
スライドバーに関するものだけ、と言ってもたった一つだけ採用させてもらうことにしました。
結局テーマのスタイルシートも従来のものを使うことにしました。
スマホやタブレットなどのデバイスへの対応は、
プラグインのマルチ・デバイス・スイッチャーを利用。
基となるテーマはレスポンシブ化が既になされているので、
あまり変更するところはなかったような気がします。
一番大変だったのは、やはりスライドバーとカスタムメニューがそのまま使える
アコーディオンメニューの導入と調整です。
どのように大変だったかは次の記事で・・・。

カスタムメニューで任意のアイテムに”current”を付ける

例えば、このブログのような運営をしている場合、メニューの「WEBLOG」というところには
index.phpにより表示される記事のページにしか”current”というクラス名は付かない。
言い換えれば、投稿やコメントの個別ページ、カテゴリー、アーカイブ、検索などのページには
“current”は付かない。
これをWEBLOGに関するところでは全部”current”が付くようにする方法は、
WordPress Codexに条件分岐のテンプレートタグとして以下のように載っています。

<?php
add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);
function special_nav_class($classes, $item){
     if(is_single() && $item->title == "Blog"){ //この行は状況により変更が必要
             $classes[] = "special-class";
     }
     return $classes;
}
?>

因みに”is_single()”の条件分岐だと投稿やコメントの個別ページにしか”current”は付かないようだ。
“is_singular()”だとカテゴリー、アーカイブ、検索のページまでカバーされる。
ただ、注意しないとブログのトップページに”current”が重複して付いてしまったり、
他のアイテムを表示しているときにも同時に”current”が付いてしまう。
除外するための”!is_xxx()”(”xxx”のところには”single”,”singular”,”page”などが入る)を
忘れないようにしよう。