Ask your WordPress questions! Pay money and get answers fast! Comodo Trusted Site Seal
Official PayPal Seal

html code shows under post title in Google index WordPress

  • SOLVED

Hi,

If you do Google search:

site:worldlinklive.com

You will see the image caption html is where the description should be.

It is a WP site.
It may be due to WP3 total cache plugin that I removed this morning.

BUT I urgently need this checked as this site is waiting to be reviewed by Google news.

I could change it if I could access each page, but I understand this is not possible in WP.

This is what is wrong on many posts
content'>[caption id="attachment_1197" align="alignleft" width="240" caption="YouTube videos provoked

(but for some reason not all - I need to check why - maybe some were indexed before I used the plugin? A friend thought it was weird that the site just cache short code?

I do not understand - I am a novice!

I have added this code that is thought to rectify, but unsure as not indexed yet.

<meta name="googlebot" content="NOODP">

Please help asap.


<textarea rows='40' cols='40' name='content' tabindex='2' id='content'>[caption id="attachment_1197" align="alignleft" width="240" caption="YouTube videos provoked stabbing"]&lt;img class="size-medium wp-image-1197 " style="margin: 5px;" title="you-tube-banned" src="http://worldlinklive.com/wp-content/uploads/2010/11/you-tube-banned-300x183.jpg" alt="you-tube-banned" width="240" height="146" /&gt;[/caption]</strong>





Answers (4)

2011-01-02

enodekciw answers:

Get and install some SEO plugin. For example: [[LINK href="http://wordpress.org/extend/plugins/all-in-one-seo-pack/"]]All in one seo pack[[/LINK]]

It will allow you to manipulate titles/descriptions on any single post/page ;) Though, you will have to wait until google reindexes your website.


Elizabeth Hill comments:

I have SEO platinum on the site

Autogenerate Descriptions: is ticked - should I untick that?


enodekciw comments:

As i get it, if autogenerate descriptions is ticked, it grabs excerpt from post and uses it as description. That's why you get those [caption] shortcodes there.

Imo, if you're focusing on SEO, you should always disable automated descriptions and write them manually.

2011-01-02

Chris Bavota answers:

Here is a little function I use on all of my premium themes instead of All in One SEO. Add this to your functions.php file:

// Meta description
function metaDesc() {
$content = apply_filters('the_content_rss', strip_tags(get_the_content()));
$content = preg_replace('/\[.+\]/','', $content);
$chars = array("", "\n", "\r", "chr(13)", "\t", "\0", "\x0B");
$content = htmlentities(str_replace($chars, " ", $content));
if(empty($content)) {
$content = htmlentities(theme_option('site_description'));
}
if (strlen($content) < 155) {
echo $content;
} else {
$desc = substr($content,0,155);
echo $desc."...";
}
}

// Tags for keywords
function csv_tags() {
$posttags = get_the_tags();
$csv_tags = '';
if($posttags) {
foreach((array)$posttags as $tag) {
$csv_tags .= $tag->name . ',';
}
}
echo '<meta name="keywords" content="'.$csv_tags.theme_option('keywords').'" />';
}


And this is what you need to add to your header.php right before the &lt;title&gt; tag:

<?php if (is_single() || is_page() ) : if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<meta name="description" content="<?php metaDesc(); ?>" />
<?php csv_tags(); ?>
<?php endwhile; endif; elseif(is_home()) : ?>
<meta name="description" content="<?php bloginfo('description'); ?>" />
<meta name="keywords" content="<?php echo 'wordpress, c.bavota, arturo, custom theme, themes.bavotasan.com, premium themes'; ?>" />
<?php endif; ?>


If you are on a single post page, this will automatically grab your content, strip out all HTML and limit it to 155 characters. It will also grab your post tags and use them as keywords. On all other pages it will grab your site description, which is set in the WordPress General Settings page in your wp-admin. Replace my default keywords with your default keywords.


Elizabeth Hill comments:

Thanks,

I am wondering whether this is the answer....is there anyway to get your site indexed quickly to see if that will change the indexed descriptions, else I'll have to wait til it comes round again

Last index date was Dec 16 and Jan 1


Chris Bavota comments:

It takes a bit of time for Google to update their index. The fastest way would be to make sure that they have a sitemap of your site to work off of. Sign up for the Google Webmaster Tools and then use the Google Sitemap plugin. Once your sitemap is created, direct the Webmaster Tools to its location so Google can work off of that.

2011-01-02

pixelp answers:

I don't know if this is related to your issue or not, but in the code sample you posted in your question (this):

<textarea rows='40' cols='40' name='content' tabindex='2' id='content'>[caption id="attachment_1197" align="alignleft" width="240" caption="YouTube videos provoked stabbing"]&lt;img class="size-medium wp-image-1197 " style="margin: 5px;" title="you-tube-banned" src="http://worldlinklive.com/wp-content/uploads/2010/11/you-tube-banned-300x183.jpg" alt="you-tube-banned" width="240" height="146" /&gt;[/caption]

I see an opening <textarea> but I don't see a closing <textarea> anywhere...

2011-01-04

Dan | gteh answers:

The reason it is happening is because of WordPress's use of the [caption] short-code.

Google strips out all HTML code that is contained within the proper tags such as <blah> </blah> however WordPress uses [caption] [/caption] to put captions below an image.

The [caption] code is converted at run-time and since search engines such as google view your site in plain text, and not in HTML, it sees [caption] and figures it's just part of your text.

The best way to solve this is to install a Gallery plugin such as NexGen gallery which uses pure html/css to display captions, instead of short-codes.

I believe this will address the issues. After you update all of your existing posts to use the new gallery plugin, the posts should eventually update the next time the google crawler comes by.