jarltokyo
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| jarltokyo [2026/04/24 16:55] – Tokyo Admin | jarltokyo [2026/06/26 13:15] (現在) – Tokyo Admin | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | 日本アマチュア無線連盟 JARL 東京都支部( jarltokyo.com )です。\\ | + | ~~NOCACHE~~ |
| + | {{keywords> | ||
| + | |||
| + | |||
| + | 日本アマチュア無線連盟 JARL東京都支部のサイトです。\\ | ||
| + | ブックマーク・お気に入りは「 JARLTokyo.com 」でお願いします。\\ | ||
| 最新情報・お知らせは以下よりご覧ください。 | 最新情報・お知らせは以下よりご覧ください。 | ||
| - | {{blog>blog?5&firstseconly&noeditbtn}} | + | |
| + | |||
| + | ====== 最新情報・お知らせ ====== | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | < | ||
| + | date_default_timezone_set(' | ||
| + | |||
| + | $baseDir = '/ | ||
| + | $blogDir = $baseDir . '/ | ||
| + | $limit = 10; | ||
| + | |||
| + | $items = []; | ||
| + | |||
| + | foreach (glob($blogDir . '/ | ||
| + | $basename = basename($file, | ||
| + | |||
| + | // 対象は YYYYMMDD_slug.txt の記事のみ | ||
| + | if (!preg_match('/ | ||
| + | continue; | ||
| + | } | ||
| + | |||
| + | $year = $m[1]; | ||
| + | $month = $m[2]; | ||
| + | $day = $m[3]; | ||
| + | |||
| + | $content = file_get_contents($file); | ||
| + | if ($content === false) { | ||
| + | continue; | ||
| + | } | ||
| + | |||
| + | // 最初の H1 見出しをタイトルとして取得 | ||
| + | $title = $basename; | ||
| + | if (preg_match('/ | ||
| + | $title = trim($tm[1]); | ||
| + | } | ||
| + | |||
| + | // 本文抜粋用に不要な記法を除去 | ||
| + | $body = $content; | ||
| + | |||
| + | // META | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // 最初のH1タイトル | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // 既に入っている場合の掲載日行 | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // その他見出し | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // WRAPブロックは中身ごと削除 | ||
| + | $body = preg_replace('/< | ||
| + | |||
| + | // 画像・メディア | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // DokuWikiリンク [[url|label]] / [[page]] | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // 表 | ||
| + | $body = preg_replace('/ | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | // 水平線 | ||
| + | $body = preg_replace('/ | ||
| + | |||
| + | $body = trim($body); | ||
| + | |||
| + | // 空行区切りで先頭2段落を抜粋 | ||
| + | $paragraphs = preg_split('/ | ||
| + | $excerptParts = []; | ||
| + | |||
| + | foreach ($paragraphs as $p) { | ||
| + | $p = trim(preg_replace('/ | ||
| + | if ($p !== '' | ||
| + | $excerptParts[] = $p; | ||
| + | } | ||
| + | if (count($excerptParts) >= 2) { | ||
| + | break; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | $excerpt = implode(" | ||
| + | |||
| + | // 長すぎる場合は短縮 | ||
| + | if (function_exists(' | ||
| + | $excerpt = mb_substr($excerpt, | ||
| + | | ||
| + | |||
| + | $items[] = [ | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ]; | ||
| + | } | ||
| + | |||
| + | // ファイル名の日付で新しい順 | ||
| + | usort($items, | ||
| + | return strcmp($b[' | ||
| + | }); | ||
| + | |||
| + | // 最新10件 | ||
| + | $items = array_slice($items, | ||
| + | |||
| + | foreach ($items as $item) { | ||
| + | $dateLabel = (int)$item[' | ||
| + | $url = '/ | ||
| + | |||
| + | echo '< | ||
| + | |||
| + | echo '< | ||
| + | echo htmlspecialchars($dateLabel, | ||
| + | echo '</ | ||
| + | |||
| + | echo '< | ||
| + | echo '<a href="' | ||
| + | echo htmlspecialchars($item[' | ||
| + | echo '</ | ||
| + | echo '</ | ||
| + | |||
| + | if ($item[' | ||
| + | $paras = explode(" | ||
| + | foreach ($paras as $p) { | ||
| + | echo '< | ||
| + | } | ||
| + | } | ||
| + | |||
| + | echo '<p style=" | ||
| + | echo '<a href="' | ||
| + | echo '</ | ||
| + | |||
| + | echo '</ | ||
| + | echo '< | ||
| + | } | ||
| + | |||
| + | if (empty($items)) { | ||
| + | echo '< | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | [[newblog|新しい記事の投稿]] | ||
jarltokyo.1777017306.txt.gz · 最終更新: by Tokyo Admin
