にしし ふぁくとりー:西村文宏 個人サイト

てがろぐ リリースノート

お手軽マイクロブログCGI「てがろぐ」のアップデート案内です。新機能や更新した仕様、新しいスキンなどを案内しています。
更新点だけではなく全体の機能説明をお読みになりたい場合や、CGIそのものをダウンロードしたい場合は、てがろぐ配布ページへお越し下さい。
セットアップやバージョンアップの前に最新版の使い心地を試したい場合は、動作テスト用てがろぐをご使用下さい。
次期バージョンの開発進捗状況をチェックしたい場合は、開発進捗報告ページをご覧下さい。

《最終更新: 2024年05月17日 金曜日 14時28分 》 RSSフィード

No.40

てがろぐ Ver 4.0.0 を公開しました! #Update

てがろぐ Ver 4.0.0 を公開しました。ログインセキュリティ機能、予約投稿機能、上書きスタイルシート登録機能、NSFWフラグ付き画像に対する代替画像の指定機能などの追加が主な更新点です。その他、多数の細かな機能追加や不具合修正を含んでいます。
https://www.nishishi.com/cgi/tegalog/

バージョンアップするには、tegalog.cgifumycts.pl の2ファイルだけ(※)を上書きアップロードして下さい。
データファイルや設定ファイルは、すべてそのまま引き継げます。(Ver.3以下も含む過去のどのバージョンからでも)
過去のスキンもすべてそのままお使い頂けます。(互換性100%)

※今回も標準添付スキンのソースを全体的に更新しています。標準添付スキンをそのままお使いの場合は、それらも上書きアップロードすると新仕様で表示できます。

🆕 Ver 4.0.0の更新点(概要):
《▼新機能:安全関連》
ログインセキュリティ機能:ログインに1回失敗したら直後に約2秒間だけロックする機能
ログインセキュリティ機能:ログインに連続で指定回数失敗したら、ログイン処理を指定分間ほどロック(拒否)する機能
●許可したIPアドレス以外からのログインを拒否できる設定を追加。

《▼新機能:その他の大きな機能》
予約投稿機能を追加。
設定に『上書きスタイルシート』項目を新設し、そこに書いたCSSソースを「スキンのhead要素末」または「スキン内の指定箇所」に挿入できる機能を追加。

《▼新機能:サイドコンテンツ関連》
新着投稿リストをカテゴリ別に出力できるオプションを追加。
OGP(og:image)に出力される画像がNSFWフラグ付きだった場合は、その画像ではなく代替画像を出力させる設定項目を追加。
RSSフィード内に出力される画像がNSFWフラグ付きだった場合は、og:imageと同じ代替画像にすべて差し替える設定項目を追加。
ハッシュタグの集計を停止する機能(ハッシュタグを集計しないようにする機能)。
ハッシュタグ一覧の表示順設定を、投稿数に関係なく文字コード順(昇順/降順)に固定する機能。

《▼新機能:状況・抽出関連》
[[SITUATION:CLASS]] に、表示モード名を示すclass名を追加。
[[SITUATION:CLASS]] で、スキン指定がない場合のHOMEページを表す専用のclass名 grandhome を追加。
文字数を指定して本文の一部分を抽出する記法で、三点リーダではない任意の記号を指定できる新記法 [[COMMENT:TITLE:文字数:省略記号]] 等を追加。

《▼新機能:バックアップ関連》
●設定ファイル tegalog.ini のバックアップ機能を追加。
●画像インデックスファイルのバックアップ機能を追加。

《▼新機能:細々》
●YouTubeの動画埋め込み時に、再生開始位置(秒数)を指定可能に。
●YouTubeの動画埋め込みサイズを任意に指定可能に。
●Spotifyの音楽埋め込みサイズを4種類から選択可能に(自由サイズの指定も可能に)。
●新着投稿リスト(LATESTLIST)に、所属カテゴリ名を表示できる記法を追加。
●スキンのプレビュー適用時に、絶対パスや上位ディレクトリを参照する相対パスの記述での指定を許可するか禁止するかを設定可能に。
●Powered-by表記のリンクを別タブでのリンクにできる新記法 [[VERSION:NEWTAB]] を追加。

《▼仕様改善》
●Spotifyの音楽埋め込みにも loading="lazy" を付加。
●自由装飾記法のclass名として、(英数字以外に)ハイフン記号とアンダーバー記号も使用可能に。
●新着画像リストを装飾するCSSを書きやすいように、リスト内の1項目ずつを囲むマークアップを追加。
●日付一覧にリストアップされる年月リンクの「年」や「月」という漢字だけをCSSで装飾できるよう、出力マークアップを追加。
●日付一覧・日付検索のリストで、2000年より古い日付もリストアップできるように改善。(ただし1970年以降のみ)
●日付境界バー内部の日付表記やリンクをCSSで装飾しやすいように、マークアップとclass名を追加。
●ギャラリーモードやサイトマップページモードでの表示時に「状況に応じた見出し行」に表示される名称を装飾しやすいようマークアップを追加。
●「補助出力」設定で、ギャラリーモード等のためのスキンディレクトリの指定でも相対パスを使用可能に。(従来は / や . 等の記号が強制削除されていました。)
●下げた投稿を新着投稿リストには掲載しないよう仕様改善。

《▼スキン更新》
NSFWフラグ付きの画像が新着画像リストに表示されるとき、ぼかしが枠からはみ出ないようCSSを修正。
Chromium系ブラウザで(キャプションありの)NSFWフラグ付き画像を表示したときに、画像の下側のぼかしが枠からはみ出てしまうCSSを修正。
埋め込んだツイート内の文字が大きくなりすぎる問題に対処するため、ツイート枠の横幅を最大350pxに制限するCSSを追加。

《▼不具合修正》
❎新着画像リストを構成するHTMLソースに、img要素のalt属性値が重複して出力されていた不具合を解消。
❎『画像リンクに独自のclass属性値を追加』にチェックが入っている状態で、その直下のテキスト入力欄が空っぽのとき、『空白の連続を再現 (半角空白文字の連続をそのまま見せる)』項目がONの状態だと、フラグ付き画像のclassが正しく適用されなくなる問題を解消。
❎投稿日時として50年以上前の日付を指定すると、相対時間表記(=投稿時点からの経過時間の表記)が正しくなくなる問題を修正。
❎[[CATEGORYLINKS:SITEMAP]] 等の記法を使っても「カテゴリなし(cat=-)」の場合はデフォルトスキンでの表示になってしまう不具合を修正。
❎簡易本番適用中のスキンを削除した後でログアウトしてしまうと、「スキンが見つからない旨のエラー画面」と「ログイン画面」との間を無限に行き来するだけになってしまう不具合を解消。
❎設定『本文中のテキストリンクを絶対URL(フルパス)で出力する』項目がONだと、 [[HASHTAG:PULL:GALLERY]] 等の記法を用いてもモード指定リンクにならない不具合を解消。
❎共通鍵が設定されていない状態で設定画面にアクセスした際に、サーバのエラーログに Use of uninitialized value ... のようなアラートが記録される問題を解消。


▼新機能:安全関連
🌸ログインセキュリティ機能:
ログインしようとするタイミングだけで働くセキュリティ機能を3種類加えました。(①だけはデフォルトでONです。)
▼解説:
ログインセキュリティ機能3点
てがろぐにはこれまで「IDをロックする機能」がありませんでした。なので、ログイン画面からはパスワードの入力を無限に試行できました。(とはいえ、ローカルで動作するソフトウェアとは異なり、Webサーバの反応速度はそこまで高速ではありませんから、1秒間に何百回ものログインを試行することはできないと思いますが。)
さすがにその仕様はセキュリティ面でよろしくありませんので、
  • ① ログイン試行頻度を制限したり、
  • ② ログイン失敗回数に上限を設けたり、
  • ③ ログインフォームを利用可能なIPアドレスを指定したり
できる機能を用意しました。
※あくまでも新規ログインを制限するだけであり、既にログインしている端末では(IDのロック状態に関係なく)そのあまま使用可能です。

➡ 詳しくは、使い方・設定方法ページのログインセキュリティ関連機能区画をご覧下さい。

🌸ログインセキュリティ機能:①ログインに1回失敗したら直後に約2秒間だけロックする機能
パスワードを間違えてログインに失敗したら、直後にほんの短時間(1~2秒間)だけロックすることで、機械的なログイン試行を制限するセキュリティ機能を追加しました。この機能はデフォルトでONです。
▼解説:
パスワードを間違えると、その後に最大2秒間ほどロックしますから、ログインを1分間に最大30回しか試せなくなります。その結果、パスワード総当たり攻撃(ブルートフォースアタック)が難しくなります。
ログインセキュリティ機能① 2秒間だけロックされている場合の表示
➡ 詳しくは、ログインセキュリティ関連機能区画の「ログインに1回失敗したら直後に約2秒間だけロックする機能」項目をご覧下さい。

🌸ログインセキュリティ機能:②ログインに連続で指定回数失敗したら、ログイン処理を指定分間ほどロック(拒否)する機能
パスワードを指定回数ほど連続で間違えると、指定時間ほどIDをロックするセキュリティ機能を追加しました。
▼解説:
これは多くのWebサービスに存在する、例えば「5回連続で間違ったらアカウントをロックする」という系統のセキュリティ機能です。ただ、永久にロックされるわけではなく、あらかじめ指定した時間が経てば自動で解除されます。
ログインセキュリティ機能② IDがロックされている場合の表示
➡ 詳しくは、ログインセキュリティ関連機能区画の「ログインに連続で指定回数失敗したら、ログイン処理を指定分間ほどロック(拒否)する機能」項目をご覧下さい。

🌸③許可したIPアドレス以外からのログインを拒否できる設定を追加。
許可されていないIPアドレスからアクセスされた場合には、ログインフォームを表示しないようにする機能を追加しました。
▼解説:
自身の利用するIPアドレスがある程度判明している場合にこの機能を使えば、無用なログイン試行を防げます。この機能は、
❌:てがろぐを使えるIPアドレスを限定する機能ではありません。
⭕:ログインフォーム経由で新規ログインができるIPアドレスを限定する機能です。
したがって、一旦ログインした後なら、IPアドレスが変化してもそのまま使い続けられます。
ログインセキュリティ機能③ ログインが拒否されるIPアドレスの場合
➡ 詳しくは、ログインセキュリティ関連機能区画の「ログインできるIPアドレスを制限する機能」項目をご覧下さい。


新機能:その他の大きな機能
🌸予約投稿機能を追加。
投稿日時として未来の日時が指定された場合に、そのまま表示するのか、予約投稿扱いにするのかを選べる設定機能を追加しました。そこで「予約投稿扱い」に設定すれば、予約投稿機能が使えます。
▼解説:
予約投稿のために必要な設定
上図の赤丸部分2カ所を設定すると、予約投稿機能が使えるようになります。予約しておける投稿数に上限はありません。デフォルト設定のままだと予約扱いになりませんのでご注意下さい。予約投稿機能を使いたい場合には、事前設定が必要です。

➡ 詳しくは、使い方・設定方法ページの予約投稿の方法区画をご覧下さい。

🌸設定に『上書きスタイルシート』項目を新設し、そこに書いたCSSソースを「スキンのhead要素末」または「スキン内の指定箇所」に挿入できる機能を追加。
スキンのCSSを直接編集しなくても、てがろぐ管理画面上からCSSソース(※スキンのCSSを上書きするようなスタイル)を登録しておけば、装飾をカスタマイズできる機能を加えました。
▼解説:
上書き用スタイルシートの登録画面
この機能を使うと、配布スキンをバージョンアップさせた場合にも、自分でカスタマイズした部分だけはそのまま維持し続けられる(可能性がある)メリットがあります。なお、スキン側には特別な工夫は要りませんので、いつ作られたスキンでも、この機能でCSSを追加できます。

➡ 詳しくは、フリースペースの使い方区画の「設定画面からCSSを追記できる、上書き用スタイルシートの登録方法」項目をご覧下さい。


新機能:サイドコンテンツ関連
🌸新着投稿リストをカテゴリ別に出力できるオプションを追加。
カテゴリ別の新着投稿リストを出力できる記法を追加しました。カテゴリ別といっても全カテゴリが自動で列挙されるわけではなく、スキン側に望みのカテゴリIDを直接書いて使います。『スキン側で指定したカテゴリIDに該当する投稿に限定して新着順に表示される』という機能です。
▼解説:
下図は、様々なカテゴリでの新着投稿リストを表示してみた例です。対象のカテゴリIDは同時に複数指定できますから、「カテゴリⒶとⒷのどちらかに属する投稿をまとめて新着順に表示する」というようなことも可能です。
カテゴリを限定した新着投稿リストの表示バリエーション例
➡ 詳しい書き方と使い方は、カスタマイズ方法ページの「新着投稿リストの装飾方法」内のサブ項目「新着投稿リストの掲載対象をスキン側で限定する方法(掲載する対象を選択)」をご覧下さい。

🌸OGP(og:image)に出力される画像がNSFWフラグ付きだった場合は、その画像ではなく代替画像を出力させる設定項目を追加。
投稿に画像が含まれる場合は、OGP用の画像(og:image)として1枚目の画像URLが指定される仕様ですが、NSFWフラグ付きの画像でもOGPに出てしまう問題がありました。その問題を解消するために、画像がNSFWフラグ付きだった場合には、あらかじめ設定しておいた代替画像のURLを出力できる機能を加えました。
▼解説:
OGP画像によるネタバレを防ぐ用途等にもご活用頂けます。
NSFWフラグ付き画像なら代替画像を使う指定も可能
➡ 詳しい書き方と使い方は、使い方・設定方法ページの「OGP+Twitter Card用meta要素の出力仕様」区画内にある「og:image 項目」の水色の囲み内をご覧下さい。

🌸RSSフィード内に出力される画像がNSFWフラグ付きだった場合は、og:imageと同じ代替画像にすべて差し替える設定項目を追加。
画像を含むRSSフィードを出力している場合は、RSSフィード内に『画像を表示するimg要素』がそのまま出力されますので、NSFWフラグ付き画像でも何の加工もなく見えてしまう問題がありました。その問題を解消するために、NSFWフラグ付きの画像はすべて「OGP側で設定した代替画像」に差し替えられる設定機能を加えました。
▼解説:
RSSによるネタバレを防ぐ用途等にもご活用頂けます。
RSSフィードに含まれる画像の調整指定
➡ 詳しい書き方と使い方は、FAQ・豆知識ページの「検索結果へのRSSフィードでネタバレしてしまうのを防ぐ設定方法」区画内にある「RSSフィードに含まれる画像でネタバレしてしまうのを防ぐ設定方法」項目をご覧下さい。

🌸ハッシュタグの集計を停止する機能(ハッシュタグを集計しないようにする機能)。
ハッシュタグの出現数を集計しない設定もできるようにしました。
▼解説:
ハッシュタグを使わない場合や、ハッシュタグの種類数があまりも多すぎて集計処理が重たい場合には、集計を停止すると良いでしょう。集計を停止するとハッシュタグ一覧は表示できなくなりますが、本文中に存在するハッシュタグはハッシュタグとして機能し続けます
ハッシュタグを無効にする設定2種
➡ 詳しくは、使い方・設定方法ページの「ハッシュタグ機能が不要な場合」項目をご覧下さい。

🌸ハッシュタグ一覧の表示順設定を、投稿数に関係なく文字コード順(昇順/降順)に固定する機能。
ハッシュタグ一覧の表示順序の選択肢に、下図のように「文字コード順」という項目を2つ追加しました。昇順と降順から選べます。
▼解説:
ハッシュタグの実際の使用数に関係なく、一覧での並び順が変化しないように固定したい場合には良いかもしれません。昇順の場合は、概ね、英字(アルファベット順)→ひらがな(50音順)→カタカナ(50音順)→漢字 の順で並びます。
ハッシュタグ一覧の表示順を文字コード順に固定


新機能:状況・抽出関連
🌸[[SITUATION:CLASS]] に、表示モード名を示すclass名を追加。
状況に応じた装飾用class名として、ギャラリーモード、サイトマップページモード、通常表示モードを表す専用class名を追加しました。
▼解説:
具体的には以下の3つが状況に応じて加わります。
  • mode-gallery :ギャラリーモードのとき
  • mode-sitemap :サイトマップページモードのとき
  • mode-view   :通常表示モードのとき

※てがろぐでは、モード指定がない場合、内部では「view」というモードになっています(実は ?mode=view というパラメータでもアクセスできます)。なので、通常表示時には「mode-view」というclass名が常に加わります。したがって、「ギャラリーでもサイトマップでもない場合」という条件判定をしたい場合には「class名に mode-view が付加されているかどうか」で判断できます。

➡ 詳しくは、カスタマイズ方法ページの「そのときの表示状況に応じてページデザインを切り替える方法」区画をご覧下さい。

🌸[[SITUATION:CLASS]] で、スキン指定がない場合のHOMEページを表す専用のclass名 grandhome を追加。
表示条件が限定されておらず、プレビュースキンも指定されておらず、モードも指定されていない状態で、1ページ目が表示されている場合に限って grandhome というclass名も付加されるようにしました。
▼解説:
従来、表示条件が限定されていない状態の1ページ目が表示されている際には「HOMEに居る」という解釈で「 home 」というclass名が付加されていました。しかし、
  • ギャラリーモードの1ページ目にも home は付加されますし、
  • サイトマップページモードの1ページ目にも home は付加されますし、
  • 何らかの別スキンがパラメータで指定されている場合でも1ページ目なら home が付加されます。
……というように、「home」が付加される状況はたくさんあります。
そこで、『表示条件だけでなく、モードもスキンも一切指定されていない状態』のことをグランドホームとして「 grandhome 」というclass名を付加する仕様を加えました。複数のスキンを併用することが前提のデザインを作る際には、もしかしたら役に立つかもしれません。

※この grandhome は、必ずしも「パラメータが一切ない状態」だとは限りません。例えば、表示順を逆順(時系列順)にしている場合でも、grandhome になります。逆順になっていないgrandhomeを判別したい場合は「reversedが付加されていない」点を確認すると良いでしょう。

➡ 詳しくは、カスタマイズ方法ページの「そのときの表示状況に応じてページデザインを切り替える方法」区画をご覧下さい。

🌸文字数を指定して本文の一部分を抽出する記法で、三点リーダではない任意の記号を指定できる新記法 [[COMMENT:TITLE:文字数:省略記号]] 等を追加。
本文1行目をタイトルとして扱っている場合に、文字数の上限を超えると(従来は)問答無用で「…」で省略されていましたが、任意の記号を指定できるようにしました。
▼解説:
投稿本文を挿入する [[COMMENT]] という記法には、本文を分割して一部分だけを挿入するバリエーションがいくつかあります。その中には [[COMMENT:TITLE:30]] のように「1行目の先頭から30文字だけを抜き出す」などの記法もあります。
その際、「それ以後が省略されている」ということを示す省略記号として、従来は三点リーダ「…」が強制的に使われていました。この省略記号を、別の好きな文字に置き換えられるようにしました。
例えば、
  • [[COMMENT:TITLE:30:(省略)]]
  • [[COMMENT:BODY:100:<以下略>]]
  • [[COMMENT:TEXT:120:‥‥‥...]]
……などのように書けます。
省略記号自体を省略したい場合は、[[COMMENT:TITLE:30:]] のように書くこともできます(=最後のコロン記号の後に直接閉じカッコを記述します)。この記述の場合は、先頭から30文字で切られるだけで、それ以後には何も出力されません。

➡ 詳しい書き方や仕様については、リファレンスの【投稿本文関連要素(オプション)】をご覧下さい。


新機能:バックアップ関連
🌸設定ファイル tegalog.ini のバックアップ機能を追加。
🌸画像インデックスファイルのバックアップ機能を追加。
管理画面の「バックアップ」では以前から全投稿データのバックアップファイルをダウンロード可能でしたが、それ以外に、設定ファイル(.ini)と画像インデックスファイルもダウンロードできるようにしました。
▼解説:
てがろぐ管理画面のバックアップ画面
上図の黄色矢印の先は以前から存在する「最新データXML」のバックアップボタンです。また、水色矢印の先は、過去の時点の投稿データXMLのバックアップ群です。今回追加したのは下記の2点です。
  • 設定ファイル(上記の橙色矢印の先)をバックアップしておけば、うっかり設定をおかしく変更してしまったときとか、うっかりバージョンアップ時に設定ファイルを上書きしてしまったときなどでも、バックアップから復元できます。
  • 画像インデックスファイル(上記の白色矢印の先)をバックアップしておけば、画像のキャプションやフラグ等の設定を誤って消してしまっても復元できます。

➡ 詳しい使い方は、使い方・設定方法ページの「自動バックアップ機能の使い方」区画をご覧下さい。


▼今回のその他の機能追加:
🌺YouTubeの動画埋め込み時に、再生開始位置(秒数)を指定可能に。
再生開始位置を指定した状態でYouTube動画を埋め込めるようになりました。
YouTubeの公式UIから「再生開始時刻を指定したURL」を取得して使っても構いませんし、YouTubeの動画URLの末尾に「&t=68」のように秒数パラメータを加えて記述しても構いません。
➡ 詳しくは、使い方・設定方法ページの「YouTube動画を埋め込む書き方」区画にある「再生開始時刻を指定したい場合」項目をご覧下さい。

🌺YouTubeの動画埋め込みサイズを任意に指定可能に。
YouTube動画の埋め込み縦横サイズを、管理画面の[設定]からピクセル数で手動指定できるようにしました。(デフォルトは 560×315 )
指定できる最小サイズは横240×縦135(px)です。ただ、実際にどんなサイズで描画されるかは、CSSでの装飾次第ですから、この設定画面で指定したサイズで常に表示されるとは限りませんのでご注意下さい。
YouTubeラベルで動画を埋め込む設定
➡ 詳しい使い方は、使い方・設定方法ページの「YouTube動画を埋め込む書き方」項目をご覧下さい。

🌺Spotifyの音楽埋め込みサイズを4種類から選択可能に(自由サイズの指定も可能に)。
Spotify公式の埋め込みサイズ「標準」と「コンパクト」と同じサイズでの埋め込み手段も加えました。また、縦横サイズを任意に指定することもできます。
ここでは、埋め込みサイズを下記の4種類から設定できます。
  • A:横300px×縦380px =昔のSpotify標準サイズ(デフォルト)
  • B:横100%×縦352px =標準サイズ
  • C:横100%×縦152px =コンパクトサイズ
  • D:任意のサイズ(横210×縦80px以上)
上記の4種類それぞれで表示してみた例は下図の通りです。(左上はデフォルトの表示Aで、右下はDで最小サイズを指定した場合の例)
Spotifyの埋め込みサイズ4例 Spotifyの埋め込みサイズを変更する設定
指定できる最小サイズは横210×縦80(px)です。
ただ、実際にどんなサイズで描画されるかは、CSSでの装飾次第ですから、この設定画面で指定したサイズで常に表示されるとは限りませんのでご注意下さい。

➡ 詳しい使い方は、使い方・設定方法ページの「Spotifyの埋め込みサイズを変更する方法」項目をご覧下さい。

🌺新着投稿リスト(LATESTLIST)に、所属カテゴリ名を表示できる記法を追加。
新着投稿リストに表示できる構成要素に「カテゴリ名」を増やしました。(デフォルトでは表示されませんので、表示したい場合には設定を変更して頂く必要があります。)
具体的には、「内容と順序」欄に記述できる英字の選択肢に「C」を加えました。これを加えると、その位置に「カテゴリ名」が出力されます。
➡ 詳しくは、カスタマイズ方法ページの「新着投稿リストの装飾方法」をご覧下さい。

