カスタムフィールドに入力があったら表示

すごく、今さらな感じのエントリーですが、
あれ、どうだっけ。。。となることが多いので覚書

カスタムフィールドに入力があったら表示
なければブロックごと非表示

<mt:If tag="Entrymarumaru">
<img src="./img/marumaru.gif" alt="まるまる" />
<p><$mt:Entrymarumaru$></p></mt:If>

スマホ用ページ作成 覚書その1

MTに限定した話ではないですが、覚書ということで。

近年、スマホの爆発的な売れ行きは、はたから見ててもすごいですよね。
って、はたからのん気に驚いていたけど、そんな悠長なこと言ってられなくなったのは、会社でもスマホ対応することになり、担当になってしまった~。。

スマホでGoogle検索などすると、スマホページとPCページとふたつあっても、今はPCページの方が上がってくる場合が多いのではないでしょうか。

そのうち、スマホが追い抜くのか。
それとも、検索エンジンが何らかの対応するのか。
そりゃ後者は必須よね。PCでスマホページが表示されたら、ビックリしますよ。素人さんは。
画像とか、%表示なので。

ま、それはそのうちという話で。


振り分けの、スマートなJavaScriptを見つけたので、手始めと言う事でご紹介しましょう。

 <script type="text/javascript">
if ((   navigator.userAgent.indexOf('iPhone') > 0 &&
        navigator.userAgent.indexOf('iPad') == -1) ||
        navigator.userAgent.indexOf('iPod') > 0 ||
        navigator.userAgent.indexOf('Android') > 0) {
        if(confirm('スマートフォン用サイトがあります。表示しますか?')) {
            location.href = 'スマホサイトのアドレス';
        }
}
 </script>

上記を<head></head>内に記述します。
PCで表示すると無視して通常に表示しますが、スマホで表示すると、ダイアログが出ます。

「スマートフォン用サイトがあります。表示しますか?」

はいを選ぶとスマホページ、いいえを選ぶとPCページを表示します。

とても、シンプルでスマートですね。


しかし。
結局PCとスマホとふたつファイルを用意しなくちゃいけないのは変わりません。
修正等、結構大変だったりしますよねん。

次回予告
レスポンシブWEBデザインに挑戦。
1つのファイルで、PC・スマホ、CSSで表示を変える方法です。
お楽しみに。

エディタプラグインCKEditerはいいゾ。

TinyMCEで emoddyを使う方法」という記事を前述しましたが、もっと良いプラグインを見つけました。


ckeditor.gif

このプラグインいろんなWEBアプリ版がでてるので、間違えないようにしてください。

実は、仕事で別サーバのデータ引っ越しがあり、MTOS4からMTOS5へ移行したのですが、やっぱり動かなくなるプラグイン続出で。。。

TinyMCEも不具合がでました。


CKEditerは絵文字も搭載してるので、emoddyプラグインの必要もなくなって、シンプルな使用感がうれしいです。


別サーバのブログ記事をRSSで取得。表示する

Aサーバのページに、BサーバのMTのブログ記事をリスト表示させたいと思い、こちらのプログラムを使いました。

PHP で使える RSS パーサー

(1)  Aサーバ のRSS表示させたいページ と同階層に、上記ダウンロードしたファイルを、設定してアップロードする。
設定方法は上記ページをみてください。結構カンタンです。

(2) Aサーバ のRSS表示させたいページの、記述したい部分に下記記述を追加します。
※最初と最後の<>は2バイト文字なので、半角英数に変換して使ってください。

<?php
 require_once 'rss_fetch.inc';
 $url = 'http:// Bサーバ のブログのatom.xmlへのリンク';
 $rss = fetch_rss($url);
 $title = $rss->channel['title'];
 $title = mb_convert_encoding($title, "SJIS", "auto");
 echo "<h2>$title</h2>\n";
 echo "<ul>\n";
 foreach ($rss->items as $item ) {
 $title = $item[title];
 $title = mb_convert_encoding($title, "SJIS", "auto");
 $url   = $item[link];
 echo "<li><a href=\"$url\">$title</a></li>\n";
 }
 echo "</ul>\n";
 ?>

(3) Bサーバ のMTの管理画面「デザイン」の最新記事のフィードのatom.xmlを見てみます。
「<title><$mt:EntryTitle remove_html="1" encode_xml="1"$></title>」
という記述があります。

この<title>○×○×○</title>の中身を、(2)のphpプログラム内上から5行目
「$title = $rss->channel['title'];」で引っ張ってくる命令をだしているわけです。

ではたとえばタイトルじゃなくて、キーワードをひっぱてきてリスト表示したい場合は
 Bサーバ のブログのatom.xmlファイル内に以下の記述を入れておきます。

<Keywords><$MTEntryKeywords$></Keywords>

※最初と最後の<>は2バイト文字なので、半角英数に変換して使ってください。

次に(2)のPHP内のtitleのところを全部Keywordsに変えます。これでばっちり。

twitterとFacebookとブログの連動

今までブログ記事をtwitterに連動させ、twitterとFacebookが連動していたため、
ブログからtwitterにわたしていた35文字の文字制限のままFacebookに連動して、なんだかよく分からないトピックになってました。

詳しく見たかったら、ツイッターを確認したのち、ブログを見ろ。みたいな。
高飛車。


なので、ブログからtwitterで完結。
ブログからFacebook完結。アプリは「My Blog Posts」を利用。
twitterとFacebookの連動を切る。
という形にしてみました。

実験的投稿でした。

<(_ _)>
1  2  3  4  5  6  7  8  9  10  11

▲トップへ戻る

* FEED


presented by 地球の名言