2024年12月 この範囲を時系列順で読む この範囲をファイルに出力する
てがろぐ4.5.0リリースノートからの抜粋です。
標準添付の各スキンのうち、ギャラリーモード等の特殊なモードで使われるスキンを除いた各スキンには、自由装飾記法の使用例として以前から3種類ほど書いていました。そこに4つ目の使用例として deco-flex を加えました。
Flexboxを使って、その内側のBoxを横並びに表示する装飾です。 [ F : flex : ~~~ ] と書くと使えます。
キャプション付き画像とか、Spotifyの埋め込みとか、デフォルトでは横並びにならないオブジェクトを横並びで表示させたい場合に使えるかもしれません。
既にスキンの紹介をされてる方もいらっしゃるのでお節介かと思いましたが、ちょっと手を入れるだけで良ければこちらの記述も使えるんじゃないかと思います。
いつも開発、サポートお疲れ様です! 私も別名義にて運営している個人サイトで、てがろぐさんには大変お世話になっています。
ささやかですが、先ほどAmazonギフト券をお送りしたのでご活用ください。
今日はご要望をお伝えに来ました。
といっても、私自身の要望ではなく、do宛てに寄せられる要望なのですが……
てがろぐの投稿それぞれに「いいねボタン」をつけることはできるでしょうか?
最近、「あらかじめいいねボタンが埋め込まれた、てがろぐスキンが欲しい」という要望が寄せられるようになりました。
当サイトで配布している「いいねボタン・改」をてがろぐスキンに埋め込むことはできるのですが、
Perl製プログラム(スキン)とPHP製プログラムを抱き合わせたものを配布するのも、なかなか難儀しそうに思います。
てがろぐはうまく設置できたのに、いいねボタンが動かない……とか、スキンが上手く編集できない……みたいなトラブルも起こり得そうです。
また、当サイトのいいねボタン・改には独自の管理画面があるのですが、てがろぐのいいね数はてがろぐで管理・閲覧できた方が良いのでは? とも感じます。
当サイトではいろいろなプログラムを配布していますが、特に人気があるのは「いいねボタン」系の、訪問者からのリアクションを得ることができるものです。
訪問者とのコミュニケーションが取れる機能は、意外と需要があるのかなと思うことがあります。
てがろぐさんにおいても、検討いただけましたら幸いです。
日々たくさんの要望や質問が寄せられてご多忙かと思いますが、よろしくお願いします。
スキン配布サイトを探されたらよいかと思います。
個人的にpipiさんの06:てがろぐだけで簡易サイトを作れるスキンが出来るんじゃないかと思います。
06:てがろぐだけで簡易サイトを作れるスキンのデモの日記カテゴリに説明があるのでご覧ください
https://pipi.noor.jp/t/
(自分のサイトではないので問題があれば削除してください)
スターサーバーの新無料プランで無事動作したようです。今後登録制限がかからなければ無料で始めるには現状一番手軽かも。(広告もないですし)
「てがろぐでD&Dまたはコピペで画像投稿するやつ」の投稿ボタン押下でアップロードするバージョンを作りました。仕組み上一部機能を使えなくしたので、別バージョンです。
ただ、あまりテストしていないので例によって不具合があるかもしれません。
また、リアクションボタンのデモが触れるサイトも作ったのでぜひお試しください。http://tekitote.s324.xrea.com/
4879です
日時も編集出来ましたね、全然使わない機能だったので失念してました……。
投稿番号と日時のふたパターンあるので、最初の投稿時点の日時でいいと思います。投稿日時と再編集後の日時の違いが気になる人は今までのpostid使えばいいと思うので……(これは再編集機能使わない立場だから言えることですが)
割と本当に欲してるので、実装していただけたら(いつでもいいので)有難いです😭🙏
🧇Re:4879,4882◆てがろぐの投稿は、本文を再編集できるだけでなく、投稿日時も自由に再編集できるんですよね……。あとから投稿日時を変更された場合、日時ベースのURLはどうなるべきでしょうね? 「変わらないURL」である必要があるなら『最初の投稿時点の日時』を維持すべきでしょうが、そうすると「URLで示されている日時」と「表示される投稿日時」が異なることになりますから、パラメータとしての役割がおかしくなる気もします。あと、投稿日時を再編集した結果として「同じ投稿日時の投稿が複数個ある」という状況になる可能性があるので、その場合にどう表示すべきか、という問題もあります。(^_^;)
……そう考えると、投稿IDの付け方を「連番」か「乱数」かで選べる仕組みにする方がまだ良いのかもしれませんね。(ただ、乱数にすると、「既に使われているIDでないかどうか」を1つ1つ比較して確認しないといけないので、投稿総数が多くなるとIDの生成に時間が掛かりそうな気もしますが。連番の場合は「一番大きい数」に1を足すだけで済みますので。もっともその点では、日時なら何も計算しなくて良いので一番速いですけどもね。:笑)
🧇Re:4880-4881◆お役立ちツールをありがとうございます。(╹◡╹)ノ
🧇Re:4883◆おおっと、確かに不具合ですね。ご指摘ありがとうございます! ページネーションを生成する処理で、CGIによくありがちな二重エスケープをやってしまっているようです。どうにかします。
🧇Re:4884◆その通りです。日付境界バーは、先頭だけでなく「日付が切り替わる投稿と投稿の間」にも出力する必要がありますから『一連の投稿の内部』に必要に応じて挿入されます。なので『日付境界バーを出力する専用の記法』というものはありません。ですから、(あらゆるスキンで日付境界バーを見せたくないなら設定でOFFにする手がありますが)スキンによって日付境界バーを見せたり見せなかったりしたい場合は、見せたくない方のスキンではCSSを使って非表示にして頂くしか方法はありません。
※ヘルプドキュメントの存在について既にご認識頂いているようですが、これを読んでいる第三者の方々にも参考のために記しておきます。
➡日付境界バーの装飾方法や、実際に出力されるHTMLについては、ヘルプドキュメントの「日付境界バーの装飾方法」をご覧下さい。なお、「先頭固定」の最初に出力される日付境界バーは若干仕様が異なります。そちらについては、「先頭固定専用の日付境界バーをCSSで装飾する方法」をご覧下さい。
日付境界バーについてわからないことがあったので質問失礼します🙇
スキンAでは日付境界バーを非表示、スキンBでは日付境界バーを表示したいのですが……この場合はマニュアルの<日付境界バーの装飾>にある、pクラスdateseparatorを、スキンそれぞれのCSSで表示・非表示に指定すればいいのでしょうか?(日付境界バー用の[]タグがあるわけではない…?🤔)
他の方が作成されたスキンを使用中で、そのスキンでは非表示だったのでどうやってるんだろう…となったので質問させていただきました🙋♀️
多分不具合だと思うので#報告 させていただきます。
一部の記号(<、>、&、"、' 等)を含むテキストを検索すると、2ページ目以降は検索文字が実体参照に変換され、検索結果は0件になってしまいました。
↓画像はここで試しに「class="」を検索した結果です。



3枚目の画像が検索結果の2ページ目の画面です。
また、管理画面で検索した場合は何故か入力ボックスに「&」が記号の前に追加され、検索結果が0件になりました。
↓こちらは「="」で検索した結果です。


バージョンは最新の4.5.1を使用しています。
> 既存の投稿単独ページURLのエイリアス(別名)として、例えば ?posttime=20241211105450 のようなパラメータで特定の投稿が単独表示されるようにする、という機能ならできるとは思います。
私が欲しかったのはその機能なので、嬉しいです。
ご提案くださった形は要望通りです。記事番号を使いたいユーザーのために、AとBの両方の表示方法があることが望ましいです。
その場合、(1)管理画面でどちらを優先出力するか選ぶ項目がある (2)あるいはにししさんが特定のパラメータを設置したあとで、我々利用者はスキンを[[PERMAURL:ID]]や[[PERMAURL:TIME]]のように好きな方を書いてカスタマイズする…という形を考えました。
>その場合は、単に「投稿番号を連番に直さなければ良い」のではないでしょうか?(^_^;)
確かにそのとおりです。私が連番機能を触らなければいいだけの話と言われればぐうの音も出ません。
ですがこの要望を出しているのは「連番にしたいから」ではなく、
「単独記事のURLを固定化したい」の気持ちの方が大きいです。
単に個人の趣味で番号をそろえたいなら、意志と機能の力で押さえることはできますが、
どうしても過去の一部を消すことになった、あるいは多人数で使っている場合、不適切な投稿者(荒らし)の記録を消す必要に駆られた…など、
運営に関わる理由で連番機能を使わなければいけないことは、
どんなユーザーにとってもあり得ると考えます。
なので何が起ころうが、見返し手段として、あるいはSNSで単独記事を共有する手助けとしての
固定URLがあると嬉しい、それにはタイムスタンプ出力が適切かと考えました。
なので、たとえばidが20桁くらいの乱数出力になっても私の要望には叶いますが(^▽^;)
多くの人の利便性を考えると時刻表示が良いと思ったのです。
前回の書き込みは言葉が足らず、ただこちらの話をしただけになってしまい、申し訳ありません。
あくまで、いつかこのような機能が加わるといいなという希望として、受け取っていただければ幸いですm(_ _)m
<script type="text/javascript">
///動画
$(document).ready(function() {
$('a[href$=".mp4"], a[href$=".mov"], a[href$=".webm"], a[href$=".ogg"], a[href$=".m4v"], a[href$=".avi"]').each(function() {
const $link = $(this);
const href = $link.attr('href');
// 拡張子に応じて適切なMIMEタイプを設定
const getVideoType = (ext) => {
const types = {
'mov': 'video/quicktime',
'mp4': 'video/mp4',
'webm': 'video/webm',
'ogg': 'video/ogg',
'm4v': 'video/mp4',
'avi': 'video/x-msvideo'
};
return types[ext.toLowerCase()] || '';
};
const fileExt = href.split('.').pop().toLowerCase();
const mimeType = getVideoType(fileExt);
const playerElement = `
<div class="video-container">
<video controls width="100%">
<source src="${href}" type="${mimeType}">
お使いのブラウザは動画の再生に対応していません。
</video>
</div>
`;
$link.replaceWith(playerElement);
});
});
</script>
バグってたら申し訳ないです
仕様
- 管理画面>設定>システム設定>【許可する画像の種類】で拡張子を入れると管理画面とQUICKPOSTからアップできるようになります(管理画面の画像の管理の画像欄には表示されません)
- URLの末尾に動画の拡張子がある場合、自動的にプレイヤーに変更されます
- サイズ変更はスクリプト内の<div class="video-container">~からどうぞ
- 5秒のところがサムネイルとして初期設定されているので、変えたい場合はMath.min(5, video.duration)の数値を変更してください
元の方とは違う人間ですが自分も日付のURLあると嬉しいです。
AとBどちらもあって、どちらでも飛べるのでいいと思います。
自分も投稿消しがちで連番じゃないのが気になって番号の振り直しするのですが、日付の場合は特に気になりません。(日付みたいな長めの数字列で連番になってるほうが逆に違和感です……)感覚的なものなのでうまく言えないのでわかりにくいかもしれませんが……。
🍛Re:4877◆ご確認をありがとうございました。やはりそうでしたか。どうやら「/」で始まるPATHが指定されているときの扱いにミスがあったようです(単にそのまま使えば良いだけなのに、あえてサーバ上のフルパスを生成してしまっていました^^;)。次のバージョンで修正します。ご指摘ありがとうございました!
🍛Re:4876◆ご要望をありがとうございます。なるほど確かにそういう単独投稿の示し方があっても良いかな、という気はしました。現状でも、「2024/12/11 10:54:50」のような投稿日時を検索語にすれば該当する1件だけが表示されますから、この方法でリンクする手もあるとは思いますが、これだとあくまでも「限定表示ページ」であって「投稿単独ページ」としては表示されませんからね。
既存の投稿単独ページURLのエイリアス(別名)として、例えば ?posttime=20241211105450 のようなパラメータで特定の投稿が単独表示されるようにする、という機能ならできるとは思います。ただ、その場合は、
- ?postid=4876 でもアクセスできるし、
- ?posttime=20241211105450 でもアクセスできる
この仕様でご要望に添いますか?
もしかして、ご希望は、『Ⓑだけでアクセス可能にしたい。Ⓐでのアクセスは不可能にしたい』ということでしょうか? だとすると、ちょっとIDの仕様から見直す必要があるので、そのオプションを作るのは労力が掛かるな、と思います。(無理ではないんですが、そこを実現する労力に見合う効果があるかな? という疑問はあります。)
ところで、ご要望の本文を読んでいてふと思ったのですが、
投稿IDを 20241211210726 のような年月日時分秒にすると、そもそも連番になりませんよね?(毎秒1件の割合で投稿する場合に限っては連番になりますが。^^;)
その「連番にならない」状況を受け入れられるのであれば、現状の「投稿IDが連番にならない(可能性がある)」状況も受け入れられるのではないかと思うのですが。^^;
その場合は、単に「投稿番号を連番に直さなければ良い」のではないでしょうか?(^_^;)
再採番機能さえ使わなかったら、投稿IDはずっと変わりませんので、リンクに使ってもズレることはありません。
※なお、うっかり再採番してしまう誤操作を避けたい場合は、ヘルプドキュメントの『投稿の一括調整を禁止する設定方法』のように設定すると、投稿IDの振り直し機能を使えなくできます。
>>4877です。
確認ありがとうございます。
設定を確認したところディレクトリは/images/emojiに設定しています。
自分でも確認画面の画像パスを確認したところ
/home/users/0/○○○.jp-△△△/web/images/emoji//emoji.png
と、ロリポップサーバーのフルパスで表示されていました(ロリポップを使用しています)
本日は、今後の開発に関する要望を投稿したく思います。
てがろぐの記事単体を表すURLは、今は"https://(てがろぐ設置URL)/tegalog.cgi?postid=投稿番号"となっています。
これを"https://(てがろぐ設置URL)/tegalog.cgi?postid=202501012359"のような日付と時刻IDに任意で選べると便利だなあと思います。
記事単体URLが投稿番号だと、過去の記事を参照するためにリンクを貼っても、
後で投稿番号を連番に直したときにURLが変わってしまう心配があり、なかなかリンク機能を使えないためです。
時間にもとづいたIDならその心配がないと思ったのですが、開発は難しいでしょうか?
お考えくださるとうれしいです!
🍮Re:4874◆早速のお試しをどうもありがとうございます。お役に立ったようで何よりです。削除確認のプレビューが表示されませんでしたか……。よくよく確認してみると、画像のPATHに無用なスラッシュが1個入っていますね……。その辺が影響して設定に依っては画像の表示に失敗しているのかもしれません。ご指摘ありがとうございます。
参考までにお尋ねしたいのですが、[設定]→[システム設定]→【カスタム絵文字機能の設定】→「カスタム絵文字用画像ファイルを置くディレクトリ」欄は、デフォルトではない値に設定されていますか?(※デフォルト値は、スラッシュ記号等が含まれていない「emoji」の5文字です。)もしよろしければ教えて下さい。
Ver 4.5.1β公開お疲れ様です。
カスタム絵文字管理機能を早速使わせていただきました。
追加と削除は問題なくできましたが、削除確認画面のプレビューの列には何も表示されませんでしたので報告いたします。
#報告
使っていない絵文字を整理したいと思っていたので、今回のアップデートとても助かりました。
使用場所を確認しながら削除できたのでとても使いやすかったです。
ありがとうございます。#感謝
🆕 Ver 4.5.1βの更新点(概要):
《▼新機能》
●カスタム絵文字を管理画面上から追加・削除できる機能
●あるカスタム絵文字が使われている投稿を探せる機能
詳しい使い方などは、上記の開発進捗状況報告ページの記事をご覧下さい。
🍘SNSでのアナウンス:
Mastodon(Pawoo)
Bluesky
Twitter:
(ツイート埋め込み処理中...)Twitterで見る
そのカスタム絵文字が使われている投稿を探す機能もあります。
🍛Re:4870◆その解決方法だと、今は大丈夫でも、次に[設定]画面で何かを変更して保存しようとする際に(WAFの影響で)403 Forbiddenエラーが出ると思います。[設定]画面では、変更したかしていないかに関係なく常にすべての項目(フリースペースも含みます)のデータを送信するからです。なので、根本的に解決するには、No.4869さんが最後におっしゃったように、フリースペースを使わずにスキンのHTMLに直接書く必要があると思います。
PHPスクリプトに送る日付を頻繁に書き換えるためにフリースペースを使いたい、というのが理由なら、日付だけをフリースペースに書くことにして(PHPに送るパラメータを)合成すると良いかもしれません。
スキン側(skin-cover.html)に <script src="https://www.nannichime.net/s.php?d=[[FREESPACE:0]]&f=n"></script> のように書いておく感じです。PHPに送るパラメータの日付部分だけをフリースペースに書きます。そうすれば、script要素自体はフリースペースに含まれないので、WAFの誤検知も防げるでしょう。
※専用の区切り文字を使えば複数のフリースペースを設けられますので、上述のPHPスクリプト以外に他の文章等をフリースペースに書きたい場合でも、[[FREESPACE:番号]の記法を使えば使い分けられます。
>>4865 です
サーバーのtegalog.iniの113行目付近にある「freespace=」の後に<script>~</script>を書いて上書き保存・アップロードする方法で正しく表示されました。
ありがとうございました🙇🏻♀️՞
4866です。同じ
<script language="JavaScript" src="https://www.nannichime.net/s.php?d=2023/12/12&f=n"></script>
を「多目的フリースペースに掲載する内容」に入力して保存ボタンを押しても当方の環境ではやはりエラーは表示されず、てがろぐHOME画面に「361日」の文字が表示されました。
別のサーバーではエラーにならない点や「設定を保存する」のボタンを押した時に403エラーが出るという点から、これはてがろぐCGIやカウントダウン・カウントアップコードが原因ではなくサーバー側のWAF機能の誤検知の可能性が高そうです。
↓他のサーバーでの似た事例です
https://www.nishishi.com/cgi/tegalog/faq/#lolipop-forb...
https://www.nishishi.org/testground/tegalog/?postid=43... (※4307さんへのレスが該当の話題です)
↓シンフリーサーバーのWAFについての説明
https://www.xfree.ne.jp/manual/man_server_waf.php
シンフリーサーバーでの除外設定方法 までは私には見つけられていないので、WAFの無効化や除外設定をしないですぐに解決する方法は
・サーバーのtegalog.iniをダウンロードしてテキストエディタで開き、113行目付近にある「freespace=」の後に<script>~</script>を書いて上書き保存・アップロード
【記入例】freespace=<script language="JavaScript" src="https://www.nannichime.net/s.php?d=2023/12/12&f=n"></script>
・多目的フリースペースではなくスキンのhtml内に直接<script>~</script>を書く
のどちらかしかないような気がします…。
お忙しい中ご回答ありがとうございます。IF文に関して理解できました!ありがとうございます。このままふたつにわけて書こうと思います。
改行無しで書いてるとたまにIF文として成立しなくなるのもたまたま気付いただけで特に困ってるわけではないのですが、あとで標準スキンでも試してみようと思います。確かにその辺自分で確認してから聞くべきでした……。
>>No.4859、No.4863 ありがとうございます。[[FREESPACEEDIT:URL]]で無事リンクできました。
>>4865 です
検証して頂きありがとうございます。
サーバー:シンフリーサーバー
発生タイミング:多目的フリースペースの設定画面で、下のソースを記述して、設定を保存する のボタンを押した時
てがろぐのバージョン:4.5.0
使用しているテーマ:skin-twitter (完全版に付属しているもの)
記述したソース
<script language="JavaScript" src="https://www.nannichime.net/s.php?d=2023/12/12&f=n"...

気になって自分のてがろぐで試してみたら、403エラーにはならずに正常に表示できました。
tegalog.cgiを「my $safemode = 0; 」にした上で多目的フリースペースにリンク先のカウントダウン・カウントアップ用の<script>~</script>コードを記述し、
skin-cover.htmlに[[FREESPACE]]と記述しました。
試したサーバーはローカル環境とXREAです。
どのサーバーをお使いなのかや、403エラーが表示されるタイミングがいつなのか(多目的フリースペースの設定画面で保存ボタンを押した時なのか、てがろぐにアクセスした直後なのか)、多目的フリースペースに記述した<script>~</script>の情報があると助言が得られやすいかと思います。
多目的フリースペースに掲載する内容の所に、こちら のソースを設置して、設定を保存しようとした所、403エラーになってしまいます。
どのようにしたらよろしいでしょうか。
関係ありそうな設定の状況(tegalog.cgi)
・セーフモード:HTMLソースを直接記述可能な設定項目に書かれた内容について(0:何もしない/1:scriptタグ系の記述は無効にする/9:あらゆるHTMLタグを無効にする) ※9は試験実装(β版)
my $safemode = 0;
☕Re:4863◆ああっ……! なるほど。すみません。リファレンスの記述が間違っていますね。[[FREESPACEEDIT:URL]] と書かないと認識されませんでした。リファレンスと >>4859 を訂正しておきました。
標準スキンのフリースペース編集リンクは
<a href="[[FREESPACEEDIT:URL]]">編集</a>
でした。使い方説明にも
[[FREESPACEEDIT]]
[[FREESPACEEDIT:URL]]
の二種類があるようです。十分に試行していませんが、取り急ぎご報告まで。
☕Re:4861◆ご指摘の差は、確かに抜粋収録か完全収録かの差ですね(深くは気にしていませんでしたが、確かに「抜粋収録」の方では投稿No.の出力がありませんね^^;)。
さて、てがろぐではRSSフィードも1つのスキンで作られています。デフォルトではそれが「外部ファイル」の形ではなく(てがろぐ本体に)内蔵されているものが使われているというだけの違いです。
てがろぐの「完全版ZIP」か「スキンだけのZIP」をダウンロードして頂くと、rssというフォルダの中に、RSSフィード用スキンのサンプルが格納されています。それを設置した上で、[設定]→[補助出力]→【RSSフィードの出力】で『自作のRSSスキンを使う』を選択すると、RSSフィードの中身を好きなように書き換えられます。
このRSSスキンサンプルでは、元々「No.XX~」は出力されません。
そのままでは、冒頭の150文字だけが出力されるように書かれていますので、skin-onelog.html ファイルの中の [[COMMENT:TEXT:150]] の部分を [[COMMENT]] に書き換えれば、全文が収録されます。
そのほかの表示も好きなように書き換えられますのでお試し下さい。
詳しくは、RSSフィード用スキンの作り方・使い方もご参照頂くと良いと思います。
この方法だと、RSSフィード用スキンを複数個用意して使い分けることもできます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169