🌺スキンのプレビュー適用時に、絶対パスや上位ディレクトリを参照する相対パスの記述での指定を許可するか禁止するかを設定可能に。
てがろぐ3.9.0以降では、てがろぐCGI本体の所在ディレクトリよりも浅い階層のディレクトリに存在するスキンでも適用可能になりました。その「浅い階層にあるスキン」の適用を許可するかどうかを設定で選択できるようにしました。
ただし、デフォルトではOFF(=禁止)に設定されていますので、既にその機能を使用中の場合には設定を変更して頂く必要がありますのでご注意下さい。
スキンの適用制限
上記の黄色矢印の先のチェックボックスをONにすると、「 ../ 」で浅いディレクトリを参照する相対パスや、「 / 」で始まる絶対パスでの指定が許可されます。

※なお、「 / 」で始まる絶対パスは(サーバのファイルシステムのルートディレクトリではなく)WebサイトのDocument Rootを基準にした絶対パスだと解釈されます。URLは指定できません。
※実際の位置が(CGI本体よりも浅い階層ではなく)深い階層になる場合でも、「/」記号で始まる絶対パスで指定する場合や、パスの内部に「../」の記述が含まれている場合には、この制限に該当します。


➡ 詳しくは、カスタマイズ方法ページの「スキンは、直下のサブディレクトリ以外の別階層にあっても使える」項目の下部「※ただし、事前設定が必要」をご覧下さい。

🌺Powered-by表記のリンクを別タブでのリンクにできる新記法 [[VERSION:NEWTAB]] を追加。
てがろぐスキンには、Powered-by表記を出力する [[VERSION]] の記載が必須ですが、このバリエーションとして [[VERSION:NEWTAB]] を新設しました。
この記法を使っても、出力される文字列自体は「Powered by てがろぐ Ver 4.0.0」のような感じで同じですが、リンク先が別タブで開くようになります。
具体的には、出力されるa要素に target="_blank" rel="noreferrer noopener" の属性が付加されます。
[[VERSION]] でも [[VERSION:NEWTAB]] でも、どちらでもお好きな方をご使用下さい。(※どちらか一方は必須です。)


▼その他の細かな機能改善:
自由装飾記法のclass名として、(英数字以外に)ハイフン記号とアンダーバー記号も使用可能に。
自由装飾記法で指定できるclass名には、従来は英数字しか使えませんでしたが、ハイフン「-」記号と、アンダーバー「_」記号も使えるようにしました。
➡ 詳しくは、使い方・設定方法ページの「class名を自由に指定できる装飾記法」項目をご覧下さい。

「補助出力」設定で、ギャラリーモード等のためのスキンディレクトリの指定でも相対パスを使用可能に。(従来は / や . 等の記号が強制削除されていました。)
てがろぐ3.9.0では、任意のパス(PATH)でスキンを適用可能になりましたが、設定画面の「補助出力」で登録できる(=ギャラリーやRSSやサイトマップページ用の)スキンの位置指定にはパス(PATH)を指定できないままでした( / や . 等の記号が強制削除されていました。)。
その仕様を修正し、この設定欄(下図)でも「パス(PATH)を含むスキン位置」の記述ができるようにしました。
補助出力設定画面

Spotifyの音楽埋め込みにも loading="lazy" を付加。
Spotifyを埋め込むiframeにも loading="lazy" の属性を付加しました。
これによって、Spotifyの埋め込み位置にスクロールしない限りSpotifyのデータが読み込まれなくなるので、無駄な通信量を削減できます。(YouTubeの埋め込みには以前から loading="lazy" が付加されていたのですが、Spotifyには付いていなかったので付けました。)

新着画像リストを装飾するCSSを書きやすいように、リスト内の1項目ずつを囲むマークアップを追加。
新着画像リスト内に表示される画像は1つずつ、それぞれの外側を <span class="imagelistitem"> ~ </span> で囲むようにしました。これには、主に下記の2つの目的があります。
  • ➊標準添付の各スキンでは、NSFWフラグ付き画像を blur(9px) のフィルタでぼかすようにCSSを書いています。このとき、新着画像リストに表示される「ぼかされた画像」が、枠からはみ出て表示されてしまう問題がありました。それを解消しやすくするために、外側に枠を用意しました。そうすると、「その枠からはみ出さないようにする」装飾を作りやすいですから。
  • ➋新着画像リストには、投稿画像総数が少ない場合には「NO IMAGE」ダミー画像が表示されます。このダミー画像はリンクにならないので、外側に共通の枠がないと、配置を調整するCSSを書くのが難しい問題がありました。その解消も目的の1つです。

その結果、標準スキンでは下図のように表示されるようになりました。NSFW用のスタイルによって画像がぼかされていますが、ぼかされた端が画像枠からはみ出ずに表示されています。
新着画像リストの表示例

➡ 詳しくは、カスタマイズ方法ページの「新着画像リストの装飾方法」区画にある「新着画像リストとして実際に出力されるHTMLソースの例3通り」項目をご覧下さい。出力例のHTMLソースを掲載しています。水色で表示されている部分が、今回に追加されたマークアップです。

日付一覧にリストアップされる年月リンクの「年」や「月」という漢字だけをCSSで装飾できるよう、出力マークアップを追加。
日付一覧に表示される「2023年02月」という表記に含まれる「年」や「月」という漢字だけを装飾できるようにするため、
  • <span class="unit nen">年</span>
  • <span class="unit gatsu">月</span>
として漢字だけを単独でマークアップするようにしました。
「年」や「月」という漢字だけを非表示にしたり小さく表示したり色を変えたりする用途にご活用頂けるでしょう。

➡ 詳しくは、カスタマイズ方法ページの「日付一覧リストの装飾方法」区画にある「日付一覧リストの各部分をCSSで装飾する方法」項目をご覧下さい。出力例のHTMLソースを掲載しています。

日付一覧・日付検索のリストで、2000年より古い日付もリストアップできるように改善。(ただし1970年以降のみ)
てがろぐで投稿日時を手動指定する場合、年は4桁なら何でも良いので西暦1000年などの日付でも投稿は可能ですが、「日付一覧」として出力されるリンクリストや、「日付検索」として出力されるプルダウンメニュー部分には、2000年以降の日付分しかカウントされない仕様でした。しかし、もっと昔のデータをサルベージして掲載する用途にも需要があるようですので、2000年以前の日付でもリストアップするように改善しました。
1970~1999年もリストアップ対象に
※ただし、リストアップされるのは1970年以降のみです。(今のところ)

日付境界バー内部の日付表記やリンクをCSSで装飾しやすいように、マークアップとclass名を追加。
日付境界バー(投稿年月が変化する際に挿入されるバー)の内部をパーツ別に装飾しやすいように、span要素を加えたりclass名を増やしたりしました。
日付境界バーのマークアップ
出力される具体的なHTMLソースは、カスタマイズ方法ページの「日付境界バーをCSSで装飾する方法」に掲載しておりますので、そちらをご参照下さい。

※HTML的には、この用途ではp要素を使わない方が良いとも思うのですけども、いまさらdiv要素に変えてしまうと、既存のスキン(p要素のデフォルトスタイルを前提に装飾を作っているスキン)に影響してしまうので、p要素のままにしました。

ギャラリーモードやサイトマップページモードでの表示時に「状況に応じた見出し行」に表示される名称を装飾しやすいようマークアップを追加。
ギャラリーモードやサイトマップページモードでの表示時には、「状況に応じた見出し」に設定した名称(デフォルトでは「ギャラリー」と「サイトマップ」)が表示されます。その際、従来はそのままテキストだけが挿入されていましたが、この仕様を改善し、次のようにマークアップを加えて出力するようにしました。
  • <span class="situation-mode">ギャラリー</span>
  • <span class="situation-mode">サイトマップ</span>
これによって、これらのモード名をCSSで装飾しやすくなりました。

※「ギャラリー」や「サイトマップ」という文字列は、管理画面の「設定」→「補助出力」で変更できます。
ギャラリーモードでの状況に応じた見出しの表示例
➡ 詳しくは、カスタマイズ方法ページの「状況に応じた見出し行の装飾方法」をご覧下さい。

下げた投稿を新着投稿リストには掲載しないよう仕様改善。
投稿時に「下げる」チェックをONにして投稿された場合には、新着投稿リストにリストアップされないよう仕様を改善しました。
※注:新着投稿リストの内容はキャッシュしているので、てがろぐCGIをバージョンアップしただけでは表示は変わりません。管理画面から「投稿を再カウント」を実行するか、もしくは何か新規投稿するか既存投稿を再編集するかすると、(新着投稿リストも再生成されるので)表示も変わります。


▼スキン更新:
🌻NSFWフラグ付きの画像が新着画像リストに表示されるとき、ぼかしが枠からはみ出ないようCSSを修正。
🌻Chromium系ブラウザで(キャプションありの)NSFWフラグ付き画像を表示したときに、画像の下側のぼかしが枠からはみ出てしまうCSSを修正。

