SQLの窓

2014年09月27日


Seesaa の特定のカテゴリ(複数)の場合のみ、記事の下に参照リンクやコンテンツを付加する方法

Seesaaブログの page_name 変数の3つ以上の OR 条件の記述方法 の発展形です。上記の場合は、HTML テンプレート内で書きましたが、今回は「記事コンテンツ」内です。

(重要)
article_category 変数は、以下のループの中でのみ有効です。OR 記述が有効なのは、article_category 等の単独変数のみで、article.category という変数には使用できません。
<% loop:list_article -%>
<% /loop -%>
特定のカテゴリ(複数)の場合のみ、記事の下に参照リンクやコンテンツを付加します。

どうやら、変数の種類によって「できる、できない」があるようで、カテゴリ名ではできませんでした。OR 条件の書き方のルールとしては、これではっきりしましたが常に2項になるように「かっこ」でくくればいいようです。
<% if: (((article_category eq '10046946') + (article_category eq '10046812')) + ((article_category eq '10047034') + (article_category eq '10046894'))) + (((article_category eq '10046774') + (article_category eq '10046952')) + (article_category eq '10047062') ) -%>

<div class="listCategoryArticle" style='margin-top:15px;'>
【VBScript関連のカテゴリ】<br />
<ul>
<li><a href="http://logicalerror.seesaa.net/category/10046946-1.html">VBS + ADO</a></li>
<li><a href="http://logicalerror.seesaa.net/category/10046812-1.html">VBS + JavaScript</a></li>
<li><a href="http://logicalerror.seesaa.net/category/10047034-1.html">VBS + Shell</a></li>
<li><a href="http://logicalerror.seesaa.net/category/10046894-1.html">VBS + WMI</a></li>
<li><a href="http://logicalerror.seesaa.net/category/10046774-1.html">VBS + インターネット</a>
<li><a href="http://logicalerror.seesaa.net/category/10046952-1.html">VBS + ファイルシステム</a>
<li><a href="http://logicalerror.seesaa.net/category/10047062-1.html">VBS + 特殊オブジェクト</a>
</ul>
</div>

<% /if -%>





Seesaa独自タグ簡易リファレンス

タグ:Seesaa
posted by lightbox at 2014-09-27 15:14 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする

2014年09月18日


Seesaaブログの page_name 変数の3つ以上の OR 条件の記述方法

他の変数での動作は確認していませんが、() による優先順位の指定によって常に、二つの条件( ここでは、+ 演算子の左右 )が確定してから他の比較を行うようにしないと、ページがエラーとなって構成されません。

何度か試すとうまくいくと思います。これによって、アーカイブとカテゴリとタグページだけ何かコンテンツを追加するという事が可能になります。

((A)+(B)) + ((C)+(D))
は OK のようです。

※ (A) は、page_name eq 'category' というように一つの条件式を表わすので、
※ () で優先順位を明示してやる必要があります。

page_name は、トップページ、単独記事、アーカイブ、カテゴリ、タグというそれぞれの記事の表示方法の特性にあわせてカスタマイズする為の重要な変数なので、OR 条件は記述を簡潔にする為に必要です。

※ AND 条件は、if: を入れ子にすれば指定できます
<% if: (( page_name eq 'category' ) + ( page_name eq 'archive' )) + ( page_name eq 'tag' ) -%>

<b>SQLの窓</b>

<% /if -%>

関連する記事

Seesaaブログの記事のカテゴリ番号毎に関連するリンクを付加する( OR 条件による複数カテゴリを一括 )




Seesaa独自タグ簡易リファレンス

タグ:Seesaa
posted by lightbox at 2014-09-18 20:58 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする

Seesaaブログ : 特定のカテゴリに属する記事のみ特定部分に HTML を付加する方法



これは、コンテンツの「記事」の コンテンツHTML編集で行います。記事本文は <% article.entire_body | bodyfilter(article_info,blog) %> というように書かれているので変更できませんが、その前後であれは付加する事ができます。

カテゴリ番号もたしか使えたはずですが、以前使っていて後からメンテナンスするのにどのカテゴリか解りづらいという欠点があったのでこちらがおすすめです。

但し、カテゴリ名を変更すると動かなくなるので注意して下さい。
<% if:article_category.name eq 'カテゴリ名' -%>

特定カテゴリで表示したい HTML の記述

<% /if -%>



※ カテゴリ番号の場合はこんな感じです

<% if:article.category eq '7154748' -%>

特定カテゴリで表示したい HTML の記述

<% /if -%>



※ この記事にも、カテゴリ特有のリンクを付加しています

Seesaa独自タグ簡易リファレンス

posted by lightbox at 2014-09-18 20:28 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする

2014年09月11日


Seesaa のデザインHTMLの中の、<% if:page_name eq 'tag' -%> セクションでは TAG ページ専用のコンテンツを書く事ができます。



TAG ページは、デフォルトではブログ内への特定のリンクと、サイドバーのコンテンツが表示されるだけなので、表示されているページの価値は殆ど無く、Google の言葉を借りれば『コンテンツがありません』となります。

これは、Seesaa および さくらインターネットのブログシステムを利用している上では宿命となります。

ですが、デザインHTML の中を見ると、page_name と言う Seesaa のテンプレート内で有効な変数を使い、個別の表示を行っている事が解ります。

ですから、この条件の成り立っている範囲になんらかのコンテンツを表示すれば、ユーザはリンク以外にも情報を得る事ができます。ただ、どのタグリンクからページ遷移しても、おなじ内容になるので、ブログの紹介やテーマやプロフィールなどに使うのがいいでしょう。
<% if:page_name eq 'tag' -%>

<div class="text">
コンテンツを作成する
</div>

<div class="tag">

