てがろぐ - Fumy Otegaru Memo Logger -

お手軽一言掲示板(この辺の文章は「管理画面」の「設定」内にある「フリースペース」タブから編集できます。)

動作サンプルです。 ご自由にお試し下さい。パスワードguest管理画面もお試し頂けます。
■いま見ているスキンは「シンプル日記スキン」です。他に、 標準スキン昔のツイッターっぽいスキン(ブルー)昔のツイッターっぽいスキン(ピンク)付箋型スキンジャーナル(日誌)スキンブログタイプスキン(タイトル付きブログっぽくできるスキン)、 黒板スキンチャットタイプスキンがあります。
てがろぐCGIの配布・解説ページに戻る
:シンプル日記スキン: スキンは弄り放題なので、掲載したくない要素はたいてい省けます。このスキンでは投稿者名を一切表示しません。

or 管理画面へ

サイトマップ 5057件]

New! No.5229

4226です。
ご教示ありがとうございます、リンクを張る方向でで試してみます。
まだやり始めたばかりですが、たくさん機能があって楽しいです!使いこなせるように頑張りますね!

New! No.5228

5224です、お返事ありがとうございます。
できるかどうかわからないんですが、投稿画面から画像を添付して投稿するときにindex.xmlを書き加える処理をedit.jsでしたとしてもてがろぐの元々の機能でフラグ部分を書き換えられてしまいそうですよね…
うーん、何か良い手がないか考えてみます…

New! No.5227

ね、ねむい……!(別件のトラブルシューティングで凄まじく時間を使った……!)

🌭Re:5226◆鍵入力窓を任意の位置に挿入した場合は、「その鍵入力窓があった位置(=『見えている区画』と『隠されていた区画』との境界位置)」にアンカーが挿入されます。この仕様を利用すると、その「5000文字ほど書いた後」の位置にジャンプするなり、見た目を変えるなり、何らかの対処ができるでしょう。
(例えば、<a href="#HiddenPoint">隠されていた部分の先頭にジャンプ</a>みたいなリンクを用意しておくような。)
詳しくは、カスタマイズ方法ページの『正しい鍵が入力された後、鍵入力フォームのあった位置に挿入されるアンカーのHTML』項目をご覧下さい。

New! No.5226

最近てがろぐを設置したのですが、「鍵の入力フォームを任意の位置に」し、キーを入れると記事のいちばん上(1行目)に戻ってしまいます。
5000文字ほど書いた後の文章を鍵付きにしたいのですが、1行目に戻ってしまうのでまた読み直さなければいけなくなり四苦八苦しています。
設定かスキン、記事で何か必要な記述があるのでしょうか。ご教示いただけたら幸いです。

#質問

New! 回答/返信 No.5225

ホットドッグでもいい。それもないけども。(´・ω・`)🌭🌭🌭

🌭Re:5224◆文章投稿と同時に画像をUPする場合、その投稿が「下書き」や「鍵付き」に指定されていれば、画像にも自動的に「一覧外」フラグが付くという仕様はありますが、それ以外では画像情報の編集画面から設定するしかありません。
画像に対するフラグ等の情報は、画像インデックスファイル(=画像保存用ディレクトリ内に自動生成される index.xml ファイル)に記録されています。このファイルを編集すると、複数の画像に対するフラグを一括変更できるので便利な場面もあるかもしれません。
➡ 詳しくは、豆知識・FAQページの「大量の画像キャプションを一括設定(編集)したい場合は、XMLデータを直接編集すると楽かもしれない」項目をご覧下さい。

No.5224

てがろぐで画像付の投稿をするときに画像にNSFWや一覧外のフラグを付与することって今の所方法ないですよね……?
このフラグってどこで管理されているのでしょうか?

回答/返信 No.5223

ホットケーキを食べたい気分。ないけど。(´・ω・`)🥞🥞🥞

🥞Re:5222◆てがろぐの自動バックアップ機能は、常に「直前の状態」をバックアップしますので、「しまった!上書きしたかも!?」と思った瞬間にバックアップをダウンロードすると、上書き前のデータが手に入ります。ただ、残念ながら、次に何かを投稿(または編集)してしまうとバックアップも上書きされてしまいますけども。^^;

🥞Re:5221◆元の質問は分かりませんが、たぶん完璧な回答になっていると思いますので特に何も補足することはないと思うんですが、私が自分のてがろぐで使っているパンくずリストは以下のような逆向きのアプローチなので参考までに記します。

スキン側:
~ <a href="/">[[FREE:TITLE:MAIN]]</a> <span class="pankuzuAdd">[[SITUATION]]</span>
CSS:
.pankuzuAdd:empty {
   display: none;
}
.pankuzuAdd::before {
   content: '> ';
}


SITUATIONに何もない場合、出力されるHTMLは <span class="pankuzuAdd"></span> のような空要素になるので、その場合には :empty疑似クラスでこの要素を消すことで、「>」を見えなくしています。
No.5222さんのは「必要な状況で追加されるように書く」アプローチで、上記の私のは「不要な状況で消えるように書く」アプローチですね。もちろん、どちらでも良いと思います。

🥞Re:5220◆当初はあまり意味がある機能だとは思っていなかったのですけども、実際に実装してみると、確かにボタンの位置が動かない方が便利だな……と思いました。(笑) ご活用下さい~。(╹◡╹)ノ

No.5222

すみません、自分の投稿記事を編集しようとして質問のほうを上書きしてしまったかもしれません😰?
もしそうだとしたら質問された方へお詫び申し上げます。大変失礼しました。

No.5221

>>5221
1)外側スキンの[[SITUATION:HTML]]の部分をパンくずリスト風に
<div class="breadcrumb">
   <span class="homelink">[[FREE:HOMELINK]]</span><!-- フリースペースで設定した「ページのフッタ部分に表示するリンク」・不要なら削除 -->
   <a href="[[HOME:URL]]">[[FREE:TITLE:MAIN]]</a><!-- てがろぐのトップへのリンク -->
   [[SITUATION:HTML]]
</div>

css(簡易)
.breadcrumb .situation {
   display: inline;
}
.breadcrumb > *:not(:last-child)::after {
content: '>';
}

でいかがでしょうか

2)“全件”の数を取得したい
トップ(何も選択しない場合)に表示される記事総数をJavascriptで取得して表示する方法です。
フリースペースに(スキンに直接書いてもいいです)
<span class="soukensu">総記事数:[[INFO:TARGETPOSTS]]</span>
<div id="result"></div>

javascript
<script>
fetch('./') // 同一ドメイン内の別ページ
.then(response => response.text())
.then(html => {
  const parser = new DOMParser();
  const doc = parser.parseFromString(html, 'text/html');
  const targetElement = doc.querySelector('.soukensu');

  if (targetElement) {
    document.getElementById('result').innerHTML = targetElement.outerHTML;
  } else {
    console.warn('指定のクラスが見つかりませんでした');
  }
})
.catch(error => {
  console.error('取得エラー:', error);
});
</script>

css
.soukensu { display: none; }
#result .soukensu { display: block; }


上記2件を試したものを https://10prs.com/tegalog-cms/ で見ることができます(2.の件だけわかりやすいようCSSを適用していません、カテゴリ「sampleA」などを選んで該当箇所を見てみてください)
ご参考になれば幸いです。

No.5220

お世話になっております。結構前にdetailsの折りたたみがほしい…と要望したことがあったのですが、とうとう実装されてて本当に嬉しいです。ありがとうございます!これからも活用させていただきます。

情報 No.5219

Google NotebookLM(AIリサーチアシスタント)に、てがろぐ公式ヘルプのURLを指定して読ませたら、カスタマイズ方法等の質問に会話形式で答えてくれるチャットAIになる。……という話を4月20日にしましたが、当時は作成したNotebookを共有する方法がありませんでした。その共有機能がどうやら今日実装されたっぽいので、共有してみます。
てがろぐ解説 notebook (使うには、Googleアカウントが必要だと思いますが、無料で使えます。)#🌱豆知識

Bluesky

ただ、これはヘルプの書き方や構造の問題もありそうですが、実際には解説は存在するのに「ない」と回答されることもありますので、(返ってきた解説自体は参考にできそうですが)「ない」と言われた場合には信用しないで、質問を変えるか、もしくは自力でWebをご覧下さい。(笑)
「こう質問したのに、適切な回答はなかった」みたいな情報があれば教えて下さい。もしかしたら、ヘルプドキュメントの改善の参考になるかもしれませんので。

※これは、リアルタイムにWebから情報を取ってくれるわけではなくて、ソース(資料)としてURLを指定した瞬間のHTMLソースからテキストデータを抽出して取り込む仕様っぽいので、(私が今後もメンテナンスをすれば別ですが)2025年6月3日時点のヘルプドキュメントを元にして回答されます。

No.5218

>5213 大丈夫です!ありがとうございます!
ブラウザによって改行処理が違うんですね。知りませんでした!

No.5217

5209の者です。ご回答有難うございました!
『リンク先のWebページにTwitter Cardの指定があって、そこで大画像が指定されている』と言うことが可能性として高いんですね。モヤモヤと「何故?」という疑問を携えていたのでスッキリいたしました。
今も「CARD-S」や「CARD-L」の記述を使わせて頂いておりますので、そちらを利用させて頂きます。
細やかな疑問にお答え頂き、本当にありがとうございました。

No.5216

>>5215
5214さんとは別人で、Blueskyのアカウントを持ってない者です。
Androidスマホのブラウザから、5215のにししさんの埋め込みは両方とも画像つきで見えてます!

No.5215

ジャーマンポテトを食べました。再び。🥔🥔🥔

🥔Re:5214◆なるほど、Bluesky側の個別ページにはOGPが含まれているんですね……! 有用な情報をありがとうございます! なお、私の投稿で試してみたところ、単純にブラウザのアドレス欄に表示される(個別投稿の)URLを使っても埋め込めました。(もしかしたら、そのアカウントの設定によって異なるのかもしれませんが。)

▼Bluesky上の個別投稿のURLを使用:
(Loading...)...

▼Bluesky側の「投稿を埋め込む」機能から抜き出したURLを使用:
(Loading...)...

OGPがあるだけでなく、Twitter Cardの指定もあるんですねえ。(「大画像」が指定されていました。)

No.5214

現在のてがろぐにある機能でBlueskyの投稿を埋め込む方法があるか模索していたのですが、てがろぐに最近実装された「OGPカード」の機能で、埋め込みに近いことができると気づいたので、共有させていただきます。既出でしたら申し訳ございません。

■前提条件
  • Bluesky上の「投稿を埋め込む」機能を利用します。パソコンのブラウザでBlueskyを表示すればこの機能はあるのですが、BlueskyのAndroidアプリではこの機能がないかもしれません。iPhoneは確認できておりません。
  • 埋め込みたいポストのBlueskyアカウントで「アプリがログアウトしたユーザーに自分のアカウントを表示しないようにする」設定にチェックが入っているとBlueskyからの埋め込み用タグが提供されませんので、この方法が使えません。
  • 画像のあるポストを埋め込んだ場合、最初の1枚だけがOGPカード内に表示されます。


■手順
  • 埋め込みたいBlueskyのポストの右下の「…」を押す
  • 開いたメニューから「投稿を埋め込む」を押す
  • 「コードをコピー」ボタンを押す
  • コピーしたテキストを、お使いのてがろぐの投稿フォームかメモアプリ等に貼り付け
  • 「/post/」で検索し、それが含まれるURLをコピー(末尾の ?ref_src=embed はあってもなくても大丈夫なようです)
  • てがろぐで「OGPカード」ボタンを押し、コピーしたURLを貼り付け


OGPカードなので、画像1枚と一定の文字数しか載せられず、完全な埋め込みの代替にはならないと思いますが、こんな投稿してるよ!のアピールには多少なるかなと思いました。

もしこの方法はあまり良くないなどのご指摘がありましたらお寄せいただければ幸いです。どうぞよろしくお願いいたします。

回答/返信 No.5213

昼食はそうめん。🧊🧊🧊