#不具合修正
❎新着画像リストを構成するHTMLソースに、img要素のalt属性値が重複して出力されていた不具合を解消。
動作に不都合はなさそうですが、無駄なalt属性が存在していて良いことはないので、修正しました。
❎『画像リンクに独自のclass属性値を追加』にチェックが入っている状態で、その直下のテキスト入力欄が空っぽのとき、『空白の連続を再現 (半角空白文字の連続をそのまま見せる)』項目がONの状態だと、フラグ付き画像のclassが正しく適用されなくなる問題を解消。
下図の緑色矢印の先のように設定されていると、フラグ付きの画像に対して出力されるclass名に余計な文字列が付加されてしまって、正しくCSSが適用されなくなる問題を解消しました。
不具合修正
(※上図の緑色矢印の箇所で、『チェックを入れているのに、対応するテキスト入力欄が空欄の場合』にだけ問題が発生していました。)

❎投稿日時として50年以上前の日付を指定すると、相対時間表記(=投稿時点からの経過時間の表記)が正しくなくなる問題を修正。
投稿日時に「1973年1月1日」のような50年以上前の日付を指定すると、相対時間表記(=投稿時点からの経過時間の表記)で「49年以上後」のように未来の日付であるかのように表示されてしまう不具合を修正しました。
❎[[CATEGORYLINKS:SITEMAP]] 等の記法を使っても「カテゴリなし(cat=-)」の場合はデフォルトスキンでの表示になってしまう不具合を修正。
その投稿が属しているカテゴリへのリンクを挿入できる記法 [[CATEGORYLINKS]] で、オプションに SITEMAP や GALLERY を加えたとき、「カテゴリなし」へのリンクにだけはオプションが効いていなかった不具合を修正しました。
❎簡易本番適用中のスキンを削除した後でログアウトしてしまうと、「スキンが見つからない旨のエラー画面」と「ログイン画面」との間を無限に行き来するだけになってしまう不具合を解消。
あるスキンを簡易本番適用している状態で、そのスキンを削除すると、ページを表示しようとしてもエラー画面が表示されます。このとき、ログイン済みの状態なら管理画面に再度アクセスしてスキンの適用を解除すれば済みます。しかし、非ログイン状態の場合は、ログイン処理が完了できず、「エラー画面」と「ログイン画面」との間で永遠に行き来してしまう不具合がありました。それを解消しました。
❎設定『本文中のテキストリンクを絶対URL(フルパス)で出力する』項目がONだと、 [[HASHTAG:PULL:GALLERY]] 等の記法を用いてもモード指定リンクにならない不具合を解消。
管理画面の[設定]→[ページの表示]→【投稿本文の表示/テキスト】→[▼テキストリンクの出力調整]にある『本文中のテキストリンクを絶対URL(フルパス)で出力する』項目がONの状態だと、 [[HASHTAG:PULL:GALLERY]] や [[HASHTAG:PULL:SITEMAP]] を書いても、ハッシュタグリスト内のリンクが、ギャラリーモードやサイトマップページモード用のリンクにならない不具合がありましたが、これを解消しました。
❎共通鍵が設定されていない状態で設定画面にアクセスした際に、サーバのエラーログに Use of uninitialized value ... のようなアラートが記録される問題を解消。
管理画面の[設定]→[ページの表示]→【鍵付き(パスワード保護)投稿の表示】→「▼共通鍵の設定」で共通鍵が設定されていない状態のとき、設定画面にアクセスする度に「 Use of uninitialized value $setdat{"skcomh"} in string ne at tegalog.cgi line 9966 」のようなアラートがサーバのエラーログに記録される問題を解消しました。(※動作そのものには不都合ありません。)


以上、ご活用頂ければ幸いです。

※今回はメジャーバージョンアップで、セキュリティ強化関連の新機能や不具合の修正も含んでおりますので、バージョンアップ頂くことを強く推奨致します。(バージョンアップしても、ログインし直す必要はありません。ログイン状態は維持されます。データや設定はそのまま引き継げますし、もし必要になれば後からバージョンダウンすることも可能です。)

なお、開発進捗状況報告サイトでフォロー頂くと、てがろぐCGIの最新β版や正式版の公開時にメールで連絡を受け取ることもできますので、ぜひご活用下さい。(╹◡╹)ノ
フォロー数が増えると、私の開発モチベーションが向上するメリットもあります!!!🤩

:16280文字 修正

DASHBOARD

■リリースノート内を検索:

■最近の投稿:

■その他のご案内:

▼現在の公開バージョン:

正式版:Ver 4.3.0
β版は適宜。)

▼ご質問やご要望がある場合:

ご質問やご要望がある場合は、動作テスト用てがろぐもご利用下さい。事実上のサポート掲示板にもなっておりますので。(^_^;)

編集

■日付検索:

▼現在の表示条件での投稿総数:

1件

このリリースノートも、てがろぐCGIを使って生成しています。
てがろぐCGIでページの生成に使用しているスキンファイルの実体は普通のHTMLファイルですから、一般のウェブページと同様の手順で自由に書き換えられます。

Powered by てがろぐ Ver 4.3.0.

--- 当サイト内を検索 ---