トップ(メインページ)に、記事一覧(10件ほど)表示させています。


各記事「タイトルをクリック」すると、その記事詳細にリンクになっていますが、
これが、別ページ or 他サイトへのリンク、またPDFへのリンク、と色々変わる場合、どのようにすればいいでしょう?
それ+できればPDFへのリンクの際、PDFのアイコンを付けたいのです。
(PDFアイコンは、ブログに限らずウェブページなどでも使用したいので、~pdfで認識できて自動的にアイコンがつけられればと思っています)
また、ブログ、ウェブページ作成画面で、URL指定などのフィールドってありませんが、どのように作成すればいいですか?

以下の記述を使ったり、こう書くという解説もお願いします。URLのみじゃ分からないこともあるので。。

↓はトップの記事一覧10件表示の箇所です。

<mt:Entries lastn="10" category="新着情報">
<$mtEntryDate format="%Y.%m.%d"$>
<span><a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a></span>
<span class="icn_new"><$MTEntryDate format="%Y:%m:%d:%H:%M:%S"$></span>
</mt:Entries>

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2010/07/14 15:55:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:kaz No.3

回答回数200ベストアンサー獲得回数42

ポイント30pt

> 記事作成時にURL先がある時は別ページに、というようにしたいのですが、(項目はカスタムフィールドで増やすとして・・)


<span><a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a></span>

カスタムフィールドを利用するのであれば、質問分の上記の部分に分岐を持たせ、

リンク用のカスタムフィールドに値があれば、そちらをリンクとして表示させ、

無い場合は記事タイトルを表示させると良いと思います。


テンプレートタグ「sp_title」のカスタムフィールドをリンク用のタイトル、「sp_url」をリンク用 URL にする場合。

<span>
<MTIfNonEmpty tag="sp_title">
<a href="<$mt:sp_link$>"><$mt:sp_title$></a>
<MTElse>
<a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a>
</MTIfNonEmpty>
</span>
id:sakuma1

おお、、やってみたらできました・・・! 正にこれです!!

MT始めてから日が浅いもので、、途中までこんなことすればできるのでは!とまではいきつくのですが、

どのようなタグを書いたらいいかが分からなくって、行き詰まる⇒本やサイトをみる、という感じです。

タグの本は買って持っていて、分からないものはそれで試行錯誤して使ってみてるのですが、

どうも思ったものにならなかったりして; 中々難しいですね。

実は前の回答でPDFアイコンがうまく入ったと思ったのですが、

PDFマークとNEWマークどがちらかしか今表示できないようで、

IE6ではNEW!!のみ、Firefox&OperaはPDFマークのみ表示されてしまうのです。

どちらも表示することってできませんでしょうか?書き方が悪いのでしょうか。。

<script type~>は<body>の直前に書いています。</p> <p>↓newアイコンは以下を参考にしています。</p> <p><a href="http://koyo-marlins.biz/blog/2007/10/new.html" target="_blank">http://koyo-marlins.biz/blog/2007/10/new.html</a></p> <p>●ヘッダー</p> <p><!-- icn_new --></p> <p><script type="text/javascript"></p> <p>//<![CDATA[</p> <p>displayNewMark();</p> <p>//]]></p> <p></script>

<script type="text/javascript"></p> <p>$(function(){</p> <p>    $("a[href$='pdf']").addPdfIcon("before");</p> <p> //$("a[href$='pdf']").addPdfIcon("after");</p> <p>});</p> <p></script>


↓Newマーク表示箇所

<$MTEntryDate format="%Y:%m:%d:%H:%M:%S"$>

●newmark.js (略してます)

// display content

var content = 'NEW!!';

spans[i].getAttribute('className') == 'icn_new') {

●css

newマーク */

span.icn_new {

display: none;

color: red;

font-weight: bold;

}

2010/07/09 18:48:30

その他の回答3件)

id:koriki-WeKan No.1

回答回数342ベストアンサー獲得回数20

ポイント30pt

MovableTypeを使っているという前提か?(前提条件を明示してほしい)


>別ページ or 他サイトへのリンク、またPDFへのリンク

HTMLのAタグを使って書くしかない。

http://www.htmq.com/html/a.shtml


>PDFへのリンクの際、PDFのアイコンを付けたいのです

フリーのPDFアイコンを探してきて、HTMLのIMGタグで書く。

id:sakuma1

情報が不足しておりました、MovableType4.2を使用しております。

別ページリンク、PDFリンクについてですが、

aタグは分かるのですが、、詳しく書くと以下のようにしたいのです。

MTでの「ブログ作成の編集画面で」ブログを作る際に、別ページへリンク、PDFへリンクと指定できないでしょうか?

ニュースなので、以下のような感じです。

http://canon.jp/

例えばですが 右側の「キャノンからのお知らせ」で、

2010年6月29日

男子プロゴルフトーナメント「キヤノンオープン」の開催について

は、ニュース記事詳細へリンクしているとして、その下の、

2010年6月28日

キヤノン株式会社によるキヤノンマシナリー株式会社の完全子会社化に関する株式交換契約締結のお知らせ

は別のページへリンクさせています。

こんなかんじで、タイトルをクリックして、別ページへリンクさせたいですが、

ニュースなので、mtのテンプレートで書いて、、一つ一つaタグでリンク先を指定・・とはいきません。。(更新者が増やしていくものなので)

ですので、記事作成時にURL先がある時は別ページに、というようにしたいのですが、(項目はカスタムフィールドで増やすとして・・)

しかしその記述方法がわかりません。。

もしくはもっと簡単にできるのかもしれませんが・・今はそれしか思いつかないのです;

本文にURLを書くことはできますが、それだと、「タイトルを押した際に」、別ページへリンクができないのです。

みなさんどうされているのでしょう?

2010/07/07 18:54:48
id:kaz No.2

回答回数200ベストアンサー獲得回数42

ポイント30pt

■別のページやサイト・PDF などへのリンク

手書きするしかありません


■PDFへのリンクの際、(自動的に)PDFのアイコンを付けたい

拡張子を基準に、自動的にアイコンをつける場合、

jQuery などを利用して条件に合致した a タグにクラスを付加し、

CSS で背景画像を指定するのが良さそうです。


jQueryを使ったPDFアイコン付加プラグイン

http://www.nk0206.com/life/2009/03/jquerypdf.html

id:sakuma1

以前の質問にも回答いただきありがとうございます。

最近はてなを使いだしたのところで、、ポイントの付け方をみてまた付けさせて頂きます。

>手書きするしかありません

何か方法があると思うのですが、、私の説明が不十分なのもあるかと思いますので、

上の回答者様の所に追記しております。

>jQueryを使ったPDFアイコン付加プラグイン

さっそく試してみました!~.pdfのリンク先に見事につきました、、感激です。

ありがとうございました!!

2010/07/07 19:46:15
id:kaz No.3

回答回数200ベストアンサー獲得回数42ここでベストアンサー

ポイント30pt

> 記事作成時にURL先がある時は別ページに、というようにしたいのですが、(項目はカスタムフィールドで増やすとして・・)


<span><a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a></span>

カスタムフィールドを利用するのであれば、質問分の上記の部分に分岐を持たせ、

リンク用のカスタムフィールドに値があれば、そちらをリンクとして表示させ、

無い場合は記事タイトルを表示させると良いと思います。


テンプレートタグ「sp_title」のカスタムフィールドをリンク用のタイトル、「sp_url」をリンク用 URL にする場合。

<span>
<MTIfNonEmpty tag="sp_title">
<a href="<$mt:sp_link$>"><$mt:sp_title$></a>
<MTElse>
<a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a>
</MTIfNonEmpty>
</span>
id:sakuma1

おお、、やってみたらできました・・・! 正にこれです!!

MT始めてから日が浅いもので、、途中までこんなことすればできるのでは!とまではいきつくのですが、

どのようなタグを書いたらいいかが分からなくって、行き詰まる⇒本やサイトをみる、という感じです。

タグの本は買って持っていて、分からないものはそれで試行錯誤して使ってみてるのですが、

どうも思ったものにならなかったりして; 中々難しいですね。

実は前の回答でPDFアイコンがうまく入ったと思ったのですが、

PDFマークとNEWマークどがちらかしか今表示できないようで、

IE6ではNEW!!のみ、Firefox&OperaはPDFマークのみ表示されてしまうのです。

どちらも表示することってできませんでしょうか?書き方が悪いのでしょうか。。

<script type~>は<body>の直前に書いています。</p> <p>↓newアイコンは以下を参考にしています。</p> <p><a href="http://koyo-marlins.biz/blog/2007/10/new.html" target="_blank">http://koyo-marlins.biz/blog/2007/10/new.html</a></p> <p>●ヘッダー</p> <p><!-- icn_new --></p> <p><script type="text/javascript"></p> <p>//<![CDATA[</p> <p>displayNewMark();</p> <p>//]]></p> <p></script>

<script type="text/javascript"></p> <p>$(function(){</p> <p>    $("a[href$='pdf']").addPdfIcon("before");</p> <p> //$("a[href$='pdf']").addPdfIcon("after");</p> <p>});</p> <p></script>


↓Newマーク表示箇所

<$MTEntryDate format="%Y:%m:%d:%H:%M:%S"$>

●newmark.js (略してます)

// display content

var content = 'NEW!!';

spans[i].getAttribute('className') == 'icn_new') {

●css

newマーク */

span.icn_new {

display: none;

color: red;

font-weight: bold;

}

2010/07/09 18:48:30
id:fu2020 No.4

回答回数1ベストアンサー獲得回数0

PDF リンク.....

  • id:FU-GA
    穹ちゃん 2010/07/07 22:14:41
    PDF
  • id:sakuma1
    3回答者様へ
    newアイコンは以下を参考にしていますの下がおかしくなってますね・・;
    おかしくなってるので、再度こちらに書きます。



    参考URLはこちらです。
    http://www.koikikukan.com/archives/2006/02/20-235151.php

    ●ヘッダー

    <!-- icn_new -->
    <script type="text/javascript">
    //<![CDATA[
    displayNewMark();
    //]]>
    </script>

    <script type="text/javascript">
    $(function(){
        $("a[href$='pdf']").addPdfIcon("before");
    //$("a[href$='pdf']").addPdfIcon("after");
    });
    </script>


    ↓Newマーク表示箇所
    <span class="icn_new"><$MTEntryDate format="%Y:%m:%d:%H:%M:%S"$></span>

    ●newmark.js

    // display content
    var content = 'NEW!!';



    ●css
    newマーク */
    span.icn_new {
    display: none;
    color: red;
    font-weight: bold;
    }

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません