What theme are you using? Where did you download it from?
Please read the entire post. I use a custom theme
Then I can only assume that your custom theme is calling the tag cloud in a non standard way. If the default output is not what you want, you could consider extending the default Tag Widget in your theme.
Don’t assume, read…
I told you in the post that I use the widget area in the WordPress admin to add the widget. So I use a standard way to publish the tag Cloud.
As I mentioned before I tried the twentysixteen theme and have the same problem here.
Thnx for your help though…
Hi
I noticed the same thing in my own custom theme after updating to WP 4.4.
All the wrappers / containers around the tag cloud appear to have disappeared breaking the styling.
However I have a function in functions.php that reduced the number of tags shown in certain categories. Removing this appears to fix the issue (and my tags are once again wrapped in appropriate divs and therefore styled correctly with CSS), although I’ve now lost the control over how many tags are displayed in certain places.
I’ve not looked into why this happens yet as this fix will do me for now. When I have time I’ll look a little deeper.
Below is the code I’ve commented out in my functions.php. I originally added this myself, so unlikely to be in your functions.php, but the point is that I’ve tried to modify the tag cloud, and although it worked previously, fiddling with the tag cloud output in that way appears to break things or have changed considerably in WP 4.4.
/**
* Change output of Standard WP Tag widget - this seems to break things after update to WP 4.4
**/
add_filter('widget_tag_cloud_args','style_tags');
function style_tags($args) {
//Show fewer tags on Some-Category archive page
if ( is_category('some-category') ) :
$number = '24';
else :
$number = '30';
endif;
$args = array(
'largest' => '10',
'smallest' => '10',
'format' => '',
'number' => $number,
);
return $args;
}
Cheers
Stef
I have the same problem on my website.
I also use a function to reduce the number of tags.
Styling is broken by default, but if I login to my WP Admin and update the function, the changes seem to work.
Then, when I logout, the styling is messed up again.
Glad to see that I’m not the only one who has this problem.
But is still remains.
I have no answer/solution yet so I’ll keep on looking at it.
I even consider to create my own tagcloud so the problem is sort of fixed.
M.
@tictok
Because of your post I was bound to take a look into my functions.php and found:
add_filter('widget_tag_cloud_args','set_tag_cloud_args');
function set_tag_cloud_args($args) {
$args = array(
'smallest' => 12,
'largest' => 12,
'unit' => 'pt',
'order' => 'ASC', );
return $args;
}
After I deleted this from my functions.php the whole thing worked again. However the arguments passed to the tag cloud functions were disabled.
So I have to find a way to pass the arguments………
M.
Well…
I fixed with css by setting the font-size to 12px and overruled it with an !important.
Not the most elegant solution but for now…..
Still have to find out how I can pass the order..
Hello. I had the same problem and now I fixed it.
You can fix it by changing your function like follows (let me use mvanfoordt’s example):
function set_tag_cloud_args($args) {
$my_args = array(
'smallest' => 12,
'largest' => 12,
'unit' => 'pt',
'order' => 'ASC', );
$args = wp_parse_args( $args, $my_args );
return $args;
}
Until WP 4.3.x, wp_tag_cloud function was used to directly output (‘echo’ => true), which is the function’s default behavior. In WP 4.4, however, the function is used to set the tag cloud into a variable as a string, without output (‘echo’ => false).
The original description of the custom function overrides the default arguments, where ‘echo’ is set to false. So tag cloud was output at wrong timing (before output of wrapper and title). To resolve it, arguments should not be override, instead, custom arguments should be merged with default arguments.
Hope I could have explained well and it helps you.
Wow.
Thank you. Great fix and explanation.
I will try it and let you know!!
M.
@afainu – Thanks a lot for the code.
Works flawlessly.
This worked great, thanks for the fix!
Thanks, @afainu. I was tearing my hair out.
It also works if one simply adds…
'echo' => false
… to the arguments, using only $args (and no wp_parse_args).
But if I understand your explanation, that would “lose” any other defaults not expressly added to the custom function.