院試が終わってちょっと暇になった
8/31まで専門科目の勉強しかしておらず,なんでもいいから他のことをしたいなと思っていました。
何やろうか考えていたところ,web開発のバイトで培った技術を使いたく,ウェブサイトのリニューアルをしたい
保守性を高めるために何をやったか
記事を増やしていけばいくほど,何か全体的な仕様を変えるときの重みが違います。
全部手入力だと,たかだか30記事しかなくても絶対に面倒です。
そこで,軽い・見やすい・JavaScriptとの親和性のあるJSONを導入しようということになりました。
細かい所も変えましたが,JSを前よりもふんだんに使ったというのが大きな変更です。
記事一覧の仕様
カテゴリ別のボタンや,ヘッダー・サイドメニューにあるリンクにdata属性をつけました。
URLの最後につくことができるパラメータ"category"を定義して判断します。
search.html?category=○○
そしてあるカテゴリに属する記事だけ抽出します。
肝心の記事カードの抽出は,JSONファイルから行います。それを記事カードにこしらえるのはJSファイルが行います。
共通部分のインクルード
ページタイトルやメタ属性,ヘッダーやフッターなどは,ほとんど全記事で共通です。
膨大なファイルの内容を変えずに,インクルードするファイル側を変えれば作業量もごくわずかで済みます。
この修正に伴い,htmlをphpファイルとしました。
目次の自動改行処理
目次は,記事のなかの大見出し(h2),中見出し(h3),小見出し(h4)を自動で抽出して作成します。
基本,この順番で箇条書きの点「・」の大きさが小さくなっていきます。
見出しレベルの大きい順に左にから右にずらしたことで,ちょっと見やすくなりました。
検索窓
スマホ・タブレットでみている方は3本線のメニューから,PCでみている方は右に検索窓が表示されています。
ここに入力すると,JSONファイルからその文字列を含むかチェックし,該当記事を洗い出してくれます。
実装したい機能
お問合せフォーム
1回ちゃんとしたものをつくりたいですね。こんなサイトに用がある人もあんまりいないですが。
ただ,個人情報を扱うのでそんな責任がもてないというの本音。セキュリティをガチガチに勉強してからですね。しばらくは外部フォームを使います。
計算問題や各種暗記の練習ができる機能
ウェブブラウザ上でできるっていうのがいいですよね。モバイルアプリ版でもいいですが。
中学生,高校生向けに数字だけ変えて何回もできる計算練習とか,ランダムで出題して爆速で暗記するためのツールとか。できたら面白そう!
メンテナンス・404ページに謎ゲーム
くだらないですが,こういう遊び心をつけたいです。
ゲームもいいですが,押せば押すほど出てくる雑学ボタンみたいなのも考えました。
時間が出来たらSQLの勉強をちゃんとしておきましょう。
SEOのために良い記事を
SEOとは検索エンジン最適化ですね。内容がちゃんとしているかはブラウザを巡回しているbotが判断します。
いい記事がないと話になりません。実装ばかりに固執せず,まともな記事を書いて検索上位にあがるようにしたいですね。