[Concrete5]ページURLを取得してテーマに表示する[メモ]

Concrete5の公式からいつの間にか消えてたのでメモ。
URLの取得なんて基本の基本すぎてわざわざ記事にしとく必要なんてないんだろうなぁ。

テーマファイルに以下の記述でページのURLが表示できました。

<?php
$nh = Loader::helper('navigation');
$URL = $nh->getCollectionURL($c);
echo $URL;
?>

[漫画の紹介]オンナミチ

concreteと関係ない話です。本当は別のブログ作ってやるべきなんだけど、お察しください。

お友達の北沢バンビ先生がスペリオールで描いているオンナミチの4巻が先日発売されたので宣伝。
僕が勝手にやっててお金貰ってないので「ステマ」ではない、「マ」です。

“だめんず引きまくりオンナ”の前に、突如現れたパンチの効いたオバハン・・・その驚愕の正体とは!?
人生を変えるなら今・・・決意の三十路オンナミチ!!!

小学館の公式サイトで第一話が無料で読めます。

一話を読むと分かる通り、突然現れるオバちゃんは20年後の主人公 山口梨花本人なのでありますが、20年の間に何があったのか性格が全く違います。というかなぜか関西弁になってたりします。もはや別人ではなかろうか(笑
オバちゃん(山口梨花)は20年後に死んでしまうのですが、なぜか現代に蘇ったオバちゃんが、あれやこれや叱咤したり助言したりして今の梨花と人生を歩んでいく、そんなストーリーです。
オバちゃんの形態は、梨花がオバちゃんが歩んで来た道と異なる行動を起こすたびに変化します。過去が変わったら未来も変わるという理屈でそれは髪型だったり、ファッションだったり様々。毎回何かしら変身するオバちゃんが楽しみです。

そういえば、いつの間にかオバちゃんって梨花の家に住み着いてたんですね。話の流れ的に近くにいるものだと思ってたんだけど、4巻の最後にあんな話になったから気になりました。

この記事書いてる最中にもまた最初から読みたくなってしまった。

Kindle版でも出てるので是非。オンナミチ(1) (ビッグコミックス)

ぶっちゃけ、今だから言えるんだけど、バンビ先生と知り合う前に妻からバンビ先生の漫画を読ませてもらったときに最初に見たのがエロい漫画だったので先生の事をしばらくの間エロ漫画家だと思ってました。すいません…。

WebデザイナーがConcrete5を使うことを躊躇う理由1

あまり参考にはならないかもしれませんが、Concrete5についていろいろな悩みを持っているという方が多いという話を聞いたので、自身の体験からデザイナーの悩みを払拭してみます

プログラムアレルギー

デザイナーが躊躇う第一の理由がプログラムです。

僕はweb業界で働くようになって、三年前にフリーランスになるまでプログラムは書いた事がありませんでした。
会社員時代にやって来た仕事は、基本的に設計書を書いて→デザインを起こして→htmlとcssでコーディングするまで。
システムの実装はプログラマにぶん投げていました。
僕もそうなのですが、はっきり言ってしまうとデザイナー職の人ってプログラム見るの嫌いなんですよ。アレルギー。
phpのソースファイル開いただけで「なんだそれ、わけわかんねー」って言って興味すら持たない人だっています。僕自身も昔そうでした。
もちろん、仕事上必要だから言語の基礎的な部分は理解してたつもりですが、ifとかechoとか本当に基礎の基礎、高校の授業で習うレベルの知識しかなかったんです。

そんな僕が出来ている理由をご紹介します。

実際にphpを新たに書く必要がほとんどない。

Concrete5は汎用性が高いCMSですが、基本的に普通にhtmlとcssを書いているのと同じ感覚でコーディングすれば特に問題がないです。
html+cssだったらWebデザイナーなら作業できますよね。それでいいんです。てかソレ以外にphpでいじる必要がある様なものは大体マーケットプレイスにアドオンがあります。

Concrete5の概念をシンプルに考えると、大きく分けて下記の二つに分類出来ます。

  1. テーマ(編集不可エリア)
  2. ブロック(編集可能エリア)

テーマは全体のデザインやレイアウトを決めるための要素です。
themesフォルダに入っています。htmlやcss、共通で使用する画像はここに置きます。
テーマのファイルは.phpですが、テーマ内にphpのループ処理や複雑な記述はありません。後述のブロック追加タグがあれば大丈夫。

ブロックは、CMSでは一般的に編集可能なエリアの事を指します。
テーマファイルの中にブロックの記述をするとその部分がCMS運用時にブラウザで編集可能になります。

<?php
$a = new Area('任意の英数');//場所毎に名前を変える
$a->display($c);
?>

実際にファイルを開いてみると、上記のブロック追加は最初から書いてあるのでhtmlのマークアップや、cssを変えるだけで組み込みできちゃいます。

ここまででphpを書く必要がほぼない事はご理解いただけましたでしょうか。

サイトを作るための要素が予め用意されているので自分で作る必要がない

静的なhtmlで30ページのサイトを作るとしたら、めんどくさいいくつかの作業があります。
例えばナビゲーションのリンクが切れてたり、パンクズはページ毎に設定しなきゃいけなかったり、共通部分のhtmlなんか毎回書いてられるかって話になると思うんですよ。で、手作業でやってると必ず間違えるんです。人間ですからしょうがないとしても、間違いの確認やら修正やらで余計な時間を取られるのって気持ちのいい事ではないですよね。
こんなのはたとえ話で実際にそんな案件ってもうあまり無いです。
むしろ静的htmlで30ページ作ったらconcrete5に組み込みするより高い見積もりにしないと割に合わないんじゃないかなぁ…。

で、予め用意されているものとして代表的なものが、以下。

  • スライドショー
  • オートナビゲーション
  • wysiwygエディタ
  • etc…

他にもたくさんあるけど、別の機会にご紹介します。
スライドショーは画像を選ぶだけで作れるし、オートナビはページさえ作れば各ページのサブページまでリスト構造化します。
wysiwygエディタは言わずもがな。エクセルからコピペすればそのままテーブルで入ったりしてとても便利。
これらは、特になにか設定をするわけでなく、デフォルトの機能です。

ブロックのカスタマイズもかんたん

「あぁ、ブロックから出力されるタグが<li>じゃなくて<p>だったらなぁ〜」と思った事はありませんか?

concrete5には「カスタムテンプレート」という機能があります。

これは、オートナビブロックやページリストブロックなどの出力される内容をちょっといじったりすることができます。

カスタムテンプレートはphpを知っていればより自由度の高い変更ができますが、僕は特に必要としていません。敢えてphpを書いていると言えば、ページタイトルを出力しているタグをコピペしたり、リンクをコピペしたり、基本的にコピペで出来てしまうんですよ。

 

ここまでで、プログラムについて細かく説明せずに書きましたが、本当にこの程度の知識で汎用性の高いCMS構築が出来てしまいます。

僕が簡単に扱える上に、お客さんからはこんなに使いやすいCMSは初めてですよ!とお喜びの声が聞けてwin-winの関係が築ける事間違いなし!!

[Mac]バックグラウンドの動作が極端に遅かったらAppNapを疑う。[メモ]

去年、OSX 10.9 Mavericksにアップデートしてから、なにやら急にパフォーマンスが低下した様な気がしてたんです。
買って3年間、尋常じゃないくらい酷使してたもんで、メモリもたっぷりあるしHDDがもうダメなんだろうなあって勝手に判断してSSHDに換装したら、前より調子いい感じになったので問題なく使っていたんですが、元凶はどうやらAppNapにあったらしいんです。

AppNapとは

Apple – OS X Mavericks – 先進のテクノロジー

App Nap。舞台裏では電力を無駄にしません。
App Napは、複数のアプリケーションを同時に使用する時の消費電力を節約できるようにします。OS Xは、使用中のアプリケーションがほかのウインドウの後ろに完全に隠れると、それを認識することができます。もしその時点でそのアプリケーションが音楽の再生、ファイルのダウンロード、Eメールのチェックなどあなたのための処理を実行していない場合は、App Napがアプリケーションの処理速度を下げることで大切なバッテリーを節約し、駆動時間を延ばします。そして、あなたがそのアプリケーションをまた使い出すと、瞬時にフルスピードで動く状態に戻します。これは極めてシームレスに行われるので、あなたはずっと同じ状態で動いていたと思うでしょう。App NapはSafariのタブでも同様に機能するので、表示されているタブだけがフルスピードで処理されます。App Napにより、CPUのエネルギー使用量を最大23パーセント削減できます。

上記Appleサイトより引用
つまり、前面にあるウインドウが別のウインドウを隠したとき、隠れているウインドウのパフォーマンスは低下していて、改めて隠されたウインドウが前面に出たときはパフォーマンスが低下していた事を気づかれないようにOS側で制御して何事も無かったかのように動きまっせって事らしい。

職業柄PhotoshopとIllustratorとDreamweaverとブラウザと仮想Windowsは常に立ち上げていて、それぞれを随時切り替えながら作業を行っているので、10.8の時には感じる事の無かったちょっとしたテンポのずれが非常にストレスになったりもしていて、3年前のモデルでも性能的に劣るマシンではないとは分かっているので、何かしらの原因があるのだとモヤモヤしておりました。

AppNapを切る

電源がない場所でのラップトップでの作業中なら省電力でもオールウェルカムですが、電源があって、ハイパフォーマンスで作業を進行したいって時に作業のリズムを狂わされるのは非常に厄介なので、対策を取りました。

一括で設定とかだったら、資料用のexellやらpdfビューアやらの見るだけのアプリまでもリソース喰われるのでちょっと困ってしまうところだったけれども、なんと個別のアプリケーションそれぞれにAppNapのオンオフが設定可能です。

で、どうやんの?

  1. Finderでアプリケーションフォルダを開き
  2. アプリケーションファイル(.app)を選択し
  3. 「command+I(右クリック→情報を見る)」
  4. 「AppNapを切る」にチェック

これだけ。

変えたばかりで、まだしっかりと確認していないので、何とも言えないけどこれでまた快適に作業できるんじゃないかなぁ。

concrete5 公式活用ガイドブック発売おめでとうございます!

※本の宣伝です。でも↓のamazonアフィで買ってくれると僕が嬉しいです。

2014/2/14に、ついに発売!
関係者の皆さん、おめでとうございます。そして、ありがとうございます!!
二年くらい前からずっとconcrete5の本が欲しかったのですが、日本語版がなくて困っておりました。
なんとkindle版もあるんですよ!これは嬉しい!!

書籍版

kindle版

そもそもconcrete5とはなんぞやって所から始まって、一通りの使い方のガイドブックです。

今忙しすぎてまだちゃんと読めてないんで、俺…この仕事が終わったら読むんだ…。

初音ミクV3で作曲しました

concrete5とは全く関係ありませんが、こないだ初音ミクV3を買ったので、作曲しました。

V3に一緒にStudio Oneというソフトが付いて来たので、それで編集をしました。
ただ、ギターとベースの録音に関して僕の持っているUSBの接続ケーブルだとどうやってもinputできなかったので、ギターとベースはgaragebandで録音して、トラック毎にwavに変換してStudioに読み込みした後エフェクトかけました。

ギターとベースを撮ってるときはノリノリでポップでキャッチーな曲を作ってるつもりだったんです。
それがどうしてこうなったのか自分でもわかりません。

[さくらVPS]Basic認証ができなかった→できた。[メモ]

基本認証を掛けてURLへ飛ぶと500 Internal Server errorが出てしまった。
なんでや。と思ってエラーログ見たら、
[code]configuration error: couldn’t check user. No user file?: /dir/[/code]
とか言われて、わけわからん。

なんやかんやいろいろ調べてみた結果、どうやらapacheをインストールした際に、モジュールの読み込みを忘れていたらしいので、httpd.confを見たら
[code]#LoadModule auth_basic_module modules/mod_auth_basic.so[/code]
コメントアウトしてた。

あるぇ〜?一連の設定してた筈なんだけどなぁ〜?

MacbookProのHDDをSSHDにしました。

メインで使ってるMacbookPro17インチ(early 2011)のHDDの空きが30GB以下になってしまって、sleepimageとかメモリの関係上どうにも動作がおかしい。
フォトショの起動に10分くらい掛かったり、ブラウザがタブ開くたびにフリーズする等、仕事できる環境ではなくなってしまったので、SSDを買うお金のない私は、SSHDに変えました。
SEAGATE シーゲート ST1000LM014 [バルクハードディスク 2.5インチ SSHD HDD+SSD ハイブリッド]

なんか最初MBPが全然認識してくれなくて、PRAMクリアだの、OS10.6のDVD起動だのいろいろ試したけど、どうにもならなかった。この間2時間くらい試行錯誤した。

んで、6年くらい前に買ったMacBookにSSHDつっこんでからDVDでOSインストールして、MBPに入れたら何事もなかったかのように普通に起動した。今までの苦労はなんだったの?

で、5時間くらいかけてTimeMachineバックアップから元のデータ復旧。
アプリケーションや構成など気にせず今までと全く同じ環境引き継げるのがいいよね。
本当はそろそろクリーンインストールした方がいいと思うんだけど、1週間くらい休みがあればできるんだよなぁ…(チラッチラッ

使用感としては、一言。快適です。
仕組み自体はよくわからないけど、なんで早いんでしょうねこれ。

本日2013年8月2日 23:22:45前後の時間帯はTwitterの公開負荷テストです

友人に手伝ってもらってバルスカウントダウンタイマーを作りましたっていうか、カウントダウンのjsに手を加えただけですが。
バルスカウントダウンタイマー https://gotanabe.info/barusu/count.html

なお、23:22:45になるとバルスします。

[追記]
背景のムスカのイラスト、時間になったら目がーメガーのイラストに差し替えようとも考えたのですが、変な構造でhtml作っちゃったからもう時間的に無理だわ(めんどくさい)。

※ツイッターとfacebookとgoogle+でさんざん告知したけどあまりにも誰も見てくれないので、もったいないからここでも宣伝しときます

[Photoshop CC]Mac LCDってなんだ!?[メモ]

仕事のやる気が全然出ないので、Photoshop含め、CS6を全部CCにしました。
そしたら、なんということでしょう。アンチエイリアス部分に見慣れない項目が二つ。
「Mac」と「Mac LCD」。

これ何の違いがあるんすかねぇ〜。って思ってググってみたけど、あんまり日本語記事なかった。

MacにはRetina Displayがある

そう、冷静に考えてみりゃ今のMBPはRetinaだったわーって事でした。
Retina用に最適化されたアンチエイリアス、それが「Mac LCD」。

で、理屈はわかったんですが、僕のMBPは2年前のモデルなんで確認が出来ないんですよ。表示としてどう違うのか。
てか「Mac LCD」使ったらCS6以前で表示おかしくなったりしますよね。
データ納品時とかにいろいろ不都合がありそうなので、当分使用しないでいた方が良さげ。

そしてやる気は未だ出ず。