🍅Re:5212◆詳しくご指摘をありがとうございます。全体的に再度調整してみました。今度は大丈夫ではないかな……と思いますが、どうでしょうかね?^^;

No.5212

>5211 5210です。すぐにご対応いただきありがとうございます!
「▼複数のてがろぐCGIでカスタム絵文字を共用したい場合の設定」とかまだ少しはみ出る部分はあるみたいなんですが(報告時に気づかずすみません)、スクロールや縮小しても読むには支障ないくらいになりました!大変助かります、ありがとうございます!

回答/返信 No.5211

珈琲飴を舐めます。あとカカオ72%チョコも。☕🍬☕🍬☕🍬🍫🍫🍫

Re:5206◆Perl 5.8.9のままでの動作テストありがとうございます。問題なく動いて良かったです。(╹◡╹)ノ
Re:5207◆投げ銭ありがとうございます! お役に立っているようで嬉しいです。
Re:5208◆カテゴリ目次モードは、FAQをてがろぐで作ろうと思ったときに、Questionのジャンル別に整列した目次が生成できると便利だよな、とは思っていまして、朧気には考えていました。ただ、時系列(の降順か昇順)に並ぶのが前提のシステムなので、そもそもそういう用途に適しているのかという問題もありますけども。作るとしても規模が大きめなので、気長にお待ち頂ければ幸いです。

Re:5209◆『リンク先のWebページにTwitter Cardの指定があって、そこで大画像が指定されている』というのが一番可能性が高そうに思います。どこのURLにリンクした時に問題が出るのかを教えて頂ければ調査できます。なお、カードサイズを固定する記法もありますので、相手先ページの記述に関係なく小画像で表示させたいなら、:CARD-Sを使って下さい。(もしくは、小カード用のCSSと大カード用のCSSを、どちらも「小カード用のCSS」にしてしまう方法もあります。※その場合は、大カードで見せる方法がなくなってしまいますけども。)

Re:5210◆一応Firefoxのレスポンシブモードではスマートフォンサイズで横スクロールが発生しないよう表示確認はしていたのですが、そういえば、URLっぽい文字列の折り返し処理については、実機とは動作が違いましたね(Firefoxだと「/」記号の存在で自動改行してくれるのですが)。ちょいとCSSを調整してみました。これでどうでしょうか?

No.5210

にししさんにお願いがあるんですが、てがろぐの使い方・設定方法のページについて
スマホから見ると、スクロールが横方向にぐにゃぐにゃしてしまって見づらいので
画面幅100%以上に文字をはみ出さないようにしていただけないでしょうか…!

具体的には「Twitterの任意の1ツイートを埋め込む書き方」や「▼設定例:Fancyboxを使って画像を拡大したい場合」の英字の部分です。

収まるまで画面縮小すると文字が小さくて読めなくて…カスタマイズ中はPCスマホで2窓したいことも多く
もし差し支えなければぜひお願いします!

てがろぐの管理画面も横幅調整できたら嬉しいなと思ったりもするんですが、こっちは載せる情報量とレイアウトが難しそうですよね。。環境もさまざまだし

No.5209

いつもお世話になっております。
OGPカード機能、待ち望んでいたのでとても嬉しく、活用させていただいております!

設定で「カード型リンクでの表示時」の部分の「Twitter Cardの指定がない場合に採用するカードサイズ」を「小画像」にチェックを入れているのですが、何故か大画像で出てしまいます。小画像で出ることもあるんですが、高い確率で大画像で出てしまいます。
特にCSSなどでそこまで弄っていないつもりなのですが、何か影響している可能性のあることや気をつけておいた方が良いことはあるでしょうか?
お手隙の際にご教示頂けますと幸いです。

No.5208

>>5204 です
>>5205
お返事ありがとうございます。

カテゴリ目次モード、需要は絶対ありますよ!イラストや漫画などの作品を展示するサイトの管理人から!と勝手に思っております(笑)
身内用にスキンを作成および調整することがあるのでカテゴリ目次モードがあればより一層気軽にサイト運営ができるなと思いました(個人的にSNSよりも
個人サイトの方がその人が好きな要素などを浴びれるので個人サイトの時代が返ってこないかと思案しております)
要望を受け取っていただきありがとうございます。いつもアプデが早く頻繁なので他の機能も含めて楽しみにしております。

具体的な方法(「最初のli要素」以外の要素は消すようCSSを書く』か、または『「最初のli要素」に含まれている情報だけから抜き出すようにJavaScriptを書く)のご提案ありがとうございます。
現在好きにPC触れない状態ですので、また落ち着いたときにChatGPTにでも聞きながら試してみようと思います。

引き続きよろしくお願いいたします。

No.5207

「続きを読む」ボタンを開いたあとの「畳む」ボタンを上に置きたいという要望を出していた者です。
今回Ver4.6.1.から<details>での折り畳み機能が実装されたことで実現できました。
いつもサポートしていただいている感謝のお気持ちも兼ねて、ささやかながら投げ銭させていただきました。いつもありがとうございます。

No.5206

No.5187で質問をした者です。
確認が遅れまして申し訳ありません。ご回答ありがとうございます!
ご指摘いただいた通り、Perlのバージョンが5.8.9になっておりました。
既に対応版をリリースしていただいているとのことでしたので、5.8.9環境のままでバージョンアップを試してみた所無事に4.6にバージョンアップすることが出来ました。動作対象外と言われてもおかしくない所、ご対応いただきましてありがとうございます…!

Perlを古いバージョンのまま使用するのも問題がありそうですし、改めて「標準のPerl[推奨]」に設定を変更しておきました。
この度は本当にありがとうございました。

回答/返信 No.5205

チーズケーキを食べました。おいしい。🧀🍰🧀🍰🧀🍰

🧀Re:5202◆お役に立ったようで良かったです。閉じる用のspan要素を動的に生成して表示を切り替えるのは良い方法ですね。実装時に「閉じる用のラベルに切り替える仕様の方が良いかな?」とちょいと思いはしたんですが、ラベル文字列を直接書き換える方法だと元に戻す処理が面倒だな、と思ったのでやめました。(笑)

🧀Re:5203◆その場合は、てがろぐを2つ設置して、設定を分けるしかなさそうに思います。

🧀Re:5204◆ご要望をありがとうございます。「すべてのカテゴリ」に対して「カテゴリ単位で指定の情報を表示する」ような一覧ページの需要がそこそこあるっぽいので、たぶん、そういう用途専用のモードを用意するのが一番良いのだろうな、という気が朧気にしています。『カテゴリ目次モード』みたいな。気長にお待ち頂ければ幸いです。
◆新着投稿リストで出力される各要素には「新着投稿リストの各部分をCSSで装飾する方法」で説明している通り、class名が割り振ってあります。
日付部分は <span class="postdate">年/月/日</span> のように .postdate が割り振られています。
なので、(他の場所で利用しているために)日付だけを出力するように設定できない場合でも、「CSSでこれ以外を非表示にする」または「これだけをJavaScriptで抜き出す」かすれば、日付だけを表示できます。お試し下さい。(※2件以上を表示するよう設定して使っている場合は、『「最初のli要素」以外の要素は消すようCSSを書く』か、または『「最初のli要素」に含まれている情報だけから抜き出すようにJavaScriptを書く』かすれば、「最新の1件」の情報だけを表示できるでしょう。)

No.5204

5197です。

>>5199
>>5200
お返事ありがとうございます(まとめてで申し訳ございません)。

5197の説明があまりうまくなくて申し訳ございません。
親カテゴリpictの子カテゴリとして、A,B,Cがあるとします。
このときスキンで[INCLUDE:pict] と記載したら
◎A
カテゴリAのサイトマップやスキンで設定しているサムネ等
◎B
カテゴリAのサイトマップやスキンで設定しているサムネ等
◎C
カテゴリAのサイトマップやスキンで設定しているサムネ等

…という風に『pictカテゴリに属するものがごちゃまぜで表示されるのではなく』、『親カテゴリ(pict)の下にある子カテゴリごとに表示する』ようなイメージです。
確かににししさんが疑問に抱かれているとおり、スキンに[INCLUDE:pict] を記載する必要はあります。
しかし今後カテゴリが増えたとしても子カテゴリごとに分けて表示をするイメージですので新たにカテゴリを増やしたとしてもその分追加して表示されるイメージです(伝わりにくかったら申し訳ございません)。
随時埋め込み用のURLを記載する必要はありません。

新着投稿リストについてなのですが、通常の更新履歴の部分で現在使用しております(日付・タイトル・カテゴリ)。それとは別で特定のカテゴリの日付のみを表示したいのです。
その日付を表示する箇所がメニューのところでして( info pict 落書き(MM/DD)のように)。
 [[LATESTLIST:CAT(カテゴリID)]]では通常の更新履歴で使っているタイトル・カテゴリの部分が余分だと感じます。
[[INFO:LATESTPOSTDATE]]はカテゴリ表示が出来ず、またYYYY/MM/DDあるいはMM/DDだけで良いので時間の部分が余分だと感じております。
 [[LATESTLIST:CAT(カテゴリID)]]の所に掲載される項目について『今のところ、スキン側では指定できません(将来対応予定)。』とあるので将来を待つしかと思いました。
また『カテゴリ限定のパラメータを付けたURLにJavaScriptでアクセスして合成する』ですが、新たにスキンを作れば確かに可能だとはおもいます。
ただこれは個人の感じ方なのですが、新たにスキンを作成することも、それの管理をするのも少し手間だなと感じてとっかかりにくいところがあります(勿論個人の意見なので、苦に感じない人もおりますし、なるべく簡単にしたいなと強く思っておりますので…)。

なるほど、標準で搭載してしまうと機能拡張をしたい人へのハードルがあがることやカスタマイズが却って難しくなるデメリットがあったのですね。その部分については確かにそうだと思いました。
それなら確かにこのままの方が長い目で見たときに良いのだろうなと思います。

ご質問とご提案と考えを教えていただきありがとうございました。
もしも他に「こういうアプローチの仕方があるよ」等ありましたら教えていただければとても嬉しいです。

No.5203

カテゴリA+下げる投稿はカテゴリ限定でのみ表示したい
カテゴリB+下げる投稿はカテゴリ限定、日時指定、検索結果に表示したい

この場合ってなにかいじれば可能でしょうか……?

No.5202

Ver 4.6.1の折り畳み記法で毎回ラベルを入れなければいけないのが面倒だから隠す記法と同じように使いたいな…と思って要望を書きに来たら、既に>>5192さんが同じ内容を投稿されてる上にもう新しいβ版で反映されていて驚きました。私も早速Ver 4.6.2にアップデートしました。5192さんとは別人ですがありがとうございます!

私は折り畳み記法にjavascriptとcssで開閉状況に応じてラベルが変わるカスタマイズをしてます。
折り畳まれているボタンをクリックして展開するとボタンのラベルが「閉じる」に変化し、展開された領域を折り畳むとラベルが「続きを読む」などの展開前のものに戻ります。同じことをしたい人がいましたら参考までに。

外側スキンの遅延読み込みスクリプト群に追加
//折り畳み記法の部分に「閉じる」ラベルを追加
document.addEventListener("DOMContentLoaded", function() {
    // decorationO クラスを持つ details 要素を取得
    document.querySelectorAll("details.decorationO > summary").forEach(summary => {
        // 既に foldlabelClose がない場合のみ追加
        if (!summary.querySelector(".foldlabelClose")) {
            let closeSpan = document.createElement("span");
            closeSpan.className = "foldlabelClose";
            closeSpan.textContent = "閉じる";
            summary.appendChild(closeSpan);
        }
    });
});


スキン用cssに追加
/* 開いている状態の時に「続きを読む」を消す */
details[open] .foldlabel {
  display: none;
}

/* 閉じている状態の時に「閉じる」を消す */
details:not([open]) .foldlabelClose {
  display: none;
}

No.5201

先月に公開した Ver 4.6.0 正式版の配布ZIPの中身も、古いPerl対応版に差し替えました。

