Ploneサイトのお手入れな週末

週末は家でPloneとCOREBlogのカスタマイズをしていました。この週末は、「Zope Developers Camp 2005 夏」というZopeのイベントがあったのですが、もともと予定が入っていたので参加できませんでした。でも、その予定がキャンセルになってしまい、免停中なので外出する気力もなく、引き篭もっていたという…
こういう濃いーイベントに一度参加してみたいです。合宿のプレゼンの様子がPodcastで配信されているので、その時のために雰囲気だけでも掴んでおこうと思います。

で、カスタマイズなのですが、大したことはしてなくて細かい所の修正だけです。

・archivesの半年以上前のリンクはセレクトボックスに変更
・LinuxとZaurus関連記事の整理
・はてなブックマーク、del.icio.usへのリンクを追加
・RSS auto-discovery用のタグを追加
・RSSはFeedBurner経由に変更
・カテゴリの整理
・24dのプロフィールを追加

あとは、近いうちにこの素のPloneデザインを何とかしようと思います。

archivesの変更は、具体的には、COREBlogフォルダ内の portlets -> archives 内を次のように変更しました。ループが2回も回るし、日本語直接書き込んでるし、スタイルシートも組み込みで書いちゃってあったりと、突っ込みどころ満載なのですが、とりあえず動いているのでよしとします。Page Templateをもっとキレイに書くにはどうしたら良いのでしょうか…

<h5>Archives</h5>
<div class="portletBody">

<tal:block tal:repeat="obj python:here.month_archive_items(count=200)">

    <span tal:define="global date python:DateTime(obj['year'], obj['month'], 1);" tal:omit-tag="" />
    <div tal:define="oddrow repeat/obj/odd;global idx repeat/obj/index"
         tal:condition="python: idx < 6"
         tal:attributes="class python:test(oddrow, 'portletContent even', 'portletContent odd')">

        <a href=""
           tal:attributes="href string:monthlist_html?year:int=${obj/year}&month:int=${obj/month};">
            <span i18n:translate="" tal:omit-tag="">
                <span i18n:name="monthname">
                <span i18n:translate=""
                      tal:define="monthstring python:date.strftime('%B').capitalize();"
                      tal:content="string:$monthstring"> </span>
                </span>
                <span i18n:name="year"
                      tal:define="year python:date.year()"
                      tal:content="string:$year"
                      tal:attributes="id string:calendar-year-$year;"> </span>
            </span>
        </a>

    </div>

</tal:block>

<form name="archive_jump" style="margin:15px 3px">
    半年以上前の記事
    <select name="url" onChange="location.href=this.url.value">
    <tal:block tal:repeat="obj python:here.month_archive_items(count=200)">
        <span tal:define="global date python:DateTime(obj['year'], obj['month'], 1);global idx repeat/obj/index"
              tal:condition="python: idx >= 6"
              tal:omit-tag="">

        <option value=""
                tal:attributes="value string:monthlist_html?year:int=${obj/year}&month:int=${obj/month};">
            <span i18n:translate="" tal:omit-tag="">
                <span i18n:name="monthname">
                <span i18n:translate=""
                      tal:define="monthstring python:date.strftime('%B').capitalize();"
                      tal:content="string:$monthstring"> </span>
                </span>
                <span i18n:name="year"
                      tal:define="year python:date.year()"
                      tal:content="string:$year"> </span>
            </span>
        </option>
        </span>
    </tal:block>
    </select>
    <input type="button" onClick="location.href=this.form.url.value" value="GO" />
</form>

</div>


Leave a comment


:

:

:

:

このエントリーのはてなブックマーク (-)