0

首先,我不是经验丰富的开发人员。事实上,我所做的大部分工作都建立在我在 Stackoverflow 上发现的 hack 以及我通过反复试验学到的东西之上——你可能会在前面看到一些丑陋的代码。

我想做的是为访问者创建一种简单的方式来分享社交媒体的链接:Twitter、Facebook、电子邮件。

这是我现在拥有的代码片段:

        echo ('Share: <a href="http://www.facebook.com/sharer.php?u=');
        echo urlencode(the_permalink());
        echo ('&t=');
        echo themeprefix_social_title( get_the_title() );
        echo ('">Facebook</a> &#183; ');
        echo ('<a href="http://twitter.com/share?text=');
        echo the_title();
        echo ('&url=');
        echo urlencode(the_permalink());
        echo ('&via=REDCAT&related=');
        echo urlencode("REDACT");
        echo ('" title="Share on Twitter" rel="nofollow" target="_blank">Twitter</a> &#183; ');
        echo do_shortcode('[cpss]');

themeprefix_social_title是我在 Stackoverflow 上找到的用于处理标题中的 & 符号的函数:

function themeprefix_social_title( $title ) { $title = html_entity_decode( $title ); $title = urlencode( $title ); return $title; }

它可以很好地处理 & 符号,但它完全混淆了引号和双引号,因此它们呈现如下(对于 Twitter):

为什么它很难(“2”和“1”之间的空格,否则这里会正确呈现)

所以现在我发现自己陷入了困境:如果我不使用该功能,带有&符号的标题会在它出现的位置被剪切,所以对于这样的标题:

大与小与红

我只会得到:

但是,如果我确实使用该函数,我的引号和双引号就会变得混乱。

4

0 回答 0