No.5189に書いた通り、お使いのサーバにインストールされているPerlのバージョンが古い場合(Perl 5.10未満の場合)に限って、てがろぐCGIを Ver 4.6.0 にバージョンアップすると「500 Internal Server Error」になってしまう問題がありました。(※正確には Ver 4.5.3β~4.6.1βのバージョンで発生していました。)
Perlのバージョンを 5.10.x 以上にすることで正常稼働するようになりますが、他に稼働させているCGIの都合等でPerlのバージョンを上げられない場合のために、Perl 5.10未満でも正常稼働するよう修正しましたので、先程 Ver 4.6.0 のZIPも差し替えました。

先月から本日までの間に、TegUp等を使ってバージョンアップした結果「500 Internal Server Error」が出たのでバージョンダウンした、という方は、再度TegUp等でバージョンアップしてみて下さい。今は問題なくバージョンアップできるハズです。

※注意:既に Ver 4.6.x がエラーなく動作している方々は、何もする必要はありません。(差し替えたZIPに収録しているファイルは、問題箇所を書き換えただけで、機能面ではまったく同じですので。)
具体的な原因と対処の余談
具体的には、$value = Ⓐ // Ⓑ;という記述で「ⒶがundefだったらⒷを代入する」という意味になる『defined-or演算子』が Perl 5.10 から導入された書き方だったために、Perl 5.10未満ではエラーになっていたのでした。この書き方を使っていたのは1箇所だけでしたので、そこを $value = defined Ⓐ ? Ⓐ : Ⓑ のような、以前から使用可能な書き方に改めただけです。

回答/返信 No.5200

昼食はコーンピザ。🌽🍕🌽🍕🌽🍕

🌽Re:5197◆例えば、pictカテゴリを埋め込むために [INCLUDE:pict] と書かなければならないのであれば、現状の埋め込み用URLを1つ1つ書くのと手間が変わらない(=カテゴリが増減すればそれに合わせて書き換えなければならないという点で同じ)と思うのですが、そういうわけではないんですかね?

なお、特定のカテゴリの最新投稿日付を得るには、No.5199さんもお書き下さっていますが、新着投稿リストに表示する項目を日付だけにすればいける気がします。他にも、(JavaScript等で合成する方法で良いのであれば)外側スキンに [[INFO:LATESTPOSTDATE]] を書いたスキンを作っておいて、カテゴリ限定のパラメータを付けたURLにJavaScriptでアクセスして合成する……というような方法もありそうな気がします。

あと、ドラッグ&ドロップのようなリッチな機能を標準で搭載してしまうと、自作のスクリプトで機能拡張しようとなさる方々のハードルが上がってしまいそうな気がしますので(※標準で出力されるソース(特にJavaScript)が複雑になればなるほど、それに干渉しないように作るのに手間が増えそうですし)、今のところは避ける方針で居ます。(配布するにせよ自分だけで使うにせよ)好きなようにカスタマイズしやすいのは、標準で出力されるソースがシンプルだから、という点もあると思いますので。バージョンアップを経る度にいろいろ機能を増やしてはいますが、それは基本的には「選択肢を増やす」方向に留めて、標準の出力ソース自体が複雑化してしまうのはできるだけ避けたいと思っています(複雑になるとカスタマイズが難しくなってしまうため)。

🌽Re:5198◆たまたまその周辺機能の見直しをしつつあったところでしたので、即改善できました。^^;
🌽Re:5199◆サポートありがとうございます~。(╹◡╹)ノ

No.5199

>>5197

新着投稿リストの掲載対象をスキン側で限定する方法(掲載する対象を選択)
https://www.nishishi.com/cgi/tegalog/custom/#customize...
この方法ではいけませんか…?

No.5198

こんにちわ。
>>5192の折畳ラベルについて書いた者です。
も、もうアップデートされてる!?とびっくりしました!
さっそくバージョンアップさせていただきました。
更に使いやすくなり、嬉しい限りです。
これからもてがろぐライフを楽しみたいと思います。
ありがとうございました!

質問/要望 No.5197

いつもお世話になっています。
てがろぐでイラストサイトを作成しているものです。個人的には昨今の流れでちょくちょくてがろぐを使った個人サイトが見られるようになって嬉しく思います。

さて、現在展示ページをサイトマップモードの埋め込みで作成しております。ジャンルごとにカテゴリを作成し、カテゴリを絞り込みしたサイトマップモードを埋め込んで以下のように表示しております
ジャンルA
サムネ
ジャンルB
サムネ

カテゴリが増えるとスキンに埋め込み用のURLなどを追加しなければならず、個人的に手間だと感じます。
ここから要望なのですが、スキンで例えば[INCLUDE:pict]と記載すれば特定のカテゴリ(pict)の子要素のカテゴリ名とそのサイトマップを表示するようにしたら良いのになと思いました。

また、今新着表示機能があるのですが、そちらとは別に[NEWDAY:A,B]のようにしたらカテゴリA.Bの最新の日付の表示(あるいはA、Bを親とする子カテゴリ)が出来るようになったらいいなと思いました(こちらの想定はメインの更新とは別に落書きページの更新日をtopに載せるイメージです)。

上記2点についてもしも他の方法で似たようなものをできるのであれば教えていただきたいです…! 

別件ですが、有志の方が作成された画像をD&Dするスクリプトがとても便利なのですが、てがろぐでも初期搭載してもらえたらなと思います…!

長々と失礼しました。
ご検討のほどよろしくお願いします。

アップデート✨ No.5196

開発進捗状況報告サイトで、てがろぐ Ver 4.6.2(β版)の配布を開始しました。ご自由にダウンロードしてご活用頂けます。お試し頂ければ幸いです。主に以下の点を搭載しています。

🆕 Ver 4.6.2βの更新点(概要):
《▼仕様改善》
折り畳み記法で出力されるsummary要素にもclass名を割り振るよう改善。
折りたたまれた領域をRSSやOGPに出さないよう改善。
装飾系ボタンの動作改善
  • 「折畳」ボタンで、サマリー(ラベル)を空欄にしたままでも折り畳み記法を挿入するよう改善。
  • 「隠す」ボタンで、ラベルの入力ができるように改善。(ラベルを省略したい場合は空欄のままOKを押す)
  • 「汎用装飾1~9」ボタンで、追加のclass名を入力できるように改善。(省略したい場合は空欄のままOKを押す)
《▼スキン更新》
通常モードで使うスキン9種類に、折り畳み用のCSSを追記。
《▼不具合修正》
❎[[COMMENT:TITLE]]記法で1行目を分離するスキンで表示が崩れる可能性がある問題を解決。
❎装飾の入力をキャンセルした場合に、投稿欄にフォーカスが戻らない不具合を修正。
❎Perl 5.10.x未満の環境では動作しなくなっていた問題を修正。

詳しい使い方などは、上記の開発進捗状況報告ページの記事をご覧下さい。

🍘SNSでのアナウンス:
Mastodon(Pawoo)
Bluesky
Twitter:

No.5195

続きを読む
てす

回答/返信 No.5194

ジャーマンポテトを食べました。🥔🥔🥔

🥔Re:5192◆ご要望をありがとうございます。たしかに、記法ではラベルを省略可能でも、「折畳」ボタンから入力する方法だと省略できませんでしたね。これは仕様を改善しまして、下図のように(ラベルが不要なら)空欄のままでOKボタンを押せば、ラベルを省略した記法が挿入されるようにしました。次のVer 4.6.2βからお使い頂けますのでもうしばらくお待ち下さい。既にここ(いま閲覧している動作試験場)では Ver 4.6.2βが稼働していますので、投稿欄からお試し頂けます。
20250528233915-nishishi.png
Ver 4.6.2βは、近日中には配布できる予定でいます。(たぶん)

No.5193

ラベル
折り畳まれる内容

No.5192

てがろぐにはいつもお世話になっています。
折り畳み([O:~)機能なのですが、機能ボタンを使った時、隠す([H:~)機能と同じくラベル入力なしでも挿入できるようにしてもらえると嬉しいです。
毎回ラベルを変える訳でもなくデフォルトで入るラベルで充分なので…
それなら隠す機能でいいのでは?と言われてしまいそうですが、これは私の都合でしかないのですが、てがろぐ外の自サイトで同じ折り畳みタグを多用しているので合わせたいのもありまして。
(ですのでてがろぐで折り畳み機能が追加されてめちゃくちゃ嬉しかったです!)
もし何か理由あってのラベル必須項目なら申し訳ないです。

No.5191

>>5189
 No.5178の者です、お返事ありがとうございます。確認が遅れ大変失礼いたしました。
個人的には30MB以上のデータサイズでも対応できるようにして頂けるならありがたいのですが、サーバーへの負荷や操作ミスのリスクを考えると難しいところですね…
今後大きなサイズのイラストを投稿するときはFTPを利用するようにします。
お忙しい中お手数をおかけしました。

No.5190

No.5181の日付についての質問をした者です。
無事にやりたかった動きになりました。にしし様、5185様、本当にありがとうございました!

No.5189

てがろぐCGIを Ver 4.6.0 等にバージョンアップした結果として 500 Internal Server Error になる場合:
(※Ver 4.5.3β以降で発生します。)

もし、サーバのコントロールパネルからPerlのバージョンを切り替えられる場合で、切り替えても問題ないなら、Perl 5.10.x 以降のバージョンにして下さい。そうすると、正常稼働するようになります。
例えば、さくらインターネットのサーバなら下記の場所(コントロールパネル→スクリプト設定→言語バージョン設定)で切り替えられます。特に不都合がなければ『標準のPerl[推奨]』に切り替えると望ましいですが、最低でもPerl 5.10 以上にすれば問題ありません。
Perlのバージョンを上げる設定(さくらインターネット)
Perlのバージョンを上げる設定(さくらインターネット)


なお、他に稼働させているCGIの都合でPerlのバージョンを上げられない場合は、次に公開するてがろぐの新バージョンをお待ち下さい。こちらのローカルにあるソースでは、Perl 5.10.x 未満でエラーになる記述を修正しましたので、次のバージョンからは Perl 5.8.9 のような古いPerlでも正常稼働するようになります。

※Ver 4.5.3β以降で発生していた問題なので、この間に 4.5.3、4.5.4、4.5.5、4.5.6、4.5.7 のβ版を挟んでいたわけですが、全く報告がなかったことからして、β版をご試用の方々はみなさんわりと新しいバージョンをご使用ということなんでしょうね。(^_^;) 私もそういえば、Perl 5.8.9では動作確認をしていませんでした。

回答/返信 No.5188

目が乾くので眼科で目薬と飲み薬をもらってきました。
しっかり、まばたきしましょう。(>_<) (O_O) (>_<) (O_O) (>_<) (O_O) (>_<) (O_O)

🥞Re:5187◆おっと、さくらインターネットでも500エラーが出てしまいますか。
以下の2点を教えて頂けますでしょうか。 (追記)No.5189に書いた点が問題だろうと思いますのでそちらをお試し下さい。

➊Perlのバージョンは何でしょうか?
てがろぐ管理画面HOMEで、Perlのバージョンを知る方法
下図の黄色矢印の先に見える「Perl v5.16.3」のような値を教えて下さい。
PerlVerNum-OnConfigHome.png
もしくは、サーバのコントロールパネル等で確認しても良いです。さくらインターネットの場合は、コントロールパネル左端のメニューで[スクリプト設定]→[言語バージョン設定]を見ると出てきます。

➋同一サーバ内に新しいディレクトリを作成して、てがろぐVer 4.6.xをそこに新規セットアップした場合でも、500エラーになりますか?
なる場合:
サーバのエラーログを見せて頂けるとありがたいです。
500エラーが出た直後に、サーバのエラーログ画面を表示すると、下端付近にtegalog.cgi関連のエラーが記録されていると思います。その内容を教えて下さい。(ここに書いて下さっても良いですし、メールで送って下さっても良いです。)

※サーバのエラーログは、以下の手順で閲覧できます。
さくらインターネットのコントロールパネルにログインして、左端のメニューから[サーバーステータス]→[アクセスログ]とたどり、「エラーログ」という区画にある「本日のエラーログ」ボタンを押すと、下図のような画面になります。
SakuraServerErrorLog.png

ここには、直近に発生したエラーが1000件まで表示されています。(最新のデータは下端)
ここで、もし右端にスクロールバーが見えている場合は下端までスクロールして下さい。
おそらくその最下行あたりに、tegalog.cgiかfumycts.pl関連で何らかのエラーが出ていると思います。(※複数行ある可能性があります。)
それをコピーして教えて下さい。

※どれなのか判別できない場合は、丸ごとメール等で送って下さっても良いです。
※先にエラーを発生させないとログに出てこない点にご注意下さい。コントロールパネルを表示させた後にエラーを出した場合は、この画面に見える「更新」ボタンを押して下さい。

ならない場合:
(今メインでお使いになっている方の)てがろぐ設置ディレクトリにある tegalog.ini ファイルをメールで送って頂けると何らかの調査ができます。

No.5187

はじめまして。
自サイトの方で一言ツール+簡易イラスト置き場として「てがログ」を利用させていただいている者です。PCからもスマホからも手軽に更新できるのが便利で凄く重宝しております。素敵なスクリプトをありがとうございます!

現在てがろぐ4.5を使用しているのですが、4.6へのアップデートを行うと500エラーが表示されるようになってしまいました。
Tegupでの自動バージョンアップ、最新版をサイトから落としてきてFTPソフトで上書きする方法の両方を試しましたがどちらも500エラーになります。Tegupでは正常にバージョンアップが完了しましたという表示が出たあと、サイトに戻るとエラー画面となります。
cgiやphp部分の改造は特に行っておらずスキンまわりを弄っているだけなのですが(外部から「いいねボタン・改」というスクリプトを引っ張ってきていますがスキンに表示を追加するのみの調整です)、500エラーが出る原因となりそうな箇所などもしありましたらご教授いただけますでしょうか。

下記が実際に設置しているURLとなります。お忙しい中恐縮ですが、どうぞよろしくお願いいたします。
(設置先はさくらインターネットになります)
https://blue-black.sakura.ne.jp/blue/tega/tegalog.cgi

No.5186

シューアイスを食べようかな……どうしようかな……と迷って、腹の脂肪具合と相談して、とりあえず見送りました。_(:3」∠)_

🧊Re:5185◆おぉ、それはスマートなアルゴリズムですね! たしかに、JavaScriptが解釈しやすい日付フォーマットでdata-属性に出力しておいて現在日時と比較する方法なら、てがろぐの現状の仕様だけで簡単に(任意の)経過時間が計算できますね。

というわけで、No.5181さんは、ぜひ以下の手順で試してみて下さい。
--- ▼Step①: ---
まず、内側スキンで相対時刻を掲載したい箇所に
<span data-published="[[DATE:Y-M-D]]T[[DATE:h:m:s]]">[[DATE:《A》]]</span>
……と書いておきます。
(※data-published属性値は ISO 8601 のローカル時刻形式「YYYY-MM-DDThh:mm:ss」になるようにしています。)

--- ▼Step②: ---
次に、外側スキンに『日時情報を比較して非表示にするJavaScript』を書きます。
具体的には、このリンク先で閲覧できるChatGPTとの一連の会話をご覧下さい。
この会話の最後に提示されているソース(全20行)をコピー&ペーストして使って下さい。(注:最初のソースではなく最後のソースです。)
(なぜISO 8601フォーマットにしたのかの理由が会話の途中で分かります。^^;)

実際の動作テストはしていないのですが、JavaScriptソースを読んだ限りではいけそうな気がします。
なお、「24時間」の閾値を変更したい場合は、ソース中の if (diffHours >= 24) の「24」の部分を修正すれば良いです。

No.5185

投稿時間から24時間以上経過した場合に非表示にするだけだったら
javascriptで内側スキンに日時を表示するspan要素に相対時間表示([[DATE:A]])を入れて、
span要素にdata属性でdata-publishedなどの中に[[DATE:Y/M/D W h:m]]などを与える

現在時刻をnew Dateで作った後data-publishedに与えた日時と比較して24時間(60*60*24=86400秒)以上だったら
style属性にdisplay:noneを付与する(または最初にnone属性を与えておいてblockに変更する)とかでも実装できそうかなと思いました
実際のコードは書いてないのであくまでも考えてみただけですが……

回答/返信 No.5184

昼食はそうめん。🧊🧊🧊

🧊Re:5181◆なるほど、新たな視点をどうもありがとうございます! 投稿からの経過時間に応じて表示を変えるという発想はありませんでした。今のところ経過時間に応じて表示/非表示が切り替わるような機能はないのですが、[[DATE:~]]記法に『投稿からの経過秒数』を得られるようなオプションを加えてみましょうかね? そうすると、JavaScriptを使って簡単に経過時間が判別できるので、JavaScriptで表示/非表示を切り替えられるでしょうし。

《補足》現状でもJavaScriptで実現できなくはない話
なお、現状でも、JavaScriptで const $pastTimeStr = "[[DATE:A]]"; のように書くと、変数 $pastTimeStr には「5秒前」や「10分前」や「3時間前」や「2日前」のような文字列が入ります。

事前に、てがろぐ管理画面の[設定]→[ページの表示]→【経過時間(相対時間)の表記】で、『1時間以上 24 時間未満なら「時間」で表示』のように、24時間を超えると「日」単位で表示されるように設定を変更しておけば、24時間が経過した時点で「2日前」という表示になります。
とすると、この変数$pastTimeStrの中に「秒」か「分」か「時間」という漢字が含まれていなければ、投稿から24時間以上が経過していると判断できます。

これを使って、(例えば相対時間表記の部分に <span id="pastTime[[POSTID]]">[[DATE:(A)]]</span> のような感じで、その要素を特定できる何らかのid名を割り振っておけば)JavaScriptで表示/非表示を切り替えることはできそうに思います。

(追記) ➡もっと良い方法を No.5185 さんが提示して下さいましたので、それを実現するソースを No.5186 に書きましたからそちらをご覧下さい。

🧊Re:5182◆そうですね。Skebサイトに久しぶりにアクセスしたとき、ほんの数秒間くらいだけ『繰り返し表示される場合はCookieを有効にしてください』のような表示が出ますよね。なので、Skebのページをまともに閲覧するには、Cookieを使ったセッション確認的なものが必須なんだと思います。(つまり、Cookieを受け入れる仕組みを持ったユーザエージェント以外でアクセスすると中身が見えない。)
Skebは、利用規約でプログラムによる自動アクセスを禁止していますが、単に禁止と言うだけではなくて、技術的にもアクセスを拒否する仕組みを用意しているということでしょうね。

そもそも、人間がブラウザでアクセスしても、Skebのページって「JavaScript前提」になっているんですよね。HTMLソースを表示させても、Skebページ内に見えている日本語文字が出てきません。^^;
なので、Skebは「Cookieを受け入れた上で、JavaScriptが実行できる環境」(要するに一般的なブラウザ)からのアクセスしか受け付けない実装になっているのではないかと思います。

……とはいえ、Twitter Cardっぽい情報の欠片みたいなのはHTMLソースに含まれていますから、Skeb側が認めたSNS等からOGPを参照された場合には正しく情報を返すような仕組みが(Skeb側に)用意されているのかもしれません。

任意のWebサイトからSkebのOGPを読んでリンクカードを作るのは、たぶん諦めるほかないのではないかな……と思います。(もしかしたらSkeb側が何かAPIを用意しているかもしれないのですが、軽く探してみた限りでは見つけられませんでした。もし何か公式情報があるようでしたら教えて下さい。)

No.5183

あいうえお

No.5182

tesuto
(Loading...)...

SkebへのカードリンクがダメなのってSkeb側の仕様なんですかね……

No.5181

検索して探したのですがなかなか見つからなかったので、こちらにて失礼します。経過時間(相対時間)表記機能について質問です。[[DATE:《A》]] を使ってn秒前やm分前という表示を24時間以内の時だけ表示させ、24時間を過ぎたら非表示にしたいのですが、この場合はどこを設定すればできますか?
経過時間の表記変更は設定の項目でできる事は分かったのですが、一定時間後に非表示にするなどの方法が探してもなかなか見つからなくこちらで質問させて頂きました。
お忙しいところ恐れ入りますが何卒よろしくお願い致します。

No.5180

5174/5176です。要望、ご検討いただきありがとうございます。

また、余談とのことでしたが、具体的な対応策を詳細にご教示いただき、ありがとうございました。何度も読み返させていただきました。

少し前に、同じく手作業で1000件ほど、SNSの投稿データをてがろぐに移動させたことがあったものですから、300件くらいなら…と、感覚が麻痺してしまっていたような状態でした。
でも、やはり何かしら効率化は【できる】し、恐らく自分の勉強のために、【やるべき】でもあるのだなと猛省いたしました。ご想像のとおり、プログラミング言語やAIとは縁遠い人生でしたので、これを機にもう少し、勉強してみようと思います。

この度は色々とお時間を割いていただき、誠にありがとうございました。

回答/返信 No.5179

朝食はサンドイッチ。🥪🥪🥪

🥪Re:5178◆おっしゃるとおり、30MBというのは「サーバへのアップロード時の連続通信を切る閾値」でしかなく「扱えるサイズの上限」というわけではありません。なので、FTP等の別手段でUPした場合は、30MBを超えていても(てがろぐ側が扱う上では)問題はありません。その画像を [PICT:~]で表示させても問題ありませんし、画像管理画面に出しても問題はありません。

仕様上の上限があるのは、●CGI側の処理がサーバに負荷を掛けすぎていると解釈されないようにするため、●誤って巨大なファイルをUPしてしまわないため、●未知の不具合で莫大なファイルがUPされてしまうようなケースがあった場合の被害を軽減するため、などが理由ですが、その閾値を30MBに設定しているのは「まあ、それくらいを超えるファイルをUPする需要はないだろう」という予想からでしかありません。(^_^;) よほどそれでは不足するようなら見直しも考えます。(プログラムの起動時点で上限を固定しておく必要があるので、設定画面等でユーザが自由に変更できるようには作れないので。)

質問/要望 No.5178

平素より大変お世話になっております。
素敵なツールの開発に継続的な改良、本当にありがとうございます。
自分好みにカスタマイズ可能でマイペースにつぶやき・メモを残せる理想のミニブログとして愛用させていただいています。

当方、てがろぐにてイラストを投稿することがありますが、投稿に失敗することが度々ありました。
そこでユーザー側で設定可能な画像の容量上限とは別にCGI側にて設定されている「強制的にHTTP接続を切る仕様上のデータサイズの上限」は30MBとの記載を見つけ、投稿に失敗したすべての画像がこのサイズを超過していたためおそらくこの仕様に引っかかったものと思います。
質問ですが、例えばFTPでサイズ上限を超過するメディアファイルをアップロードの上でてがろぐの投稿から [PICT:メディアファイルのパス]とした場合てがろぐの動作に支障はありませんでしょうか?
記載を読む限り30MBはサーバーとの通信を切る上限サイズでてがろぐで扱えるデータサイズの上限ではないと読み取れますが、CGIの仕様には疎いため念の為質問をさせて頂きました。(それ以前に上限に収まるように事前に調整すべきとは思います…)

#質問

回答/返信 No.5177

昼食のパスタでおなかいっぱい。ぐっふぅ。_(┐「ε:)_

🍝Re:5176◆詳細な背景情報をありがとうございます。よく分かりました。日付欄の常時表示ができるような設定も、ToDoリストには含めておきます。
300件もの移行作業を手動でとは頑張りましたね。^^;

以下は、今後や同様のことをしようとされている方々に向けた余談のようなものです。参考までに記します。

エクスポート機能がなかったとのことですが、エクスポート機能がなくても表示ページのHTMLをローカルにファイルとして保存することは可能ですから、私なら以下のような「データ変換のための使い捨てプログラム」をChatAIに作ってもらって実行します。
ローカルにある複数のHTMLファイルから情報を抽出して、別のブログツールに結合するためのデータを作るプログラムをPHPで書こうとしています。どのようなソースコードを書けば良いか教えて下さい。
以下の手順での処理が必要です。

1. サブディレクトリ OldBlog にあるすべてのHTMLファイルから以下の情報を抽出する。

(a) ページタイトル : title要素の中身を取得。
(b) 投稿日時 : <span class="postdate">~</span>の中身を取得。
(c) 本文 : <div class="post">~</div>の中身を取得。

2. 投稿日時を整形する。

元データの投稿日時は「 2025年5月17日(土) 12時18分 」のような日本語形式で書かれています。これを YYYY/MM/DD hh:mm:ss 形式に整形します。西暦は必ず4桁で、それ以外はすべて必ず2桁にする必要があります。

3. 本文を整形する。

本文として取得した内容にHTMLタグが含まれている場合は、改行以外のHTMLタグをすべて削除します。
また、改行タグはすべて <br /> に統一します。
改行コードもすべて削除して、データが1行になるようにします。

4. 移行先ブログツール用のデータを生成する

手順1~3で用意したデータを1件ずつ、以下のような1行のデータに変換します。

   <log><date>日付</date><id>連番</id><user>admin</user><cat></cat><flag></flag><comment>本文</comment></log>

「日付」部分には、2で作成した YYYY/MM/DD hh:mm:ss 形式の日付を入れます。
「連番」部分には、半角数値で 10001 から始まる番号を入れます。
「本文」部分には、3で整形した文字列を入れます。
それ以外の文字列は上記のまま使います。畳む

上記のプロンプトを使ってChatGPTに生成してもらった結果が https://chatgpt.com/share/6828044f-0eec-800b-bdcc-9269... です。
元ページの構造に応じて指示は変える必要がありますから、このまま使えるわけではありませんけども。(元データとして書いた内容がテキトーなので動作確認はしていませんが(しようがありませんから)。生成されたcleanHtmlBody関数の中で若干無駄なことをしている気もしますが、まあ概ね問題なさそうな気がします。^^; 元データがHTMLの文法に正確には従っていない場合は「DOMDocumentを使わずに、正規表現で抽出して下さい」的な指示を加える必要はあるかもしれませんけども。)

こういう感じで、『元HTMLソースから情報を抽出して、てがろぐのデータ形式に変換する』プログラムを用意すれば、自力で1つ1つ移行するよりも楽に済みます。(生成されたデータを、既存の tegalog.xml にペーストするだけで済みます。※もちろん、うまくいかなかった場合に備えて元の tegalog.xml ファイルはバックアップ保存しておいて下さい。)

ここでは、元データがローカルにHTMLファイルとして存在していることを前提にしています。
この手のプログラムに「ネット上から情報を取ってくる処理」自体を含めてはいけません。試行錯誤する過程で毎回ネットから情報を取ってきてしまうと、サーバに無駄な負荷がかかるからです(時間もかかりますし)。
データさえローカルに保存してあればいくらでも試行錯誤できますから、「ネットからデータを取ってくる処理」と「取ってきたデータを加工する処理」は分ける方が望ましいでしょう。

「ネットからデータを取ってくる処理」は、数が少なければ自力で(ブラウザで当該ページを表示させて [Ctrl]+[S] を押すとかで)保存しても良いでしょうし、それ用の使い捨てプログラムを別途用意しても良いでしょう。
(※ただし、そのようなプログラムを他人のサイトに対して実行すると、凄まじく迷惑なスクレイピングプログラムになりますので、自分に100%の使用権があるサーバに対してだけ実行して下さい。共用サーバの場合は「1件のURLにアクセスするたびに、数秒間の待機時間を設ける」的な緩和措置を含める方が望ましいです。)

プログラミング言語にはここではPHPを使いましたが、もちろん(ローカルで実行できる言語なら)何でも都合の良いものを指定すれば良いです。
自身が読んで理解できない言語だと実行するのは安全とは限りませんし細かな調整が利きませんから、理解できる言語が望ましいですね。
「プログラミング言語は何もわからん……」という場合にはまあ使えませんが。^^;(なので、これは何かしらプログラミング言語が分かる人向けの話です。)

「AIにプログラムを生成してもらうのではなく、AIに直接データを整形してもらえば……?」という意見もあるかもしれませんが、作業量が多いとAIは割と手を抜くので、数百件ものデータを処理させると(本当に正確に移行したのかどうか)確認するのが面倒なので、「整形のためのプログラム」を生成するに留める方が確実だと思っています。少なくとも今のところは。^^;
AIそのものをローカルで実行できるようになれば、何もかもをAIに任せる選択も採りやすくなるかもしれませんけどもね。(いくらでも試行錯誤できる点で。)
畳む

No.5176

5174です。ご返信痛み入ります。
先の投稿があまりにも言葉足らずだったなと反省しましたので、背景情報を補足させていただきます。

・今回やりたかったこと: 既にブログとして稼働中&公開中のてがろぐに、よそのブログから過去の投稿(300件ほど)を移設する
・移設元のブログにはエクスポート機能がない

件数が多いため、当初は tegalog.xml を編集する方法を考えましたが、上記の条件から、

・既にあるファイルをさわって壊してしまう不安
・そもそも移設元ブログから加工しやすい形でデータを取ってこれないため、それなら不慣れなテキストエディタでこわごわデータを加工するより、移設元ブログの記事編集画面とてがろぐの投稿画面を横に並べて、1投稿ずつ日時・タイトル・本文をそれぞれコピペで移す方が不安もなく、恐らくスピードもはやい
・さらに、てがろぐの「投稿の一括調整」をかければ、日付順に並べ替えて再採番もできる=やりたいことはブラウザ上で全てかなう

ということで、今回は手作業で移設作業を行いました。

かなり特殊なケースかと思いますし、私自身は今回の作業は既に完了済みのため、どうしても今すぐ必要というわけではないのですが、今後また似たような作業が発生したときに(現在、あらゆるSNSやブログの投稿を、てがろぐ一箇所に集約しようと画策中のため)、もし日時ボタンが常時表示できるようになっていたら作業スピードを上げられそうだと思い、要望として書かせていただきました。

回答/返信 No.5175

マルゲリータを食べました。🍕🍕🍕

🍕Re:5174◆ご要望をありがとうございます。他ツールからたくさんの投稿をインポートする場合、データファイル(tegalog.xml)を直接編集する方法もありますが、それよりも投稿画面から1つずつ日時を指定して投稿する方が楽ですか?

No.5174

日々お世話になっております。
要望なのですが、投稿の入力欄の「日時」ボタンも、設定で「最初から展開しておく(常時表示)」ができるようになりますと非常に有難いです。
具体的な理由としましては、他ブログ等の投稿を複数手作業でインポートする際、毎回日時ボタンを展開する手間が省けるためです。

さらに可能であれば、たとえば日時が「2025/5/14 0:00:00」だった場合、自動でゼロ埋めして「2025/05/14 00:00:00」として投稿できる(エラーで弾かれない)ようになると、より助かります。

ご検討よろしくお願いいたします。

No.5173

test
折り畳みテスト
テストだよ。
だよ。
だよ。
だよ。

No.5172

Ver 4.6.1βアップデートしました。details+summary要素の折り畳み機能実装嬉しいです!従来の[H:~]記法のボタンと同じような見た目になるCSSを追加して使ってみました。開閉アニメーションのjavascriptなども試してみようと思います。ありがとうございます!

アップデート✨ No.5171

開発進捗状況報告サイトで、てがろぐ Ver 4.6.1(β版)の配布を開始しました。ご自由にダウンロードしてご活用頂けます。お試し頂ければ幸いです。主に以下の点を搭載しています。

🆕 Ver 4.6.1βの更新点(概要):
《▼新機能》
●指定範囲を(details+summary要素で)折り畳んだ状態で表示する装飾記法 [O:ラベル:~] を追加。

《▼不具合修正》
❎検索語のハイライト機能を有効にしている状況で、全文検索で使う検索語の中に「半角の英数記号1文字だけの検索語」が含まれているときに、「続きを読む」機能や「OGPカード型リンク」の表示機能が使えなくなる不具合を修正。

詳しい使い方などは、上記の開発進捗状況報告ページの記事をご覧下さい。

🍘SNSでのアナウンス:
Mastodon(Pawoo)
Bluesky
Twitter:

No.5170

details要素+summary要素で実現される「折り畳む」機能を搭載した Ver 4.6.1β(未配布)の動作テスト。
折り畳み
折り畳み表示のテスト
こんな感じで見えます。

ラベルはその都度指定します
もちろん、1投稿内にいくつでも書けます。
入れ子にもできます
ただし、details要素はspan要素等のインライン要素の内側に書くとHTMLの文法的に正しくなくなるため、そのように文字装飾を書いてしまうと直前のCSSが意図通りに適用されなくなる問題がある点に注意が必要です。

JavaScriptなしで動作する点も良いですね。装飾はCSS次第で好きなようにできます。
ここの動作試験場では、標準スキンにしか(まだ)CSSを用意していません。が、details要素+summary要素はHTMLだけで動作しますから、CSSがなくても(単に装飾がないだけで)動作はします。

No.5169

>>5168
修正ありがとうございます!お疲れ様です。
1行単位のフリースペース、私はあると助かります!

それと現在特定の自由装飾をjsでdetails+summayに変換して隠す機能の代わりに使ってるので、もし公式で実装されるとすごくすごく嬉しいです!!!

回答/返信 No.5168

そういえば最近、クロワッサンを食べていないな……。🥐🥐🥐

🥐Re:5161◆ご要望の背景説明をありがとうございます。ご要望としては記録しておきますが、「最初の画面に任意の案内文を表示する機能」と「ログインフォームの下部に任意の案内文を表示する機能」の2つが既にある状況で、さらに上にも表示できるようにする機能を用意するのは、よほど需要がない限りはToDoリストの前方には来ないと思いますので、案内文面をどうにか工夫してご対処頂くのが現実的だろうと思います。

🥐Re:5162◆英数字1文字の検索でカード型リンクが表示されなくなる問題は(こちらのローカルにある版では)修正しましたので、次のバージョンでは解決します。公開までもうしばらくお待ち下さい。◆No.5150の詳細説明もありがとうございます。もしかして、下記のような「1行単位のフリースペース」的なものが別途存在したら便利でしょうかね?
sakura:さくら
tomoyo:ともよ

……のように登録しておくと、[[FREELINE:sakura]]の記述で「さくら」が出力されるような。既存のフリースペースを名前付きに改修するのはちょっと困難なのですが、短いリンクリストの掲載にフリースペースを使われているケースがちらほらありますので、そういうのに活用できる(1行単位で完結する)自由入力欄もあると便利なのかな……とちょっと考えてはいました(まだ何も予定はしていないのですけども)。そうすると、
link1name:ほげほげ
link1url:https://www.example.com/
link2name:ひげひげ
link2url:https://www.example.org/

のように書くだけで、リンクリストとして掲載できるようにスキンを作っておくこともできるかな……とか。まあ、この方法だと総数が可変長にはなりませんけども。^^;

🥐Re:5163◆いろいろ方法を試して下さってありがとうございました。そういった試行錯誤の過程が見られたからこそ、専用機能の実装を考えられた面もありますので、とてもありがたいです。Amazonギフト券もどうもありがとうございました!(╹◡╹)ノ

🥐Re:5164◆お役に立っているようで嬉しいです~。^^

🥐Re:5165◆お役立ちサイトなので、不届きなBotによるスクレイピングも多いのではないかと想像します。もしサーバ負荷が高まっていることが522エラーの要因になっているようなら、既にお使いなら良いのですけども、高頻度アクセス制限機能(迷惑Bot対策機能)がありますので、シビアな設定でお使いになるとサーバ負荷を多少は軽減できると思います。(※Durationの値が大きい方がペナルティ時間を長くできます。私の「今日のひとこと」では、今はDuration=600LimitFreq=10を設定してあります。) 【追記】ああ、そうか。Cloudflareということは、CDNをお使いですかね? もしそうだとしたら、この機能は併用できませんね。(^_^:) CDNから配信される場合は、アクセス元のIPアドレスが常に同じになりますので、IPベースではブロックできませんから。

🥐Re:5165◆情報をどうもありがとうございます! たしかに、「全文検索時でも隠す機能を有効にする」がONのとき、半角英数字1文字だけを検索すると、続きを読む関連のJavaScriptの実行も妨げられてしまいますね。こちらのローカルにあるプログラムは修正しましたので、次のバージョンでは解消します。お知らせ下さってありがとうございました!
🥐Re:5166◆自己解決ありがとうございます。[Ctrl]+[U]等で閲覧できるソースの方をご覧頂くと分かりますが、「続きを読む」ボタンのa要素にはURLは含まれていません。通常のページ内リンクと同様に、単に <a href="#readmore" ~ > のようになっているだけです。リンクの上にマウスポインタを載せてリンク先を確認するとURLが見えますが、それはブラウザ側が自動的に補完しているだけです。ただ、てがろぐ側の設定もいろいろありますので、もしかしたらURLが出力されるような状況もあるのかもしれませんが(^_^;)。もし本当にURLが出力されているようでしたら教えて下さい。そうでないなら、原因は別のところにありそうな気がします。(とはいえ、まさしく正攻法で自己解決なさっていますから、問題ないわけですけども。)

指定範囲を隠す機能を、現状の「a要素+JavaScript」ではなく、「details+summary要素」で出力できるオプションも用意した方が良いのかな、という気もします。(details要素はspan要素の内側には書けないので、文字装飾の入れ子構造によっては文法的に正しくなくなる懸念があるので実装は見送っていたのですけども、まあ「分かっている人だけが使ってくれれば良い」と考えることもできますしね……。)

No.5167

5166です。たびたびすみません…。
5166後半の「画像拡張子で検索をした時に、続きを読むボタンを押すと画像拡大スクリプトが動作してしまう」件は、<a>タグのリンク先URLの末尾が画像の拡張子かどうかを先にjavascriptで判定してから画像拡大スクリプトを実行するようにしたら自己解決できました。お騒がせしました。
同じようなことをしたい方が他にいるかは不明ですが、一応解決方法を書いておきます。

外側スキンに書く遅延読み込みスクリプト群を下記のコードにする。
baguetteBox.jsの動作除外用クラスに「uc-nomodal」を指定しています

<script src="baguetteBox.min.js"></script>
<script type="text/javascript">
window.onload = function() {
   // 画像拡張子の正規表現
   var imageExtensions = /\.(jpg|jpeg|png|gif|webp)$/i;
   // すべての `.comment` クラスを持つ `a` タグを取得
   var links = document.querySelectorAll('.comment a');

   // リンク先URL末尾が画像拡張子になっているリンクがあるかチェック
   var hasImageLinks = false;
      links.forEach(function(link) {
         if (imageExtensions.test(link.href)) {
            hasImageLinks = true;
         } else {
            // 末尾が画像拡張子じゃなければignoreClassで指定するものと同じ除外用クラスを追加
            link.classList.add('uc-nomodal');
         }
      });

   // リンク先URL末尾が画像拡張子の場合のみbaguetteBox.jsを実行、uc-nomodalクラスは除外
   if (hasImageLinks) {
      baguetteBox.run('.comment', {
         ignoreClass: 'uc-nomodal'
      });
   }
};
</script>畳む

No.5166

いつもてがろぐに大変お世話になってます。てがろぐ本体・tegupともに最新版にアップデートしました。何でも簡単入力ボタン機能がすごく便利です!

にししさんが>>5160内の5158さんへのレスで書かれている「半角英数1文字だけで検索するとJavaScriptソースが崩れてしまう」件、「続きを読む」ボタンのソースにも同様の影響が出ているようです。設定で「全文検索時でも隠す機能を有効にする」にチェックがついていても、半角英数1文字だけで検索すると「続きを読む」装飾で隠されている部分が全て表示された状態になります。半角英数2文字や全角1文字で検索すると設定通りに隠す機能が有効になるので、半角英数1文字だけの時に起こります。


もう1つ、この検索結果で続きを読むボタンのソースが変わることに関連して要望です。

私は画像拡大スクリプトにbaguetteBox.js を使用しており、commentクラスを対象に画像拡大スクリプトを実行するようにしています。この環境だと、検索キーワードに画像の拡張子が含まれる場合に、続きを読むボタンと画像拡大表示用スクリプトが衝突してしまいます。

【再現手順】※てがろぐデフォルトスキンで再現確認済み

baguetteBox.jsの配布元 からダウンロードしたzipのdistフォルダにある、baguetteBox.min.jsとbaguetteBox.min.cssを、てがろぐと同じディレクトリにアップロード

②てがろぐデフォルトスキンをテキストエディタで開き
外側スキンの<head>内に
<link rel="stylesheet" href="baguetteBox.min.css">

外側スキンの遅延読み込みスクリプト群の
[[JS:LIGHTBOX:JQ]]
を消して
   <script src="baguetteBox.min.js"></script>
   <script type="text/javascript">
   // comment クラスの中の画像リンクだけをbaguetteBox.jsの実行対象にする
   window.addEventListener('load', function() {
      baguetteBox.run('.comment');
   });
   </script>
と書いてアップロード

③適当な画像と、続きを読むボタンを含む投稿をする(画像は「続きを読む」で隠される部分でなくてもよい)

④新着画像リストに表示されている小さい画像をクリックするか、全文検索窓から「.png」「.jpg」など、記事内に存在する画像の拡張子をドットつきで検索をする
※「png」「.pn」「.j」のように画像の拡張子として不完全な文字列ではダメ

⑤検索結果画面にある記事の「続きを読む」ボタンをクリックした瞬間にbaguetteBox.jsが作動するが、画像ファイルのリンクではないので存在しない画像を読み込もうとし続ける畳む


普通に記事を表示した時は続きを読むボタンをクリックしてもbaguetteBox.jsは作動しないのですが、画像の拡張子が含まれる検索結果画面で続きを読むボタンをクリックした時にだけこの現象が起こります。

続きを読むボタンの<a>タグのリンク先は現在のURLの末尾に「#readmore」が付与されたものになりますが、
検索結果画面だと

https://example.com/tegalog/tegalog.cgi?q=.png#readmore

となるため、続きを読むボタンのリンク先URLに含まれる拡張子部分にbaguetteBox.jsが反応してしまうようです。
一応baguetteBox.js側の機能として、ignoreClassで指定したクラスを拡大表示処理の対象から除外することはできます。

【例】
   baguetteBox.run('.comment',{
         ignoreClass:'readmorebutton'
            }
         );

ただ、このignoreClassは1つしか指定できないので、続きを読むボタン(readmorebutton)を除外指定してしまうと、別の除外したいクラスが指定できなくなってしまうのです…。AIにbaguetteBox.jsのソースを読ませてignoreClassを複数指定する方法などを質問して色々試してみたりもしたのですが、やはり1つしか指定できない仕様のようです。

ちょうどignoreClassで指定したいクラスが出来て動作確認をしていた際、新着画像をクリックして見ていた時に気付きました。続きを読むボタンの<a>タグに検索キーワードを含めないようにして頂くことはできませんでしょうか。

No.5165

>>5160
5153,5159です、お返事ありがとうございます。上書きスタイルシートの処理について解説していただき、納得できました。
スキンの作り方を変えて対応しようと思います。

あとリンク先のCloudflareの522エラーすみません…🙇
ドメインをCloudflareに移管したらこのエラーが頻発するようになってしまって調べながら設定いじっているのですが解消できず私も困ってます😅
数分置いて再アクセスすれば見れることがほとんどですがストレスですよね。
使っているCMSとの相性もあるのかと乗り換えも検討してますがなかなか時間が取れずしばらくはこのままです…😥

No.5164

アップデートお疲れ様です。
新しい機能のカード型リンク、ずっと欲しかった機能なのでとても嬉しいです。ありがとうございます🙇
ラベルを省略しても使えるのがすごくありがたいです。OGPカードボタンからURLを入力するだけで使えるので、すぐ使えてとても便利です。
いつも更新ありがとうございます。これからもお世話になります🙏

No.5163

にししさん、お久しぶりです。
以前IF文でカテゴリ別に『1ページあたりの表示投稿数』を替えられないかと質問した4671です。
先日はてがろぐのアップデートでカテゴリ別にスキン指定を実装してくださってありがとうございます。
無事に自分の作りたい仕様を作ることができました。
実装から時間が経ってしまいましたが、Amazonギフト券を贈りました。
ほんの少しですが使ってください。
これからもご活躍応援しています。#感謝

No.5162

5160
たしかに、自作スキンのCSSとかを確認している最中だったので適当な半角の英語1文字で検索してました……。ここでは「てがろぐ」で検索していたからなんともなかったんですね。スッキリしました!ありがとうございます。

あと5150の件ですが(書いたのは自分です)、フリースペース内には簡単な自己紹介?やお知らせ、細々とした部分(自分が書いてる内容をちょくちょく文言を変えたくなる気質?のため、ウェブ上からすぐ編集できるのが便利でいろいろ使ってるのです……)、ほかのてがろぐと共通して使うhtmlにそれぞれのディレクトリ名(tegalogとかmemoとか)をいれるために使ってます。[[FREESPACE:0]].cssみたいな感じで……。(前はヘッダ用フリースペースなどを使っていたのですが、ログイン画面かどこかでここの文言が出るのが気になってしまいすべてをフリースペースに書いています)
だいたい5個前後くらいですが、skin-coverに書くときに上から順にFREESPACE0→1みたいな感じで順番にしたい、しかしそうするとよく編集しがちな部分が(てがろぐから編集するほうの)フリースペースの下の方になってしまい編集がしづらい……ため、できたら好きな文字列にできたらなと思いました;わかりにくい文章ですいません……。

かなり個人的なわがまま要望になってしまうのでもし可能であれば、で構いません!

No.5161

5156です。
にししさん返信ありがとうございます!

とても個人的な感覚なので、気になるのは自分だけかもしれないのですが、下だと一瞬「フォームはあるけどパスワードがないな、もしかしてあらかじめ知ってる人しか入れないのかな?」と、気早な方は去っていってしまうような気がしてまして…😅

かなり細かいことだと自分でも思うので申し訳ないですし、他の方のもっと重要な要望を優先して頂いて構いません。

回答/返信 No.5160

最近、たこ焼きを食べていないな……。takoyaki

🧀Re:5153,5159◆自己解決ありがとうございます。なるほど、確かに上書きCSSを強制出力する場合は、</head>タグの存在が「INCLUDE記法で読み込まれる側」にあると挿入できませんね。これは、上書きCSSの挿入処理が以下のような順序になっているためです。
  1. まず、表示に使うスキンファイルを読み込む。もし上書きCSSを</head>直前に強制出力する設定(状況)の場合は、この時点で</head>を見つけて追記する。
  2. スキン内にINCLUDE記法があれば、その合成処理をする。
  3. 上書きCSSを[[FREE:EXTRACSS]]の位置に出力する設定(状況)の場合は、それを見つけて置き換える。
なので、INCLUDE記法で読み込まれる側のファイルに</head>がある場合は、①の時点では(まだ合成前なので)発見できないため、上書きCSSの挿入処理が実行されないわけですね。^^;
たとえhead要素部分をINCLUDE記法で合成していても、上書きCSSを[[FREE:EXTRACSS]]の位置に出力する設定にしている場合には問題なく出力されると思います。(そのスキンに[[FREE:EXTRACSS]]を書いていれば、の話ですが。)

なぜ上記のように処理を①・③のように2分割しているのかは思い出せないのですが(^_^;)、あえて処理を1箇所で済ませずに2箇所に分割しているということは、何かそうしないとマズい理由があったんだろうと思いますので、今のところは「仕様」ということでご解釈下さい。
フリースペースの設定で「▼上書きスタイルシートを出力する対象」項目の設定値を『外側スキンに [[FREE:EXTRACSS]] の記述がある箇所にのみ出力する』にすれば、どのように合成していても強制出力できると思います。(事前に[[FREE:EXTRACSS]]を書いておく必要がありますが。)

あと、ご提示頂いたサンプルですが、アクセスしたタイミングが悪かったのか、Cloudflareの522エラー(Connection Timed Out)で閲覧できませんでした。^^; 参考までにキャプチャを置いておきます。
20250504203932-nishishi.png

🧀Re:5154,5156◆No.5155さんがご提示下さったヘルプドキュメントにあるこの設定箇所が今のところの正攻法ですね。ログインフォームの上ではなく下に出ますが。下だとそんなに問題あります?
🧀Re:5155◆サポートありがとうございます!(╹◡╹)ノ

🧀Re:5157◆てがろぐの表示は、お使いのスキンによって如何様にも変化させられますので、表示上の問題がある場合は、少なくとも「どのスキンを使っているのか」の情報が必要です。もしスキンをカスタマイズして使っている場合は、実際のページのURLを教えて頂く必要があります。(実際に見てみなければ、何が問題なのかが分かりませんし、その対処法も探りようがないからです。)

🧀Re:5158◆ご報告と、分かりやすいスクリーンショットをありがとうございます。カード型リンクを構築するためのJavaScriptソースも全文検索対象になってしまっているために、「s」とか「i」みたいな半角の英数記号1文字を検索すると、(検索語を強調するためのタグが挿入されることで)JavaScriptソースが崩れてしまうためにカード型リンクの処理が失敗しますね。そこまでは考慮していませんでした。^^; 検索語が全角文字なら(または半角文字でも数文字以上ならばあまり)問題ないだろうとは思いますが。ちょっと対処を何か考えます(※現行バージョンでは対処方法はありません)。まさかそんな問題があったとは。^^; ご報告をありがとうございました!

No.5159

>>5153 です。
原因がわかりましたのでご報告です。
本番適用しているスキンのみ<head>~</head>部分を別ファイルにして[[INCLUDE:ファイル名]] で合成していたことが原因でした。
別ファイルにしていた内容をskin-cover.htmlにべた書きすると該当スキンでも上書きスタイルシートが出力されていることが確認できました。
私自身がスキンを変わった作り方をしていたのが原因だったのにそれに気づかないままこちらで質問してしまいすみません。
解決できましたのでご報告しておきます。

No.5158

ブログカードに検索ワードが含まれている(?)とカードが読み込まれないんですがなぜでしょうか……(ここで試してみたら普通に表示されるのですが)
自分の環境だとてがろぐデフォルトスキンのみで自作のJSやCSSなしの状態でも、検索にブログカードが引っかかると内容が読み込まれない(Loading...で止まる)
Uncaught SyntaxError: missing ) after formal parametersというコンソールエラー?が出ている
なにかしらのjsが干渉している???のかなと思うんですがわからなくて……

[画像UPエラー:容量制限を超過]
screenshot1746348222.jpg

No.5157

てがろぐ、とても便利で利用させていただいています。
色々検索したり試してみましたがよくわからないのでこちらで質問失礼します。
iPhoneから見た時、投稿記事本文の文字が右に寄ってしまいます。
PC、タブレットで見る分には気になりませんがiPhoneのみです。
スクロールバーに文字が被り読みにくい為真ん中、もしくは左に寄せたいです。
どこかを書き換えればいいのだろう…というのはわかるんですが、ご助言いただけると幸いです。

No.5156

5155さん、ありがとうございます!
ただ、かなり細かいことで申し訳ないのですが、個人的には出来ればログインフォームの上に表示させたかったため、要望を出させて頂きました。申し訳ありません。

No.5155

>>5154
https://www.nishishi.com/cgi/tegalog/usage/#howtouse-p...
によると[設定]→[システム設定]→【管理画面内の表示】→『ログインフォームの下部に表示されるメッセージ』欄に入力するとログインフォームの下に任意の文章を表示することができます。ただし
  • HTMLは使えない(<p>~~</p>のようにそのまま出力される)
  • ログイン限定モードを解除しても入力した任意の文章は表示され続ける

仕様になっているようです

No.5154

要望です。
てがろぐをログイン限定モードで使用中のとき、ユーザー名・パスワード入力欄の上に表示される文章を、設定から好きな文章に変えられるようにして欲しいです(出来ればHTML使用可能だと有難いです)。
一つ前のページではなく、こちらにユーザー名とパスワード(のヒント)を表示させたいためです。
ご検討頂けますと幸いです。

No.5153

こんにちは、お世話になっております。
日々便利に進化していくてがろぐ、重宝しています🙏

上書きスタイルシート機能の質問です、
「すべてのスキンに対して強制出力する」設定にしていても「本番適用(簡易)」のスキンのみスタイルシートの強制出力がされないのは仕様でしょうか?スキンパラメータを付けた場合は出力がされています。

やりたいこととしては
てがろぐVer4.6.0カード型リンクを簡単導入する方法
なのですが
この方法で導入していろいろなリンクを書いてみたてがろぐの記事(簡易本番適用スキン)
https://10prs.com/tegalog-cms/?postid=290
上記記事に別スキンパラメータを付加したもの
https://10prs.com/tegalog-cms/?skin=skin-_Xmodoki2&pos...
のようになっていて、ソースを見ても本番適用スキンに上書きCSSが挿入されていないことがわかります。
出来れば本番適用(簡易)スキンにも上書きスタイルシートを強制出力できるようにしてほしいです。
もし何かこちらの設定等で修正できる手段があれば教えてください。

回答/返信 No.5152

照り焼きピザを食べました。🍕🍕🍕

🍕Re:5150◆ご要望をありがとうございます~。参考までにお尋ねしたいのですが、フリースペースはどれくらいの個数を、だいたい何に使っているのですか?
🍕Re:5151◆特に事前設定は要らないのですが、どんな画面が見えているのかキャプチャして貼り付けて頂けるとありがたいです。

No.5151

いつもお世話になっています!
てがろぐver4.6.0にバージョンアップしたのですが、私の環境では
カテゴリ情報の登録/変更画面で、「オプション設定を表示する」ボタンがどこにも見当たりません。
このボタンを表示するためにどこかで設定する必要があるのかと思い、色々と見て回ったのですがわかりませんでした。
申し訳ないのですが、どのようにしたら良いのか教えていただけると助かります。

No.5150

てがろぐを開発してくださりありがとうございます。
要望です。フリースペースを多用しているのですが、できれば[[FREESPACE:0]]の0の部分を自分の好きな(わかりやすい)文字列にしたいです。
たとえばてがろぐ側のフリースペースに[[FREESPACE:head:~~~内容~~~~]]と書いてskin-cover側に[[FREESPACE:head]]と書いたらそれがそのまま挿入される感じで……
o同じような要望がすでにあり、難しいという結論が出ていたらすいません。

回答/返信 No.5149

アイスは買っていないんですが、バナナとヨーグルトは買いました。🍌🍌🍌

🍌Re:5147◆ご活用ありがとうございます!
🍌Re:5148◆私も今アクセスできました。どうやら短時間だけの問題だったようです。^^; たぶん。

No.5148

https://todays.nishishi.com/?postid=14368
おやあ? サブサイトの www.nishishi.org に繋がらない。

→自分のスマホでは見れますね。


IMG_8889.png

No.5147

アップデートお疲れ様です。いつも便利に利用させてもらってます!

(Loading...)...
新機能のテスト投稿をさせていただきますわ

アップデート✨ No.5146

てがろぐ Ver 4.6.0 を公開しました! #Update
何でも簡単入力ボタン、鍵入力窓の自由配置、未使用画像を探す機能や、画像フラグ一括変更、最新投稿日時の出力記法、汎用装飾ボタン9種などの追加が主な更新点です。その他、細々した仕様改善や機能追加、不具合修正を含んでいます。
https://www.nishishi.com/cgi/tegalog/

バージョンアップには2通りの方法があります。
  • 1クリックでバージョンアップできる専用PHP「TegUp」のご使用をお勧め致します。※TegUpは Ver 2.1.0を公開しています。TegUp Ver.1ではTegUpそのもののバージョンアップはできないので、先に手動でTegUpをバージョンアップすることをお勧め致します。※TegUp Ver.1のまま使っても、てがろぐ本体だけのバージョンアップは正常に可能です。しかし、TegUp自身のバージョンアップができないので、そのままでは「TegUp側の機能を必要とするてがろぐ側の機能」が使えないままになります。具体的には、リンク先のOGP情報を読み込んでカード型リンクを表示する機能が使えないままになります。その機能を使わない場合は、必ずしもTegUpをバージョンアップする必要はありませんが、今後の機能拡張(の可能性)を考えれば、今回にTegUpもバージョンアップしておくことをお勧め致します。TegUpをVer.2にすれば、それ以後は(てがろぐ本体と一緒に)TegUp自身もバージョンアップできるようになりますから、手動での上書き作業は要らなくなります。畳む
  • もしくは、最新版のZIPの中から tegalog.cgifumycts.pltegup.php の3ファイルだけを抜き出して上書きアップロードして下さい。
データファイルや設定ファイルは、すべてそのまま引き継げます。(Ver.3以下も含む、過去のどのバージョンからでも可)

🆕 Ver 4.6.0の更新点(概要):
《▼大きな機能追加》
リンク先ページのOGP情報を読んでリンクをカード型で表示する機能
カスタム絵文字を管理画面上から追加・削除できる機能
カテゴリごとに「1ページあたりの表示件数」を別設定できる機能
カテゴリごとに「表示に使うスキン」を別指定できる機能
カテゴリごとに「先頭に固定する投稿」を別指定できる機能

《▼その他の機能追加》
ユーザ一覧を出力できる記法 [[USERLIST]] と [[USERLIST:識別子]] を追加。
現在ログインしているユーザの情報を取得できる簡易API機能

《▼細かな機能追加》
●あるカスタム絵文字が使われている投稿を探せる機能
●スキン側からログイン状態を把握するための記法を5種類追加
●カード型リンクを挿入できるようにする「OGPカード」ボタンの表示機能を追加

《▼仕様改善》
カテゴリ管理画面の一覧表が崩れないよう、概要文のプレビュー文字数を少なめに固定。
カテゴリ登録データの保存形式を(拡張性の高いものに)改善
カテゴリ生データ編集機能を新データ仕様に更新
投稿削除ボタンやカテゴリ削除枠の配色を(目立ちすぎる赤色から)灰色に変更。
投稿本文を出力する際に、表示上の改行位置でHTMLソースでも改行するよう仕様改善。

《▼スキン更新》
すべてのスキンを「リンク先ページのOGP情報を読んでリンクをカード型で表示するためのCSSを追加したバージョン」に更新。

《▼不具合修正》
❎サーバのエラーログに「Use of uninitialized value $3 in concatenation (.) or string at tegalog.cgi」というアラートが記録されるケースがあった点を解消。

更新点について詳しい解説は、リリースノート(No.46)をご参照下さい。

アナウンス:
✔Twitter:
Bluesky
Pawoo(Mastodon)

回答/返信 No.5145

アイスを買おうかな、とうしようかな……と迷ったものの、まだ冷凍庫に多少の備蓄があるので今日は買いませんでした。🍨🍨🍨

🍨Re:5137◆フォーム部分のHTMLも含めて全体的なソースを教えて頂ければもうちょっと具体的にご案内できる可能性もありますが、現時点でもIF文で実現はできているのなら、汎用いいねボタンツールのリリースをお待ち頂くのも良いと思います。まだ何も作り始めていない段階ですが(^_^;)、作る計画ではいますので。^^;
🍨Re:5138◆昔は様々なWebサイトに掲示板がたくさんありましたよね。^^;
🍨Re:5139◆おそらく、何らかの要因でライセンスコードの登録機能部分に余計な文字列が入ったのでしょうね。Ver 4.6.0では解消するように改善してみましたのでお試し下さい。(おそらくバージョンアップするだけで解消すると思いますが、もしかしたら設定の保存操作(設定は何も変更しなくて良いです)が必要かもしれません。)
🍨Re:5140◆ご要望をありがとうございます! 参考にさせて頂きます!
🍨Re:5141◆ディスプレイは少なくとも2台あると便利ですよ! そもそもデスクトップは広ければ広いほど良いです。(笑) 単純に広いディスプレイよりも、ディスプレイが物理的に複数あると、ウインドウを最大化したときにディスプレイ単位で最大化できる点も便利です。ゲーミングPCなら5インチベイがたぶん複数あるでしょうからBlu-rayドライブを内蔵させることもできると思いますが、まあ最近は光メディアの使用頻度も高くないでしょうから、USB接続で外付けの小型Blu-rayドライブの方が便利かもしれませんね。どちらにしても数千円で買えるでしょうし。なお、再生ソフトが付属しているかどうかを確認して買う方が良いと思います。
🍨Re:5142◆その不具合は >>5124,5125 の問題だと思います。リンクラベルを省略せずに書くと問題は発生しないのですが、どちらにしても Ver 4.6.0 で解消しましたのでバージョンアップしてみて下さい~。

No.5144

テスト投稿です

No.5143

カードリンク機能を活用させていただいております!(Ver 4.5.7.) #感謝
不具合 #報告 ?なのですが、カードを小サイズ設定にしていてもリンク先によっては大カードになってしまいます。
自分で確認したのはライブドアニュース、同人印刷会社おたクラブなどです。

No.5142

10年ぶりにPCを新調したんだが、もうほんとうに普通のデスクトップと言うのがなかなか売ってなくて、組み立ててくれるお店もほぼ絶滅。と言うわけで素直にスペックだけに注視した結果ゲーミングPCとやらを買うのが手っ取り早いと言うことになった。
それは別にいいんだが、色々すでにアップグレードされてて(もちろんそのせいで高い)、モニタが普通のケーブルでは繋げられないとかなんちゃら言うケーブルを買って来いとか、実はモニタが5台くらいまで繋げられますとか、オーバースペック過ぎてちょっと申し訳なくなった件。
モニタを5台とか誰がそんな繋ぐんだよって思ったけど、3台くらいまでなら意外と繋げてる人は多いらしいと知った件について。
DVDプレイヤーはついてないのでそのうち必要なら外付けのプレイヤーを買うつもり。
むやみにぎらぎらなのとパワーが段違いなので、ちょっと電気代が怖いです。でもさすが色々処理は速い。10年くらいよろしく。

質問/要望 No.5140

お世話になっております。
カードリンク機能は欲しい機能だったので使わせてもらっています。
実装ありがとうございます。

#要望 です。
記事ページへのURLを?postname=cautionと言う感じで自分で好きな単語を設定できる機能が欲しいです(postnameの部分は適当なのでなんでもいいですが)
短文呟きを連投する場合は現在のpostidでも気にならないのですが、時々注意書きやちょっとした長文なんかを書いてリンクを貼ったりSNSで共有したりするので、そういうときにURLにわかりやすいワードを設定できればとても助かります。
記事管理画面にpostname(仮)も表示してもらえると記事を探しやすくなっていいなと思います(欲を言えばpostnameを付けた記事だけの絞り込みなんかもあれば嬉しいです)
もし可能でしたら、よろしくお願いいたします。

No.5139

てがろぐを複数使っているのですが、ひとつだけ管理画面にこのような表記があるのがずっと気になってるのですがなぜでしょう……?
特に困ってはいないのですが、なんでだろうと気になりまして。ちなみにライセンスは持ってないです……。
こちらがなにかいじった影響だったらすいません。
4.5.7.png
追記:この項目があるだけで実際に管理画面とかで著作権部分は非表示にはなってないです。

No.5138

大学生の時に、このような掲示板を作って、ゼミの先輩や後輩、先生も巻き込んで討論したり、ともだちとつぶやきあったりしていたのが懐かしいです。

回答/返信 No.5137

にししさん、ありがとうございます。
不勉強なもので、恥ずかしながらご提案いただいたJavaScriptを利用する方法がまったく理解できず、申しわけありません😥🙇‍♀️
カテゴリIDを使うか、今のままIF文を使うかして、対応しようと思います。

汎用いいねボタンツールにメッセージ送信機能がついて公開される日を、楽しみに待っていますね!
お忙しい中、本当にありがとうございました。

つぼはちつぼはち No.5136

テスト

テストテスト No.5135

投稿機能のみユーザーの使用感をテストさせてもらいました。
おもしろいです。

No.5134

とりあえず、作ろうと計画している汎用いいねボタンツールには、メッセージ送信機能もあると良さそうだな、とは思いました。参考情報をありがとうございます。^^

回答/返信 No.5133

🍔Re:5132◆一番簡単なのは、[[CATEGORYIDS]] でカテゴリIDを使うことでしょうね。これなら完全なプレーンテキストですから。ただし、カテゴリ名ではなくカテゴリIDが入りますけども。しかし、感想の対象を特定する用途にはなるでしょう。

カテゴリ名が欲しい場合は、HTMLを含む内容を一旦JavaScriptで受け取って、HTMLタグだけを除外して使えば良いのではないかと思います。例えば、
<script>
let htmlstr = '[[CATEGORYLINKS:T]]';
let plainText = htmlstr.replace(/<[^>]*>/g, "");
</script>

……とすれば、変数plainTextにカテゴリ名がプレーンテキストで入ります。
後は、この変数の中身を指定の要素に送るなり、フォーム自体をJavaScriptで生成するなりすれば良さそうに思います。(たぶん後者の方が簡単でしょう。同一ページ内に複数のフォームが現れる可能性があるのなら特に。)
この方法なら、カテゴリ名の間に挿入されるカンマ記号を取り除いたり他の文字に変換したりもできますから、より望みの文字列に加工できるでしょう。

なお、[[INFO:NOWCAT:NAME]] は外側スキン用の記法なので、これを使いたい場合は、一旦外側スキン側でJavaScriptを使ってプレーンテキストにした上で、その変数を内側スキンで使う……というような感じにする必要がありますから、内側スキンで[[CATEGORYLINKS:T]] を使う方が良いと思います。JavaScriptを使えば、親カテゴリ名を取り除く加工もできますから、お好きなように加工なされば良いと思います。

回答/返信 No.5132

にししさん、お返事ありがとうございます。
にししさんが整理してくださった三点ですが、概ね合っています。

現状、IF文では
<input type="hidden" name="entry.固有番号" value="作品名">
のタグをカテゴリごとに作っているのですが、それでは何話目に対する感想なのかが分からないのです。
また、作品数が多いので、HTMLに書き込むIF文も増えてあまり見栄えがよろしくありません。

そのため、value=""部分に作品名(カテゴリ名)と第何話([[COMMENT:TITLE]])なのか、自動で挿入されるとありがたいと思った次第です。

今日もいろいろと試していたのですが、昨日の書き込みに誤りがあったことに気づきました。
[[INFO:NOWCAT:NAME]]ではなく、[[CATEGORYNAMES]] でした。失礼いたしました。

skin-onelog.htmlにフォームタグを置いているのですが、value=""部分に[[CATEGORYNAMES]][[COMMENT:TITLE]]と入力すると、class名が付与されるため添付した画像のようになってしまいます。しかも、カテゴリ名は親と子(モザイク部分)が併記されています。
この状態でも送信はできるものの、届いたメールのタイトルは「<span class=」となっています。
これは、skin-cover.htmlにフォームタグを置いて、value=""部分に[[INFO:NOWCAT:NAME]]を入力した場合も、同様です。ただし、[[COMMENT:TITLE]]は無効になっているものの、カテゴリ名の表示(モザイク部分)は希望のものです。

以上のことから、[[INFO:NOWCAT:NAME]]で取れるカテゴリ名と、[[COMMENT:TITLE]]で取れる情報が、プレーンテキストの形で出力された上で併用できれば、望む形になるのではないかと思います。

とはいえ、IF文で「value="作品名[[COMMENT:TITLE]]"」にしておけば、望む情報は送られてくるので、単純にHTMLの見栄えを良くしたいというわがままです。
もし、IF文を使わずに済む方法や工夫があれば、教えていただけると幸いです。

2.png 20250425141045-admin.png

回答/返信 No.5131

🍔Re:5130◆お書き頂いた内容から、だいたい以下のような感じかな、と思ったのですが、
  • カテゴリ名が作品名。
  • 投稿内容の1行目には「第〇話 副題」が書かれているだけ(なので [COMMENT:TITLE] を使っても意味がない)
  • Googleフォーム用の何らかのHTMLに、作品名だけを入れたい。
……とすると、親カテゴリと子カテゴリの関係は何でしょうか?

カテゴリ限定表示を使っているとのことですが、それは「ある親カテゴリとある子カテゴリを両方同時に表示する」というような仕組みで実現しているのですか? それとも別の方法ですか? その辺をもう少し具体的に教えて下さい。

デフォルト設定のままだと、カテゴリ限定表示時には『カテゴリ「雑記」に属する投稿[12件]』のような感じでSITUATIONに出てきますから、おそらく何らかのカスタマイズをなさっているのだと思います。
その辺をどうなさっているのかも教えて頂ければ、何らかの回答ができるかもしれません。

要するに、「どこの情報が取れれば『お望みの過不足ない作品名』になるのか?」が分からないので、そこを教えて下さい、ということです。

No.5130

にししさん、こんばんは。痒い所に手が届く「てがろぐ」には、大変助けられています。
今回はスキン編集に用いるキーワードについて相談させてください。

カテゴリ限定表示を使って小説を公開しているのですが、一話ごとにGoogleフォームを利用して感想を送ってもらえるようにしています。
以前はIF文でvalue=""の部分に作品名(カテゴリ名)を入力して利用していたのですが、[[COMMENT:TITLE]]を入力すればIF文を使う必要がないことに気づきました。

しかし、[[COMMENT:TITLE]]の部分は「第〇話」や、副題を入れているので、肝心の作品名をvalue=""に含めることができません。
[[COMMENT:TITLE]]に作品名も入れてしまえば簡単なのですが、サイトのデザイン上、できれば入れたくありません。

そこで、[[INFO:NOWCAT:NAME]]も併用してみたのですが、class名が加えられてしまい、フォームとして機能しません。
[[COMMENT:TITLE]]のように、プレーンテキストで出力させることはできないでしょうか。
また、その場合、子カテゴリー名のみで出力できると、助かります。

長編小説
 作品1
 作品2
短編小説
 作品3
 作品4

のようにカテゴリ分けをしているので、単純にカテゴリ名だと「長編小説 作品1 第〇話」となってしまうのです。
どなたか、お知恵を貸していただけないでしょうか。

アップデート✨ No.5129

てがろぐ本体を1クリックでバージョンアップできるPHPスクリプト「TegUp」の Ver 2.1.0 を公開しました。
https://www.nishishi.com/cgi/tegalog/tegup/
  • てがろぐと同時にTegUp自身のバージョンアップもできるようになりました(Ver.1だとTegUp自身の更新はできません)。
  • 設定は独立ファイルに保存するように改善しました。
※てがろぐβ版同梱のTegUp Ver 2.0.x を既に設置している方々には特に新しくありませんので、あえて更新して頂く必要性はありません。

ただ、OGP情報の取得先WebページのHTMLソースに望ましくない文字列が含まれている場合でも何らかの情報を取得できるよう改善しました。
カード型リンクで、「エラーは出ないのに情報が表示されない」というケースがもしあった場合は、キャッシュファイル(ogp-cache.ini)を削除した上で、この Ver 2.1.0 に更新すると、解決するかもしれません。

■フリースペース:

ここは、CGIの設定画面から自由に文章を入力して掲載できるスペースです。スキンを編集しなくてもCGI上から手軽に内容を変更できます(HTML使用可)。
動作サンプルです。◆他のスキン:標準スキン, 昔のツイッターっぽいスキン(ピンク版), 付箋型スキン, シンプル日記スキン, ジャーナル(日誌)スキン, ブログタイプスキン, チャットタイプスキン, 黒板スキンてがろぐCGIの配布ページに戻る

編集

■ハッシュタグ:

■日付一覧:

■日付検索:

■カレンダー:

2025年6月
1234567
891011121314
15161718192021
22232425262728
2930

■カテゴリ:

■最近の投稿:

■新着画像リスト:

Perlのバージョンを上げる設定(さくらインターネット)

全317個 (総容量 36.08MB)

■詳細全文検索:

  • 投稿者名:
  • 投稿年月:
  • #タグ:
  • カテゴリ:
  • 出力順序: