サポート

【解決済】オプション機能で『続きを読む』を変更する方法

藍 (2016/06/21 21:36)

設置URL : http://xxx.jp/

サイトにフィルタリングをかけているのでダミーで失礼います。
エントリーやページで『続きを読む』機能がありますが、この『続きを読む』という記述とオプションを使って変更できるようにしたいです。

<!--{if $entry_texts[$entry.id].more}-->
					
<!--{if $page_associate.option.continue == ''}-->
<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">続きを読む</a></p>
<!--{elseif $page_associate.option.continue != ''}-->
<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">{$page_associate.option.continue}</p>
<!--{else}-->
<!--{/if}-->

<!--{/if}-->

上記のとおり記述してみたのですが、うまくいきません。

『続きを読む』文字を変更(id=continue)⇒一行入力オプションを利用
オプションが空欄の場合『続きを読む』、空欄でない場合オプション入力情報を表示。
このようにしたいのですが、どこが間違っているでしょうか……。
お力添えいただけますと幸いです。

ccc (2016/06/22 06:21)

URL : http://cccabinet.jpn.org/

恐らく

$page_associate.option.continue

ではなく、

$entry_associate.option.continue

かと思います(entryのところがpageになってます)。

藍 (2016/06/22 11:08)

URL : http://xxx.jp/

ccc様

ご回答ありがとうございます。
以下のように修正してみましたが、変化がありません……。

<!--{if $entry_texts[$entry.id].more}-->
					
<!--{if $entry_associate.option.continue == ''}-->
<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">続きを読む</a></p>
<!--{elseif $entry_associate.option.continue != ''}-->
<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">{$entry_associate.option.continue}</p>
<!--{else}-->
<!--{/if}-->

<!--{/if}-->

ミツ (2016/06/22 13:51)

URL : http://32877.xii.jp

こんにちは。

デフォルト画面(freo/index.php)
エントリー画面(freo/index.php/entry)
カテゴリー画面(freo/index.php/category/カテゴリーID)
の場合は、

<!--{if $entry_texts[$entry.id].more}-->
	<!--{if !$entry_associates[$entry.id].option.continue}-->
		<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">続きを読む</a></p>
	<!--{else}-->
		<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">{$entry_associates[$entry.id].option.continue}</p>
	<!--{/if}-->
<!--{/if}-->

VIEW画面(freo/index.php/view/エントリーID)の場合は

<!--{if $entry_text.more}-->
	<!--{if !$entry_associate.option.continue}-->
		<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">続きを読む</a></p>
	<!--{else}-->
		<p><a href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}?continue=1#continue" title="No.{$entry.id}の続き">{$entry_associate.option.continue}</p>
	<!--{/if}-->
<!--{/if}-->

でお試し下さい。

【参考URL】
【freoTIPS】【freo変数一覧】エントリーの情報を表示する方法(VIEW画面)
http://32877.xii.jp/index.php/view/305
【freoTIPS】【freo変数一覧】エントリーの情報を一覧で表示する方法(デフォルト・エントリー・カテゴリー画面)
http://32877.xii.jp/index.php/view/299

藍 (2016/06/22 13:57)

>ミツさん
できました!空欄の場合~という記述がいらなかったのですね……。
助かりました。ありがとうございました!

ミツ (2016/06/22 17:17)

URL : http://32877.xii.jp

解決済みのところ水を差して申し訳ありません。

>空欄の場合~という記述がいらなかったのですね……。

というよりも、

エントリー一覧内で特定のエントリーIDのエントリーのオプションの内容を表示したいのに、エントリーIDを特定していなかったことが原因です。

エントリー一覧表示時(デフォルト・エントリー・カテゴリー画面の場合)は、

誤:$entry_associate.option.continue
正:$entry_associates[$entry.id].option.continue

上記のように、$entryassociates配列でエントリーIDを指定してオプションを取得してください。

VIEW画面では、既にエントリーIDを特定しているので、[$entry_associate.option.オプションID]と記載すれば、オプションの内容を取得できます。

返信

  • この記事に返信します。
  • 返信の際は、設置URL以外の項目は入力必須です。
投稿フォーム
名前
設置URL
本文(本文の装飾について
編集キー(投稿した記事を編集する際に使用します。)
投稿キー(スパム対策に、投稿キー を半角で入力してください。)