ユーザ用ツール

サイト用ツール


jarltokyo

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
jarltokyo [2026/04/24 23:12] Tokyo Adminjarltokyo [2026/06/26 13:15] (現在) Tokyo Admin
行 1: 行 1:
-{{keywords>JARL東京都支部,JARL Tokyo,JARL支部}}+~~NOCACHE~~ 
 +{{keywords>JARL東京都支部,JARL Tokyo,JARL支部,JARL東京支部}}
  
-日本アマチュア無線連盟 JARL 東京都支部のサイトです。\\+ 
 +日本アマチュア無線連盟 JARL東京都支部のサイトです。\\
 ブックマーク・お気に入りは「 JARLTokyo.com 」でお願いします。\\ ブックマーク・お気に入りは「 JARLTokyo.com 」でお願いします。\\
 最新情報・お知らせは以下よりご覧ください。 最新情報・お知らせは以下よりご覧ください。
  
-{{blog>blog?0&firstseconly&noeditbtn}}+ 
 + 
 +====== 最新情報・お知らせ ====== 
 + 
 + 
 +----
  
 <php> <php>
行 19: 行 26:
     $basename = basename($file, '.txt');     $basename = basename($file, '.txt');
  
-    // YYYYMMDD_slug の記事だけ対象+    // 対象は YYYYMMDD_slug.txt の記事のみ
     if (!preg_match('/^(\d{4})(\d{2})(\d{2})_(.+)$/', $basename, $m)) {     if (!preg_match('/^(\d{4})(\d{2})(\d{2})_(.+)$/', $basename, $m)) {
         continue;         continue;
行 33: 行 40:
     }     }
  
-    // タイトル取得+    // 最初の H1 見出しをタイトルとして取得
     $title = $basename;     $title = $basename;
     if (preg_match('/^======\s*(.+?)\s*======\s*$/m', $content, $tm)) {     if (preg_match('/^======\s*(.+?)\s*======\s*$/m', $content, $tm)) {
行 39: 行 46:
     }     }
  
-    // 本文からメタ・タイトル・掲載日・見出し等ざっくり除去+    // 本文抜粋用に不要な記法を除去
     $body = $content;     $body = $content;
 +
 +    // META
     $body = preg_replace('/~~META:.*?~~/s', '', $body);     $body = preg_replace('/~~META:.*?~~/s', '', $body);
 +
 +    // 最初のH1タイトル
     $body = preg_replace('/^======.*?======\s*$/m', '', $body);     $body = preg_replace('/^======.*?======\s*$/m', '', $body);
 +
 +    // 既に入っている場合の掲載日行
     $body = preg_replace('/^\/\/掲載:.*?\/\/\s*$/m', '', $body);     $body = preg_replace('/^\/\/掲載:.*?\/\/\s*$/m', '', $body);
 +
 +    // その他見出し
     $body = preg_replace('/^={2,6}.*?={2,6}\s*$/m', '', $body);     $body = preg_replace('/^={2,6}.*?={2,6}\s*$/m', '', $body);
 +
 +    // WRAPブロックは中身ごと削除
     $body = preg_replace('/<WRAP.*?>.*?<\/WRAP>/s', '', $body);     $body = preg_replace('/<WRAP.*?>.*?<\/WRAP>/s', '', $body);
 +
 +    // 画像・メディア
     $body = preg_replace('/\{\{.*?\}\}/s', '', $body);     $body = preg_replace('/\{\{.*?\}\}/s', '', $body);
 +
 +    // DokuWikiリンク [[url|label]] / [[page]]
     $body = preg_replace('/\[\[(?:[^|\]]+\|)?([^\]]+)\]\]/', '$1', $body);     $body = preg_replace('/\[\[(?:[^|\]]+\|)?([^\]]+)\]\]/', '$1', $body);
-    $body = preg_replace('/\^.*$/m', '', $body); + 
-    $body = preg_replace('/\|.*$/m', '', $body);+    // 表 
 +    $body = preg_replace('/^\^.*$/m', '', $body); 
 +    $body = preg_replace('/^\|.*$/m', '', $body); 
 + 
 +    // 水平線 
 +    $body = preg_replace('/^-{4,}\s*$/m', '', $body); 
     $body = trim($body);     $body = trim($body);
  
-    // 空行で分け、先頭2段落程度を抜き出す+    // 空行区切りで先頭2段落を抜
     $paragraphs = preg_split('/\n\s*\n/', $body);     $paragraphs = preg_split('/\n\s*\n/', $body);
     $excerptParts = [];     $excerptParts = [];
行 75: 行 102:
     $items[] = [     $items[] = [
         'datekey' => $year . $month . $day,         'datekey' => $year . $month . $day,
-        'year' => $year, +        'year'    => $year, 
-        'month' => $month, +        'month'   => $month, 
-        'day' => $day, +        'day'     => $day, 
-        'id' => $basename, +        'id'      => $basename, 
-        'title' => $title,+        'title'   => $title,
         'excerpt' => $excerpt,         'excerpt' => $excerpt,
     ];     ];
 } }
  
-// 新しい順+// ファイル名の日付で新しい順
 usort($items, function ($a, $b) { usort($items, function ($a, $b) {
     return strcmp($b['datekey'], $a['datekey']);     return strcmp($b['datekey'], $a['datekey']);
行 97: 行 124:
  
     echo '<article class="jarltokyo-blog-item">';     echo '<article class="jarltokyo-blog-item">';
-    echo '<h2><a href="' . htmlspecialchars($url, ENT_QUOTES, 'UTF-8') . '">'; 
-    echo htmlspecialchars($item['title'], ENT_QUOTES, 'UTF-8'); 
-    echo '</a></h2>'; 
  
-    echo '<p><em>掲載:' . htmlspecialchars($dateLabel, ENT_QUOTES, 'UTF-8') . '</em></p>';+    echo '<div class="jarltokyo-blog-date">'; 
 +    echo htmlspecialchars($dateLabel, ENT_QUOTES, 'UTF-8'); 
 +    echo '</div>'; 
 + 
 +    echo '<h2 class="jarltokyo-blog-title">'; 
 +    echo '<a href="' . htmlspecialchars($url, ENT_QUOTES, 'UTF-8') . '">'; 
 +    echo htmlspecialchars($item['title'], ENT_QUOTES, 'UTF-8'); 
 +    echo '</a>'; 
 +    echo '</h2>';
  
     if ($item['excerpt'] !== '') {     if ($item['excerpt'] !== '') {
行 122: 行 154:
 } }
 </php> </php>
 +
 +
 +
 +
 +----
 +
 +[[newblog|新しい記事の投稿]]
 +
jarltokyo.1777039948.txt.gz · 最終更新: by Tokyo Admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki