yoshihiko.com - Blog

覚えることが少ないCMSがほしい2015-1-22

小規模なサイトで、ブログ的なサイトではないけど、サイト運営者が自分で更新したいからWordPressを使うことは少なくないと思うんですよね。

・10ページ以内とかの小規模サイト
・サイト運営者がいつでも更新できるようにしておきたい
・サイト運営者が自分でHTMLを修正するのはなし
・ftpを使うのは面倒

みたいな感じ。こういうのにWordPress使うって、面倒な気がします。CMSってそれぞれ癖があって、慣れればいいかもしれないけど、覚えること自体がめんどくさい。ブログ的なページ構成ではなくて、ページのなかに変更したい部分が複数あると、WordPressを使うのが便利というわけでもないし。最近、小規模なCMSも出てきているようですが、自分の知る限り、それほどさくっと簡単というのは見当たらなくて、プログラマなら数分でできそうなくらいプリミティブなCMSを作ってみました。Dropboxのなかにおいたテキストファイルを読み込んで、該当部分に表示するという、前世紀的な仕組み。

 [↓ここからダウンロード]
http://yoshihiko.com/20cCMS/index.php?id=p1

index.php?id=p1
にアクセスすると、DropBoxのPublicフォルダにおいたテキストファイル「p1.txt」を読み込みます。テキストファイルを増やせば、その時点でいくらでもページは増やせる。

DropBoxにおいたテキストファイルで、「$$$項目名」の改行に続けて書いた部分が、実際のページの<?=$cms[‘項目名’] ?>の部分に表示されるということだけ覚えておけば運用できます。テキストでもHTMLタグを使ってもOK。各ページに共通の項目は「common.txt」というテキストファイルに書き込んでおくことができます。いろんな機能のある入力画面より、テキストファイルに書いたほうが手軽な気がする。

 

設定するのも簡単で、データを記録するテキストファイルは、DropboxのPublicフォルダにおいておきます。MacやPCのファインダーで、DropboxのPublicフォルダのなかにテキストファイルを入れて、右クリックで「公開リンクをコピー」を選ぶと、ファイルのURLがわかります。ファイル名を除けば、それがPublicフォルダのURLです。「20cCMS.php」の指定部分に、フォルダのURLを記入しておきます。(ファイルを入れないと「公開リンクをコピー」ができません。)

普通にウェブページを作って拡張子を.phpにすると、これがテンプレートになります。同じフォルダに「20cCMS.php」を置き、ソースの冒頭で
<?php include(’20cCMS.php’); ?>
のようにリンクします。基本、それだけ。

2012年以降にDropboxに入会した人は、Publicフォルダがないようですが、その場合は、
https://www.dropbox.com/enable_public_folder
にアクセスすることで作れるようです。

マークダウンを使うこともできて、その場合は、
https://github.com/erusev/parsedown
から、
「Parsedown.php」をダウンロードして
「20cCMS.php」ファイルと同じフォルダに置き、
「20cCMS.php」内の指定部分3行の行頭の「//」を削除します。
項目名のあとに、[md]に続けてマークダウン記法で書くと、HTMLに展開されます。

原理は単純なので、書き換え可能な項目は、自由に増やすことができますし、データファイルから色を変えられるようにしたり、スタイルシートを書き換えることもできます。基本的なレイアウトだけ作っておいて、細かい部分はマークダウンにまかせるというのもありかもしれません。

サーバーサイドプログラムは素人なので、不備などあるかもしれませんが、よろしければお試しください。CMSを使用するサイトを制作しているときのデモ用などにも使えると思います。

http://yoshihiko.com/Blog/20150122-4916.html/trackback