今年の目標
今年は走ることを習慣にすることを目標にします。
今年の後半には何かのランニング大会に出場します。距離は短いかもしれないけど。
あせらず、じっくりで。
今年は走ることを習慣にすることを目標にします。
今年の後半には何かのランニング大会に出場します。距離は短いかもしれないけど。
あせらず、じっくりで。
商品登録の時や編集の時、「詳細-メインコメント」欄に<script>のタグを使おうとすると「#script tag escaped#」に変換されます。これはXSSを防ぐための機能なのですが、商品紹介ページでjQueryなどを使ってみた目にインパクトを与えたり、機能を追加したりしたくなったのでちょっといじってみました。
手を加えるファイルは3つです。
/data/Smarty/templates/xxxx/detail.php
Line.54 辺り
■変更前
<p><!–★詳細メインコメント★–><!–{$arrProduct.main_comment|nl2br}–></p>
■変更後
<p><!–★詳細メインコメント★–><!–{$arrProduct.main_comment|nl2br|smarty:nodefaults}–></p>
| 自己プロデュース力 |
|
![]() |
おすすめ平均 ![]() よく考えているなあと感じる 暴力反対 自分のアピールの仕方を成功事例に基づき理解出来る 漫才にもマーケティング 島田紳助氏のマーケティング力にすぐれていることがわかります
|
DVDを書籍化したものだそうです。
「きちんと調査して自分自身と世の中を把握」
「それをもとに夢に向かって努力しなさい」
「無駄な努力をしていてはダメ」
という内容でした。
紳助さんらしい体験を交えて紹介されていてわかりやすいようなわかりにくいような・・・
NSCの芸人志望の若者向けのメッセージですが、一般の社会人にも当てはまることが多いと思いました。
今度はDVDで観たいです。
| 紳竜の研究 [DVD] |
|
![]() |
アール・アンド・シー 2007-05-30 売り上げランキング : 406 おすすめ平均 |
concrete5のデフォルトだと出力されたページのヘッダに
<meta name="generator" content="concrete5 - xxx" />
という感じで自動的にconcrete5のバージョン情報が入ります。
セキュリティ的にもあまりよくなさそうなので、このメタタグが出力されないようにカスタマイズします。
/concrete/elements/header_required.php
を
/elements/header_required.php
にコピーして40行目あたりの
<meta name="generator" content="concrete5 - <?php echo APP_VERSION ?>" />
を削除します。
このようにすると優先的に「/elements/header_required.php」が読み込まれます。
これを「オーバーライド」といい、どのファイルを編集したか(カスタマイズしたか)がすぐわかり、アップグレードの時も上書きされずに住みます。
ずっと気になっていたのですが、さっき調べたら意外と簡単に対処できることがわかりましたのでメモしておきます。
“○” とか “×” などの記号はブラウザで表示するとほかの文字よりひとまわり小さくなってしまうことがあります。
これを回避するにはページ制作時に次のようにします。
スタイルシートのはじめに
@charset "utf-8";
と記述します。
もちろんそのスタイルシートはUTF-8で記述します。
次にそのスタイルシートに
body {
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'MS Pゴシック',sans-serif;
}
と書きます。
要するにブラウザが日本語の書体を使っていないので小さく表示されてしまうということみたいです。
参考
meisui8: 記号文字のフォントサイズが小さいのはなぜか
CSSのfont-family:ヒラギノとMS Pゴシックとメイリオの悩ましい関係 – webデザイナーのナナメガキ
concrete5 でコントローラの中でメール送信する時は、mail helperを呼び出して次のように設定・送信します。
$mh = Loader::helper('mail');
$mh->to( 送信先メアド );
$mh->from( 送信元メアド );
$mh->addParameter( 'param_a', $param_a );
$mh->load( 'mailbody' );
$mh->setSubject( メールタイトル );
@$mh->sendMail();
$mh->load( 'mailbody' );
の部分ではメール本文を設定しています。
/mail の中にテンプレート用のファイル ‘mailbody.php’ を用意します。
‘mailbody.php’ の中では変数「$body」に本文を代入します。
例えば
<?php $body = 'こんにちは、メール本文です。'; ?>
とすれば ‘こんにちは、メール本文です。’ という文字列がメール本文にセットされます。
$mh->addParameter( 'param_a', $param_a );
の部分では ‘mailbody.php’ に渡すパラメータをセットしています。
ここでセットした値は ‘mailbody.php’ の中で使うことができます。
最後は
@$mh->sendMail();
で送信します。
タグ: concrete5, Tips, メール, 開発Google AJAX Libraries API というものがあります。
jQuery とか Prototype とかのJavaScript ライブラリが特定の URL から読み込めます。
サイトを作るたびにライブラリをアップロードしなくても、いつも決まったURLから呼び出せるのでとても便利です。
しかもホストしているのはGoogleで、次のような主要なJavaScript ライブラリが使えます。
Google がホストしてるのに YUI も使えるところがステキですね。
使い方は、
<script src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.3.1");
google.load("jqueryui", "1.5.3");
google.load("prototype", "1.6.0.3");
google.load("scriptaculous", "1.8.2");
google.load("mootools", "1.2.1");
google.load("dojo", "1.2.3");
google.load("swfobject", "2.1");
google.load("yui", "2.6.0");
</script>
のようにするだけ。
google.load() の二つ目の引数は各ライブラリのバージョンです。
バージョンの細かい指定方法はこのへんに詳しく書いてあります。
タグ: AJAX, google, JavaScript, Tips, web製作concrete5はサイト内検索用にサイトをインデックス化する機能を持っています。
また、concrete5のインストールディレクトリにsitemap.xmlをつくる機能もあります。
サイトが成長するにつれ、この2つはとても重要な機能になります。
でも、この2つの機能はデフォルトでは手動でしか動かせません。
自動で実行させるためにはサーバのcronという機能を利用します。
coreserverでは管理メニューの「CRONジョブ」で自動実行させたいシェルスクリプトの指定と自動実行させる時間の間隔を設定することができます。
シェルスクリプトには次のように書きます。
#!/bin/sh /usr/bin/wget --spider http://example.com/index.php/tools/required/jobs?auth=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx exit
http://example.com/index.php/tools/required/jobs?auth=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
の部分はconcrete5の管理画面の「メンテナンス」を開いた最下部にある「もしもこのジョブをバックグランドで実行されたいのであれば、Cronなどを使い、定期的、自動的に下記のリンクにアクセス出来るようにして下さい:」のURLを入れます。
このシェルスクリプトを「c5jobs.sh」などと名前をつけ、サーバにアップロードして実行権限を与えます。
coreserverのCRONジョブ設定でアップロードしたシェルスクリプトの指定と時間の間隔を設定すると自動で検索用索引作成とサイトマップファイル作成が行われるようになります。
はじめはphpでURLにアクセスさせてみたのですが、ファイルが見つからないエラーになってしまったのでちょっと調べました。
lynxとかも試しましたが、アクセスするたびにサーバからの反応が返されたりしてちょっと気持ち悪かったのでなんとかならないかなーと思ってたらwgetのことを思い出しました。
最近はunixコマンドから少し離れていたのでwgetのことなどすっかり忘れていました・・・。
でもwgetだとアクセスしたファイルをダウンロードしてしまうので、オプションとか調べたら「–spider」などというオプションがあって驚きました。
このオプションのおかげでごみファイルなども残すことなく自動化できるようになりました。
concrete5にはユーザ項目を追加する機能があります。
ユーザ登録の時などに入力させ、ユーザ情報の一部として利用することができます。
ユーザ項目の追加は管理画面の「ユーザ・グループ管理」から「ユーザ項目」に入ると行うことができます。
例えば “gender” というハンドルの項目を作った場合、その項目を扱うには次のようにするようです。
$u = new User; $ui = UserInfo::getByID( $u->uID ); $gender = $ui->getUserGender();
ミソは
$ui->getUserGender();
で、
“getUser” + 取得したいハンドル
というように呼び出します。
ちなみに、
はシステムによって予約済みのようですので、ハンドルには
などは使わない方が無難みたい。(使えなかったりややこしかったりするので)
タグ: cms, concrete5, Tips
最近のコメント