<script type="text/javascript" language="javascript" src="<% site_info.blog_url %>/js/tag_cloud.js"></script>
<div id="tag_cloud"><% loop:list_tags -%><a href="<% blog.tag_url(tag) %>" class="_tag" title="<% tag.word | html %>/<% count %>"><% tag.word | html %></a> <% /loop -%></div>
<script type="text/javascript" language="javascript"><!--
tag_cloud("tag_cloud");
--></script>
<br />
<% if:tag %><div class="tag-title">タグ&nbsp;/&nbsp;<% tag.word | html %></div><% /if -%>
<br />
<% loop:list_service -%>
<div class="tag-body">
<div class="tag-service"><% tag_service.title %></div>
<div class="tag-search"><a href="<% tag_service.page_url(tag) %>" target="_blank">'<% tag.word %>'&nbsp;で全体を検索する</a></div>
<% if:tag_service.service_key eq 'articles' -%>
<% loop:list_data -%>
<div class="tag-article">
<div class="tag-article-title"><a href="<% article.page_url %>"><% article.subject %></a>&nbsp;<span class="tag-article-posted">[<% article.createstamp | date_format("%Y/%m/%d %H:%M") %>]</span></div>
<!--<div class="tag-article-summary"><% article.entire_body | text_summary(240) | tag_strip %></div>-->
</div>
<% /loop -%>
<% /if -%>
<% if:tag_service.service_key eq 'photos' -%>
<% loop:list_data -%>
<div class="tag-photos">
<% thumbnail.fix_aspect(132) # サムネイルの長辺を132で固定。固定したくない場合は削除。 -%>
<table>
<tr>
<td height="140" valign="bottom"><a href="<% photo.page_url %>" target="_blank"><img src="<% thumbnail.page_url %>" border="0" width="<% thumbnail.width %>" height="<% thumbnail.height %>" /></a></td>
</tr>
</table>
<div class="tag-photos-title"><a href="<% photo.page_url %>" target="_blank"><% photo.title | text_summary(10) %></a><br />
<% if:photo_info -%>
サイズ:<% photo_info.width %>×<% photo_info.height %><br />
<% if:photo_info.size %>容量:<% photo_info.size | filesize %><% /if %>
<% /if -%>
</div>
</div>
<% /loop -%>
<% /if -%>
<% if:tag_service.service_key eq 'audios' -%>
<% loop:list_data -%>
<div class="tag-audios">
<div class="tag-audios-title"><a href="/pages/user/upload/<% audio.page_url %>" onclick="window.open('/pages/user/upload/<% audio.page_url %>','popup','width=490,height=320,scrollbars=no,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" target="_blank"><% audio.title | text_summary(40) %></a>&nbsp;
<span class="tag-audios-posted"><% if:audio_info -%><% if:audio_info.author %>by <% audio_info.author %>&nbsp;&nbsp;<% /if %><% if:audio_info.duration %><% audio_info.duration | hms %>&nbsp;&nbsp;<% /if %><% if:audio_info.size %><% audio.size | filesize %>&nbsp;&nbsp;<% /if %><% /if -%></span></div>
</div>
<% /loop -%>
<% /if -%>
<% if:tag_service.service_key eq 'videos' -%>
<% loop:list_data -%>
<div class="tag-videos">
<table>
<tr>
<td height="140" valign="bottom"><div class="tag-videos-title"><a href="/pages/user/upload/<% video.page_url %>" onclick="window.open('/pages/user/upload/<% video.page_url %>','popup','width=480,height=550,scrollbars=no,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" target="_blank"><img src="<% thumbnail.page_url %>" width="132" border="0" /></a></div></td>
</tr>
</table>
<div class="tag-videos-title"><a href="/pages/user/upload/<% video.page_url %>" onclick="window.open('/pages/user/upload/<% video.page_url %>','popup','width=480,height=550,scrollbars=no,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" target="_blank"><% video.title | text_summary(15) %></a><br />
<% if:video_info -%>
<!--<% if:video_info.author %>by <% video_info.author %><br /><% /if %>-->
時間:<% if:video_info.duration %><% video_info.duration | hms %><% /if %><br />
容量:<% video.size | filesize %><br />
<% /if -%>
</div>
</div>
<% /loop -%>
<% /if %>
<% if:tag_service.service_key eq 'files' -%>
<% loop:list_data -%>
<div class="tag-files">
<div class="tag-files-title"><a href="/pages/user/upload/<% file.page_url %>" target="_blank"><% file.title | text_summary(15) %></a></div>
</div>
<% /loop -%>
<% /if -%>
<% if:pager -%>
<div class="tag-navi">
<% if:pager.previous_page %><a href="?page=<% pager.previous_page %>"><% /if %>≪前へ<% if:pager.previous_page %></a><% /if %>&nbsp;&nbsp;<% if:pager.next_page %><a href="?page=<% pager.next_page %>"><% /if %>次へ≫<% if:pager.next_page %></a><% /if %>
</div>
<% else -%>
<div class="tag-more"><a href="<% blog.tag_url(tag, tag_service.service_key) %>">≫もっと見る</a></div>
<% /if -%>
</div>
<% /loop -%>
</div>

<div class="text">
コンテンツを作成する
</div>

<% /if -%>

また、逆に TAG ページに表示したく無い内容は以下のように記述します
<% if:page_name ne 'tag' -%>

ここは、TAG ページに表示したくない内容

<% /if -%>




Seesaa独自タグ簡易リファレンス

posted by lightbox at 2014-09-11 14:11 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする

2014年09月04日


Seesaa のスマホページで使う、記事単位のPCページへの移動

何もしなくても、最初から PC ページへの移動ができるようになっていますが、Seesaa のコードでは、そのブログのトップページにしか移動しないので、新たに以下のようなコードを貼り付けるといいです。

※ 場所は、『ブログ説明』の『挿入テキスト(下部)』
<a href="javascript:document.cookie='force_pc=1; max-age=15768000; path=/'; document.cookie='force_sp=0; max-age=15768000; path=/'; document.location=document.location.pathname+'?'+(new Date()).getTime();">PCページのこの記事へ移動</a>
変更しているのは、document.location へセットしている内容で、document.location.pathname をセットして、現在の URL を再セットします。スマホページからスマホページですが、クッキーの正しい設定が事前に行われているので正しく動作しています。

(new Date()).getTime() を付加しているのは、ブラウザのキャッシュ制御がバグっていても正しく動作するように、毎回 URL を変更する為の追加文字列です。

戻す時の為に、PC ページ側での設定

PC 側でもそのままでは、トップページにしか戻らないので、以下のような処理を PC 用の HTML に書き込んでいます。
<script type="text/javascript">
var userAgent = window.navigator.userAgent.toLowerCase();
if (userAgent.indexOf("iphone") > -1 || userAgent.indexOf("android") > -1 ) {
	str="";
	str+="<style type="text/css"> \n";
	str+=" \n";
	str+="#iphone-link { \n";
	str+="	display:none!important; \n";
	str+="} \n";
	str+="<span id="iphone-link2" style="width: 90%;display: block; padding-top: 3px; text-align: right; "><a href="javascript:document.cookie='force_pc=0; max-age=15768000; path=/'; document.cookie='force_sp=1; max-age=15768000; path=/'; document.location=document.location.pathname+'?'+(new Date()).getTime();">スマホページ(この記事)へ戻る</a></span> ";
	document.write(str);
}
</script>

#iphone-link で、元々のリンクを非表示にして、新しいリンクを作成しています。
※ 場所は、body の先頭です。



Seesaa独自タグ簡易リファレンス

タグ:Seesaa
posted by lightbox at 2014-09-04 02:55 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする

2014年08月27日


Seesaaの、Google+ とのプロフィール連携について

Googleプロフィールをブログと連携すると、Googleの検索結果などでこのブログの著者情報として表示できる場合があります。ブログのHTMLを編集している場合には、デフォルトHTMLにする、あるいは<% blog.profile_sns_tag %>タグを手動でHTMLに追加するまで有効になりません。連携する操作手順については、こちらでご確認ください
著者情報は、検索結果のタイトルの下の詳細部分の最初に『著者: night walker Lightbox』というような形で表示されると思います。(こちらのブログでは以前から独自に設定を行っているので表示されています) 『ブログのHTMLを編集している場合には』というのは、独自に変更を加えている場合は反映されないので、<% blog.profile_sns_tag %> タグを意図的にページのヘッダー部分に設定する必要があります。 このタグは、展開されると以下のようになります。 ※ 赤い枠内が、Seesaa のタグで展開されたもので、緑枠は以前から独自で設定していたものです。 Google+ 側の設定
1.Google+にログインし、プロフィールページに移動する。
2.プロフィールページの中にある「基本情報」をクリックし、さらにその中の項目「リンク」の編集をクリックする。
3.項目「寄稿先」のカスタムリンクを追加をクリックし、連携させたいブログのURLを入力し、保存をクリックする。
Seesaa のマニュアルにはこう書かれています。「寄稿先」は以下のようになります( 基本情報タブです ) Seesaa 側の設定 一応以下のようになればいいです。 補足情報 『Seesaa 側の設定』は、Seesaa として設定が正しいかどうかの確認処理であると思います。無くても動作するかもしれません。実際、独自に行った設定は、「寄稿先」では無く、『リンク』でなされていましたし、本来連携の確認処理というのはありません。 そもそも、Seesaa の説明でも『表示できる場合があります』とあいまいな表現になっています。これらに関係する情報は、以前アイコンが表示されていた時期にたくさん情報が発信されています。Google 検索で、最新の Googleの都合等調べてみるのもいいかと思います。

Seesaa独自タグ簡易リファレンス

タグ:Seesaa google
posted by lightbox at 2014-08-27 09:57 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり