wp_get_archives链接到该特定存档页面

时间:2015-12-16 12:31:23

标签: wordpress

在我的页面右侧设置存档列表,设计在每个项目后面都有一个“查看”按钮。

我正在尝试将该视图按钮链接到存档月份页面。

看着用after做一些事情并在视图按钮中添加一个href =“”但是不确定要引用什么来实现它。

我目前的代码如下:

                <?php
                // Get Archives'
                $args = array (
                    'type'  => 'monthly',
                    'order' => 'DESC',
                    'after' => '<div class="pull-right"><a class="view" href="#">View</a></div>',
                    'limit' => '6'
                );
                $archives = wp_get_archives( $args );
                ?>

正如您所看到的,数组中的'after'参数是我尝试添加href的位置。

希望这是有道理的。

谢谢!

1 个答案:

答案 0 :(得分:2)

关于wp_get_archives的一些事情:

  • 除非您将echo参数强制为0,否则它不会返回任何内容 - 否则将调用该函数将导致打印归档链接。

  • after参数取决于format参数 - 仅在使用&#34; html&#34;时使用(默认 - 列表模式)或&#34;自定义&#34;格式。它的作用是在 链接后显示您作为参数 传递的值。所以你不需要引用里面的链接。将其与before参数结合使用可以实现您想要执行的操作。

  • 您并非真的需要将type设置为monthly,因为它是此参数的默认值。 order参数也是如此,默认为allready DESC

所以有效的电话会是:

wp_get_archives(array(
    'format' => 'custom',
    'before' => '<div class="pull-right">',
    'after'  => '</div>',
    'limit'  => 6
));

您可能会注意到它没有准确输出您要执行的操作,因为它错过了您链接上的class view。您需要在get_archives_link上添加一个过滤器才能实现此目的(这将在您的主题 functions.php 中进行):

add_filter('get_archives_link', 'get_archive_links_css_class' );
function get_archive_links_css_class($link) {
    return str_replace('href', 'class="view" href', $link);
}

这将在href属性之前添加该类。