タグ検索:名古屋 , Youtube

2024年も無事営業を終了させていただくことができました。
お客さまや当ブログを見ていただいた皆さま、1年間本当にありがとうございました。このブログを書いているのは2024年12月30日です。年内できりよく完了したお仕事もあれば、来年へ継続していくお仕事もありますが、まずは1年間を無事終えることができて本当に感謝しております。

そして以前から計画をしていたYoutubeチャンネル。なかなか準備が進まず結局年末になってしまいましたが、それでもなんとか2024年中に始める準備が出来てよかったです。そこで今回は、今後Youtubeチャンネルで、何をしていきたいかを少し書いてみることにしました。

Youtubeチャンネル「アイデアソースの小さなつづら」でやりたいこと

柱といいますか一番核となる部分としては、世の中にAIやSNSがあふれWebサイトの立ち位置が不明確な時代だからこそ、Webサイトを運用する大切さや、自らのコンテンツや情報を育てていくという価値について、楽しく考えるきっかけとなるチャンネルになれたら嬉しいと思います。

あまり堅苦しいものにはしたくないので、この辺りを裏テーマに据えながら、普段私たちが愛用しているa-blog cmsを使い、Webサイトをどの様に便利に活用出来るのかを考えていけたらと思います。もちろんAIやSNSの役割はとても大きく欠かせないツールですから、どの様にWebサイトとの関係性を構築するのかが大切です。

特にAIについては、AIが今後どの様な進化をしていくのかはわかりませんが、私たちの生活に密接に関わってきます。ビジネス的な視点では、何もせずにいるといずれ仕事を奪われ脅威になることもあると思いますが、個人的には脅威というより身近に優秀なAIが増えることで、可能性を広げていける様に取り組んでいけたらと思っています。

このAIの存在がYoutubeチャンネルを始める一つの動機になっています。

自らが情報源になれるか

日々のAIの進化が凄いので現時点での考え方という前置きはつきますが、基本的にAIはネットなどの情報を収集源として成り立っており、既存の情報への網羅性は人間を遥かに超えていると思います。

AIから得られる情報の正誤はありますが、すでに私たちが仕事で扱うhtml/css/jsなどのコードやプログラミングなども非常に精度の高い回答が得られます。また以前びっくりしたのが、私の趣味である古い車のこと(例えば海外製の特定のキャブレターのセッティング方法など)の様な、非常に専門性の高いマニアックな質問についても、回答を得られAIの凄さを体感したことがあります。

すでにAIがインターネットの情報を収集しコミュニケーションをしている時点で、Webサイトの代わりとなり情報提供を始める時代となりつつあります。インターネット上に情報提供をしないと、AIには認識されず情報として世に周知・認知されませんが、Webサイト自体は見られないというアンバランスな時代が目の前まで来ていそうです。

この様な状況からひとつ頭を出す為には、自らが情報源となり表に立ち発信することが大切だと考えています。情報源としての見方は様々ありますが、情報源としてのユニークさ「情報にチャンネルや人物(キャラクター)の個性を加える」という意味でも考えられると思います。ある程度認知されたチャンネルや人物(キャラクター)が紹介しているから興味が湧くというのは、AI時代では今まで以上に意味がありそうな気がしています。

自らがものごとについて経験をふまえて情報提供することで、AIとは異なる視点で情報を発信することが大切…この様なことを考えていたことで、今回のYoutubeチャンネル開設につながっていきました。すでにYoutuberやSNSのインフルエンサーなど、個々で情報発信できている方は、その強みが今後より一層活かされてくると思います。

気になる駄目な人の存在

あと今回Youtubeチャンネル開設を考えた時に、色々と他チャンネルを見ながら思うことがあったのですが…

今後AIの精度が上がり正しい情報ばかり溢れる世の中になったとして、そんな時代に人々が活躍できるとしたら、それは世の中に駄目な人を受け入れて楽しむ(許す)余裕ができた時なのかもしれません。

突飛な考え方かもしれませんが、身の回りが完璧になればなるほど息苦しく、駄目な人が可愛く見えて人気になるかもしれません。ダメなところが人間らしいよねと。でも確かに完璧な人より、少し駄目なところがある人の方が愛されるパターンってある気がしますので、ダメさ加減が絶妙で憎めない人がより魅力的に見える時代になるのかもしれません。

