2010年10月9日土曜日

Droppyが崩れる。。(便利なドロップダウンメニュー)

concrete5でドロップダウンメニューを使おうと思い、
「droppy」というjQueryライブラリを人から教えていただいて、気に入って使っている。
http://web-do.com/

concrete5では、
.nav-selected
.nav-path-selected
という二つのクラスでオートナビブロックのul,li,aの各要素が装飾できる。

それを使って、droppyのカスタマイズを色々しているのだが、、

今、うちのサイトでdroppyを使っていて、Operaでだけなぜか表示が崩れている事に気付いた。

firefox,chrome,IE8,IETesterでのIE6,Win SafariではOKだが、なぜかまだ原因が掴めない。
どうも、崩れているli,aの部分だけ、1px下に広がっているように見えるので、それが原因と思われるが。
なんでかな。。

::::::::::::::::::::::::::::::::::::::::::

閑話休題。

Droppyってそれにしても便利。

次の予定では、concrete5本家によるアドオンsuperfishのように、
子ページがあれば「>>」といった記号を表示して、子ページがあることが分かる実装をしたい。
PHPのソースを読み解かねば。。。

::::::::::::::::::::::::::::::::::::::::::

追記:問題解決。どうも「FL・AS」というように、中黒を全角で入れていたのが問題だったかもしれない。中黒点を抜いて半角文字のみにしたら、無事解決。全角半角対策って、面倒なことが多いな。

2010年9月29日水曜日

RSSの文字数変更

concrete5でRSSブロックにて排出される文字数の変更メモです。

concrete/helpers/text.phpのshortText()関数内で表示文字数が定義されているので(255文字)、

/helpers/text.php
を作って(/concrete/配下の元ファイルはそのまま)、
その中に全部そのままコピーし、


class TextHelper{
を

class SiteTextHelper extends TextHelper{
にして、

function shortText($textStr, $numChars=64, $tail='...') {
のように64文字にしてみたらいけました。

良かった。

参考:concrete5日本公式サイト 
http://concrete5-japan.org/help/developer/basic_structure_of_concrete5/

2010年9月28日火曜日

サーバ移転でDBエラーに悩まされて。。

サーバ移転でDBエラーに悩みました。

結局、移転前のDBサーバに実験環境のDBが残っていたのを、
本番環境のDBだと勘違いしてインポートしていたのが原因でした。

それでテーブルが見つからない、とエラーが出て、えらく泡をくいました。

実験環境のDBは、しっかり要らなくなった時点で削除することを徹底しなくては、と肝に銘じた次第です。

2010年9月25日土曜日

cronでconcrete5をサーバ上解凍できたので,嬉しくてメモです。

concrete5を快適に動作させることができるサーバを探して、
sixcoreが良さそうと試行中です。

しかしSSHが非公開で、ファイルマネジャーに解凍コマンドもないので、
concrete5の全ファイルをアップロードするのに非常に時間がかかる。

困ってサポートに電話したら、「cronで代用できるかと思いますので御願いします」ということ。

「cron(コマンド)って、自分にはハードル高し!」と思いつつ、
FTPではタイムアウトしてしまうので挑戦していました。

で、やっとうまくいきました!!!(実際、小躍りして喜びました。(笑))
サーバ学習記録用ブログにメモしておきました。

http://learnaboutserver.blogspot.com/2010/09/cron.html

2010年9月14日火曜日

UI Tabにフィード

concrete5で、jQueryのTabsをつかって、複数RSSフィードを実装しようと思い、試行錯誤したのでメモです。

普通のRSSブロックをTabsの各コンテンツ(divタグ内)にしようと思うも、自動でid,classがふられたdivが生成されてうまくいかず、まず悩みました。
そこで、HTMLブロックを使ってdivでくくってやろうとしますが、RSSフィードをうまくラップできません。
(RSSフィードブロックの上下を<div id="tabs-1">と</div>でくくってやろうとしても、勝手に閉じられてしまいます。。。 )

最後の手段として、無料のPHPブロックを導入し、そいつで無理矢理HTMLをechoで吐き出させ、
Google AJAX feed APIをつかってFeedさせたら無事表示^^
良かったっす。
(普通にフィードさせるなら、Google API+HTMLブロックで十分ですね。自分のケースでは、他にもPHPで読み込ませるものがあったので、PHPブロックが必要でした。)

あ、jQueryのUIは、基本がすでにconcrete5の中に組み込まれているので(要バージョンチェック)、
コンフリクトしないtabsのソースとcss,imagesをひっぱってきて、
それぞれ、トップディレクトリ配下のCSSとJSディレクトリ内に配置し、
「追加ヘッダー要素」でインクルードさせました。該当ページの。

この「追加ヘッダー要素」がかなり使えるしろものですが、
concrete5の編集時に現れる上のバーの「設定」の「カスタム属性」の中で「追加ヘッダー要素」を選ぶと、書き込み欄が出るので、
そこに普通のHTMLやPHPファイルに書くように、jsファイルのインクルードや、スクリプト書きができます。

あ~それにしても、Tabs+RSS Feedが実現できて幸せでした。
便利!

2010年8月11日水曜日

title表示の変更方法

http://concrete5-japan.org/help/new_help_pages/how_to_customize_page_title/
こちらに、title表示の変更方法が書かれていてありがたいのですが、
なぜかこれを変更しても反映されず、しばし悩みました。

はっと気づくと、テンプレートファイルのheader.phpに、<title>などとべた書きしていたではありませんか。。。

あほでした(笑)
解決して良かったのですが。

2010年7月15日木曜日

z-indexの扱い、少し難しい。。

concrete5では、編集可能ブロック(灰色のオーバーレイ部分)をクリックすると、
すぐに編集モードに入れるのがウリです。

が、その機能がz-indexによって実現されているようで、
記事内容にz-indexを指定してしまうと、
ブロックがクリッカブルにならなくなってしまう、という現象に悩まされました。

IE6でz-indexによる表示エラーも発生したりして、
z-indexはやや鬼門かな、と少し考え中な自分です。