因此,我们网站上的公告功能默认使用以下代码显示"阅读更多"链接(部分):
<cfif announcement.recordCount gt 0>
<cfloop query="announcement">
<cfoutput>
<td colspan="2"><span class="left">#teaser_text# <a href="/announcements/?id=#id#" title="Read more...">Read more »</a>
</cfoutput>
</cfloop>
Run Code Online (Sandbox Code Playgroud)
(注意,之前有一个cfquery语句,我在代码中为了简洁而将其排除在外)
我想在这里做的是获取"阅读更多"链接,只有在#teaser_text#中没有链接时才显示#teaser_text#,这样我可以根据需要手动添加链接并删除自动生成的链接.
有关cfif语句的任何想法会这样做吗?
谢谢.
编辑:澄清一下,如果在teaser_text中找到任何链接,我想删除"阅读更多".
如果在teaser_text中找不到超链接,则仅显示读取更多链接,此检查可能足够好:
<cfif NOT refindNoCase('<a\s[^>]*?\bhref\s*=',teaser_text) >
<a href="/announcements/?id=#id#" title="Read more...">Read more »</a>
</cfif>
Run Code Online (Sandbox Code Playgroud)
如果要检查URL而不是超链接,则需要更加花哨.
您还需要记住,这是将teaser_text视为文本(而非HTML),因此注释掉链接不会阻止它被发现(如果重要的话,您需要调查HTML DOM解析器;并且没有任何用于CF所以你需要看看Java的).
| 归档时间: |
|
| 查看次数: |
350 次 |
| 最近记录: |