そうなると自分の嫌いなダメなところも人に出せる…そんな人が求められる人材になるのでしょうか。「裏表なく素直に表現できる人が、表に立ち個性的な情報発信をすると良さそう…」言葉にするとかなり???で難しいですけど、まぁ等身大で良いということでしょうか…。

2025年Youtubeチャンネル始めます!

2025年から「アイデアソースの小さなつづら」というYoutubeチャンネルを始動することになり、今回はチャンネルを始めるきっかけを色々と書いてみました。大層なことを考えて始めてはおりますが、それが最初から上手く表現できるとは思っていません。私たちにとっては大きなチャレンジです。どうかやさしく応援していただけると嬉しいです。



この度2025年から「アイデアソースの小さなつづら」というYoutubeチャンネルを始動することになりました。
こちらのチャンネルでは、弊社が愛用しているa-blog cmsのお話や、アプリやハードウェアの紹介、写真・動画(カメラやレンズ)のお話など、作業の合間に息抜きで見ていただける様な手軽な話題をご紹介していきます。

今回はチャンネル始動への意気込みを兼ねて、ご挨拶動画をアップいたしました。(というか、これもうすでに始まっている?)
ぜひa-blog cmsに興味のある方は「チャンネル登録」してお待ちください。宜しくお願いいたします。


このエントリーはa-blog cms Advent Calendar 2024の22日目の記事です。

以前こちらのブログ「a-blog cmsのキャッシュクリアボタンを追加で実装する方法」でご紹介した、a-blog cmsのキャッシュを消すボタンをログイン後の画面に追加表示する方法ですが、今回はこちらの機能に少しだけコードを追加して、さらに便利になる方法を考えてみました。

a-blog cmsの強力なキャッシュ機能

Webサイトはいろいろな方法でキャッシュ(一時ファイル)が生成され、高速化やデータをミニマムにするための処理がおこなわれています。ブラウザのキャッシュは有名ですが、a-blog cmsにも強力なキャッシュ機能が用意されており、「ページ キャッシュ」「テンプレート キャッシュ」「コンフィグ キャッシュ」「カスタムフィールド キャッシュ」「モジュール キャッシュ」「一時的なキャッシュ」と機能に合わせた複数のキャッシュが用意されています。

・a-blog cmsのキャッシュ機能
https://developer.a-blogcms.jp/document/cache/cache.html

便利なショートカットでらくらくキャッシュクリア

このキャッシュ機能が働くことで高速に処理され普段は良いことばかりなのですが、日々業務でWeb制作を行なっているとキャッシュが効いていることで、修正した部分が反映されず確認時にミスが起こることがあります。

もちろんa-blog cmsには対策として、ブログ・カテゴリー・エントリーなど管理画面で編集作業を行うと、自動的にキャッシュをクリアする機能が備わっていますので、普段は気にすることなく運用が可能になっておりますし、管理ページのダッシュボードにてボタン操作でキャッシュをクリアすることも出来ますので、特別困るというものではございません。

ただ、これほど便利なa-blog cmsでもテンプレートのみを編集した場合は、キャッシュがクリアされず変更内容が反映されません。a-blog cmsのテンプレートファイルはhtmlになりますので、テンプレートの編集時にシステムが動作しないからです。そのため管理ページのダッシュボードで毎回キャッシュをクリアする操作が必要となります。

この様な理由から、以前のブログでは手軽に操作ができる様に、ログイン後のページにキャッシュクリアボタンを追加したのですが、今回はさらにそのボタンをキーボードのショートカットで動作する様にしてみようと思います。

ということで、さっそく以前ご紹介したcacheclear.htmlを少しだけ手直しします。
まずはおさらいから。以前は下記の様なコードを書きました。

■ cacheclear.html(修正前)

<!-- キャッシュクリア用 cacheclear.html -->
<!-- BEGIN_MODULE Touch_Login -->
@section("dashboard-clear-cache")
<!-- BEGIN_MODULE Touch_SessionWithCompilation -->
<div id="adminBox" class="clearfix js-dragAdminBox_disable normalBox">
<form action="" method="post">
	<table class="clearfix js-dragAdminBox_disable normalBox" style="border:none;margin:0;padding:0;font-size:13px;">
	<tbody>
		<tr>
			<td>
				<div class="acms-admin-form-checkbox">
				<input type="checkbox" id="input-checkbox-cashe-page" name="target[]" value="page" checked />
				<label for="input-checkbox-cashe-page" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->ページ<!--/T--></label>
				</div>
				
				<!-- BEGIN_MODULE Touch_RootBlog -->
				<div class="acms-admin-form-checkbox">
				<input type="checkbox" id="input-checkbox-cashe-template" name="target[]" value="template" checked />
				<label for="input-checkbox-cashe-template" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->テンプレート<!--/T--></label>
				</div>
		
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-config" name="target[]" value="config" />
					<label for="input-checkbox-cashe-config" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->コンフィグ<!--/T--></label>
				</div>
				
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-field" name="target[]" value="field" />
					<label for="input-checkbox-cashe-field" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->カスタムフィールド<!--/T--></label>
				</div>
				
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-module" name="target[]" value="module" />
					<label for="input-checkbox-cashe-module" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->モジュール<!--/T--></label>
				</div>
				
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-temp" name="target[]" value="temp" />
					<label for="input-checkbox-cashe-temp" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->一時的なデータ<!--/T--></label>
				</div>
				<!-- END_MODULE Touch_RootBlog -->
				
				<div style="position: relative;display: inline-block;">
					<input type="hidden" name="field[]" value="target" />
					<input type="submit" name="ACMS_POST_Cache" value="<!--T-->キャッシュをクリア<!--/T-->" class="acms-admin-btn-admin"/>
					<input type="hidden" name="forcing" value="true" />
				</div>
			</td>
		</tr>
	</tbody>
	</table>
</form>
 
</div>
<!-- END_MODULE Touch_SessionWithCompilation -->
@endsection
<!-- END_MODULE Touch_Login -->

キャッシュをクリアするためのボタンを追加するコードです。
こちらの内容を記述するだけで、キャッシュクリアボタンを好きな場所に追加することができます。

では、上記のソースコードを一部修正して、特定のショートカットでjsイベントを発火するために処理を追加します。
jsを記述をする場所は「Touch_SessionWithCompilation」の中であれば、ログイン時に編集者以上の権限の場合にしか展開されないため安心です。

今回のサンプルはショートカット「ctrl(command) + shift + E」で実行される様にしてみました。私はブラウザ「Google Chrome」を使っていますので、ハード再読み込み「ctrl(command) + shift + R」の隣のキー(E)でa-blog cmsのキャッシュクリアとしてみました。ちなみにこのショートカットキーは一例ですので、お好みのキーに変更して使ってください。ショートカットキーを変更する際は、下記コード6行目の条件判定の値を変更すればOKだと思います。

<!-- ショートカットで発火 -->
<script>
document.addEventListener('keydown', (e) => {
	//ctrl(command)+shift+E
	if (((e.ctrlKey && !e.metaKey) || (!e.ctrlKey && e.metaKey)) && e.shiftKey && e.key.toLowerCase() === 'e') {
		$('#header-cacheclear-btn').trigger('click');
	}
});
</script>

そして45行目の「<input type="submit" name="ACMS_POST_Cache" value="<!--T-->キャッシュをクリア<!--/T-->" class="acms-admin-btn-admin"/>」に「id="header-cacheclear-btn"」を付与して、追加したjsからボタンクリックを発火するための指定をします。

<input type="submit" name="ACMS_POST_Cache" value="<!--T-->キャッシュをクリア<!--/T-->" class="acms-admin-btn-admin" id="header-cacheclear-btn"/>

そして修正後のコードがこちら

■ cacheclear.html(修正後)

