快晴の東京、おはようございます。
おかげさまで本日、株式会社ダイレクトサーチジャパンは5周年。
6年目を無事迎えることができました。
ここ1ヶ月ほど、事務所移転に伴う業務でいろいろとてんぱっていて、ほうぼうに迷惑をかけてしまっています。
本当に申し訳ありません。
おそらく今週を目処に移転先も確定し、諸々動き出すのではないかと思います。
というわけで今年度もよろしくお願いします。
代表取締役 田中弘治
Official Blog of Direct Search Japan Inc.
find /full/path/to/app/webroot/cache -mmin +360 | xargs rm -f
# APP/Config/bootstrap.php
CakePlugin::load('HtmlCache');
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^GET$
RewriteCond %{DOCUMENT_ROOT}/cache/$1/index.html -f
RewriteRule ^(.*)$ /cache/$1/index.html [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
$this->Helpers->load('HtmlCache.HtmlCache');
$this->HtmlCache->options($options); // 必要に応じて
# view
$this->HtmlCache->options(array('cache_dir' => 'statics'));

![]() |
| CakePHP OGP Plugin |
cd your_app git clone git://github.com/monsat/Ogp.git Plugin/Ogp
# APP/Config/bootstrap.php
CakePlugin::load('Ogp');
とし、Controllerで、OgpHelperを読み出します。# APP/Controller/AppController.php public $helpers = array( 'Html', 'Form', 'Ogp.Ogp');これで準備完了です。
# APP/Config/bootstrap.php
Configure::write('Site', array(
'site_name' => 'サイトのタイトル',
'description' => 'サイトの説明',
'image' => '/img/image.png', // サイトの画像
'type' => 'website', // サイトの種類(blog等)
'separator' => ' - ', // ページタイトルとサイトタイトルの間の文字列
));
Configure::write('Ogp.settings', array(
'base' => 'Site.',
'autoKeys' => array('type', 'site_name', 'description', 'image'), // viewで設定しなくても必ず書き出すOGPタグ
));
# layout
echo $this->fetch('meta');
# view
// <title>タグ($title_for_layout)も同時に設定されます。
$this->Ogp->title('ページのタイトル');
// フルURLで書き出されます。
$this->Ogp->image($post['Post']['author_image_url']);
// その他は、ogpタグのname(og:無し)とcontent
$this->Ogp->set(
'description',
"stripped \n and <b>tags</b>",
// options
array(
'meta' => true,
),
);
<title>ページのタイトル - サイトのタイトル</title> <meta property="og:title" content="ページのタイトル - サイトのタイトル" /> <meta property="og:site_name" content="サイトのタイトル" />'; <meta name="description" content="サイトの説明" /> <meta property="og:description" content="サイトの説明" /> <meta property="og:type" content="website" /> <meta property="og:image" content="http://example.com/img/author_image_example.png" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script type="text/javascript" src="../jquery.linkbox.js"></script>
<div data-click="linkbox" class="sample"> <p>sample <a href="/">最初のリンク</a> が使用されます。</p> <p>sample <a href="/p/blog-page.html">このリンク</a> は直接クリックする必要があります。</p> </div>[data-click="linkbox"]が書かれた属性内の最初のリンクが使用され、ボックスをクリックしたときに遷移します。
.linkbox {
background-color: #eee;
}
div.sample {
cursor: pointer;
}
デフォルトでは .linkbox というクラスが使用されます。<div data-click="linkbox"> <p>sample <a href="/">最初のリンク</a> ですが、直接クリックする必要があります。</p> <p>sample <a href="/p/blog-page.html" data-linkbox="target">このリンク</a> は優先して使用されます。</p> </div>