﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
19135	wp_get_archives() needs a hook/filter	LeviMorrison		"I would expect that it would have one. It was proposed at one point: #2329

Consider the case where I want to add `rel=""nofollow""` to links in my archive:


{{{
function nofollow($string) {
    $dom = DOMDocument::loadXML($string);
    $list = $dom->getElementsByTagName('a');
    foreach($list as $a) {
        if (!$a->hasAttribute('rel')) {
            $a->setAttribute('rel', 'nofollow');
        }
    }
    return $dom->saveHTML();
}
ob_start();
wp_get_archives('type=monthly&limit=12');
echo nofollow(ob_get_clean());
}}}


That seems really ugly, especially since I already use the nofollow function in other places using `apply_filter`;

A more elegant way:
{{{
function wrap($string, $tag) {
    return ""<$tag>$string</$tag>"";
}
function nofollow($string) {
    $dom = DOMDocument::loadXML($string);
    $list = $dom->getElementsByTagName('a');
    foreach($list as $a) {
        if (!$a->hasAttribute('rel')) {
            $a->setAttribute('rel', 'nofollow');
        }
    }
    return $dom->saveHTML();
}
add_filter('wp_get_archives', 'wrap', 'ul');
add_filter('wp_get_archives', 'nofollow');
wp_get_archives('type=monthly&limit=12');
}}}"	enhancement	new	normal	Awaiting Review	General		normal		2nd-opinion	MZAWeb