<!-- キャッシュクリア用 cacheclear.html -->
<!-- BEGIN_MODULE Touch_Login -->
@section("dashboard-clear-cache")
<!-- BEGIN_MODULE Touch_SessionWithCompilation -->
<div id="adminBox" class="clearfix js-dragAdminBox_disable normalBox">
<form action="" method="post">
	<table class="clearfix js-dragAdminBox_disable normalBox" style="border:none;margin:0;padding:0;font-size:13px;">
	<tbody>
		<tr>
			<td>
				<div class="acms-admin-form-checkbox">
				<input type="checkbox" id="input-checkbox-cashe-page" name="target[]" value="page" checked />
				<label for="input-checkbox-cashe-page" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->ページ<!--/T--></label>
				</div>
				
				<!-- BEGIN_MODULE Touch_RootBlog -->
				<div class="acms-admin-form-checkbox">
				<input type="checkbox" id="input-checkbox-cashe-template" name="target[]" value="template" checked />
				<label for="input-checkbox-cashe-template" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->テンプレート<!--/T--></label>
				</div>
		
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-config" name="target[]" value="config" />
					<label for="input-checkbox-cashe-config" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->コンフィグ<!--/T--></label>
				</div>
				
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-field" name="target[]" value="field" />
					<label for="input-checkbox-cashe-field" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->カスタムフィールド<!--/T--></label>
				</div>
				
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-module" name="target[]" value="module" />
					<label for="input-checkbox-cashe-module" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->モジュール<!--/T--></label>
				</div>
				
				<div class="acms-admin-form-checkbox">
					<input type="checkbox" id="input-checkbox-cashe-temp" name="target[]" value="temp" />
					<label for="input-checkbox-cashe-temp" style="font-weight: normal;"><i class="acms-admin-ico-checkbox"></i><!--T-->一時的なデータ<!--/T--></label>
				</div>
				<!-- END_MODULE Touch_RootBlog -->
				
				<div style="position: relative;display: inline-block;">
					<input type="hidden" name="field[]" value="target" />
					<input type="submit" name="ACMS_POST_Cache" value="<!--T-->キャッシュをクリア<!--/T-->" class="acms-admin-btn-admin" id="header-cacheclear-btn"/>
					<input type="hidden" name="forcing" value="true" />
				</div>
			</td>
		</tr>
	</tbody>
	</table>
</form>
 
<!-- ショートカットで発火 -->
<script>
document.addEventListener('keydown', (e) => {
	//ctrl(command)+shift+E
	if (((e.ctrlKey && !e.metaKey) || (!e.ctrlKey && e.metaKey)) && e.shiftKey && e.key.toLowerCase() === 'e') {
		$('#header-cacheclear-btn').trigger('click');
	}
});
</script>

</div>
<!-- END_MODULE Touch_SessionWithCompilation -->
@endsection
<!-- END_MODULE Touch_Login -->

テンプレートキャッシュのクリアはルートブログだけの処理になっています

もともとa-blog cmsの管理ページに用意されたキャッシュクリアボタンは、ルートブログの場合はすべて表示されますが、子ブログ以下の階層では「ページ キャッシュ」のみとなりますので、今回仕様は合わせております。
したがってルートブログ以外では、今回のショートカットでも「ページ キャッシュ」のみのキャッシュクリアとなり、テンプレートキャッシュはクリアできませんのでご注意ください。もちろん上記コードの「Touch_RootBlog」の部分を変更すれば対応可能だとは思いますが、ルートブログの管理者以外でも操作が可能になりますので、どの様に実装されるかはご自身の判断と責任でお願いいたします。

まとめ

今回はa-blog cmsのキャッシュを手軽に消す方法を考えてみました。
小ネタになりましたが、ちょっとしたことを便利にするだけでも作業効率って上がる場合があります。テンプレートのhtmlをガツガツ直しながら作業をしている時は、何度も何度もキャッシュクリアしている日もありますし。まあ開発中はキャッシュ機能をオフにするという考え方もありますけどね…。

少し変わった内容だったかもしれませんが、個人的にはヘンテコで面白いなと思ったり…。この様なTIPSは今後もご紹介させていただきますので、皆さまのa-blog cmsでのサイト制作に役立てていただければ幸いです。

最後におまけ…2025年Youtubeチャンネル始めます!



この度2025年から「アイデアソースの小さなつづら」というYoutubeチャンネルを始動することになりました。
こちらのチャンネルでは、弊社が愛用しているa-blog cmsのお話や、アプリやハードウェアの紹介、写真・動画(カメラやレンズ)のお話など、作業の合間に息抜きで見ていただける様な手軽な話題をご紹介していきます。

今回はチャンネル始動への意気込みを兼ねて、ご挨拶動画をアップいたしました。(というか、これもうすでに始まっている?)
ぜひa-blog cmsに興味のある方は「チャンネル登録」してお待ちください。宜しくお願いいたします。