如何编辑Wordpress帖子的“发布到类别”部分以“链接”整个短语而不仅仅是类别?

时间:2011-05-08 06:16:51

标签: php wordpress

嘿伙计们,我有一个非常基本的问题(即使我知道标题听起来很混乱),最好解释如下。这段代码就是我目前所拥有的:

<?php if (!is_page()): ?><?php ob_start(); ?><?php printf(__('Posted to %s', 'kubrick'), get_the_category_list(', ')); ?>

生成此HTML代码:

Posted to <a href="http://www.example.com/category/" title="View all posts in Category" rel="category tag">Category</a>

正如您所看到的,该类别通过此代码“链接”,但我希望整个短语成为链接的锚文本,如下所示:

<a href="http://www.example.com/category/" title="View all posts in Category" rel="category tag">Posted to Category</a>

如何修改原始PHP代码以在超链接的锚文本中包含“发布到”文本?非常感激! :)

1 个答案:

答案 0 :(得分:0)

您可以使用get_the_category()get_category_link()功能,如下所示:

<?php
    foreach(get_the_category() as $category)
        echo '<a href="'.get_category_link($category->cat_ID).'" title="View all posts in Category" rel="category tag">Posted to '.$category->cat_name.'</a> ';
?>

但是,您可能想要考虑当帖子属于多个类别时会发生什么:您的原始代码将显示以逗号分隔的类别链接列表(例如“发布在foo,bar,qux”中),而此代码将为每个类别显示“发表于[名称]”(例如“发表于foo发表在酒吧发表于qux”)。

还应该注意的是,这个答案没有使用WordPress的__()函数来翻译适当的结果文本:您可能想考虑如何最好地支持非英语人士。

此外,没有必要在每个连续命令后关闭并重新打开PHP标记 - 只需用分号分隔它们。