XHTML 1.1文档中的嵌套超链接

时间:2010-04-01 21:26:27

标签: php xhtml hyperlink

我正在为WordPress做一个简单的小部件,它从Twitter提供的RSS提要中获取最新的推文。

此小部件解析在推文上发布的任何链接,它还解析提及(即:@username)和趋势主题(即:#nowplaying)。对于这3种情况,它会创建指向某些Twitter功能的链接。

例如:

"Hi @UserA, check out the song Foo from FooBar that I'm listening,
 it's awesome. #nowplaying"

它将解析为:

Hi <a href="http://twitter.com/UserA">@UserA</a>, check out the song
Foo from FooBar that I'm listening, it's awesome.
<a href="http://twitter.com/#search?q=nowplaying">#nowplaying</a>

现在我需要添加一条到整个消息的全局链接,如下所示:

<a href="http://twitter.com/UserA/statuses/1234567890">
Hi <a href="http://twitter.com/UserA">@UserA</a>, check out the song
Foo from FooBar that I'm listening, it's awesome.
<a href="http://twitter.com/#search?q=nowplaying">#nowplaying</a>
</a>

但是这段代码没有验证,它仍无法正常工作(浏览器似乎并不知道如何处理它)。

有任何建议我如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

不做。

标签不能嵌套。你可以在链接到原始状态的状态的末尾添加一个链接标记,或者你可以做一些额外的解析,并发布如下的推文:

<a href="http://twitter.com/UserA/statuses/1234567890">
Hi </a><a href="http://twitter.com/UserA">@UserA</a>, <a href="http://twitter.com/UserA/statuses/1234567890">check out the song
Foo from FooBar that I'm listening, it's awesome.</a>
<a href="http://twitter.com/#search?q=nowplaying">#nowplaying</a>

这样,每个不是链接的单词都会链接到原始状态,但我不知道这是否是您的最佳选择。

答案 1 :(得分:2)

我将JavaScript用于全局链接。如果您在消息之前有子弹或其他内容,请将链接放在那里并在单击消息时使用JavaScript激活它(该链接将作为没有JS支持的用户的链接)

如果你需要在没有JS的情况下点击整个东西,你需要将它分成多个链接,这些链接涵盖了内容链接之间的内容。

答案 2 :(得分:0)

设置推文日期的链接,并将其放在文本之前或之后。