Google AdSense

Permalink Browser Info Environment
I put Google AdSense on my WP for C5 blog page and everthing was fine for about week when I got this message from Google:

" As mentioned in the welcome email, we begin to review your AdSense account when you begin serving ads. During a recent review, we have disapproved your account for the following violation(s).
Issues:

- Insufficient content

---------------------

Further detail:
Insufficient content: To be considered for AdSense, your site must contain enough text content for our specialists to review and for our crawlers to identify relevant ads to show on your pages. We recommend including more complete sentences and paragraphs on your site. We require websites to be fully launched and functioning, allowing users to navigate throughout your site with a menu, sitemap, or appropriate links. Once the majority of your site is complete and functional, we'll be happy to reconsider your application."

I'm not sure if I am doing something wronge here or not. You seem to indicate in your documentation that web search engines can crawl the blog. Why does Google think I have no content?

Anyone else had this issue?

Type: Discussion
Status: New
randyking
View Replies:
elyon replied on at Permalink Reply
elyon
Ah, interesting.

So content is being loaded using AJAX. There is a PHP-based fallback which enables when it detects a search engine crawler, but perhaps Google AdSense uses a different user agent?

The up-side to AJAX is that it does not incur additional load on your server, and it loads about as quickly for your users as it would if the content had already been on the same page. The downside is that some types of bots (like AdSense) don't read it, so they think the page is blank

Let me see if I can figure out what the ID of the AdSense bot is, so I can add it to the fallback list
elyon replied on at Permalink Reply
elyon
I've made sure to have the user agent string for the Google AdSense bot. I see your duplicate thread under Support, let me ask you there about some specifics that may help us figure this out for you.
randyking replied on at Permalink Reply
randyking
Thanks for the response. I'm not too sure the PHP is being seen by web crawlers, either. Google does not find any keywords searches related to my blog. It has no trouble with other key words related to my site. The main reason I'm blogging is to add content that can be found by crawlers, esp Google.

Is there a way to import entire WP blog posts as resident pages on C5 (that can be crawled) and still have excerpts on the main C5 blog page?

Thanks again!
elyon replied on at Permalink Reply
elyon
Hah! Okay. Busy replying on both threads :)

I have just added a "Transport Mode" option in version 1.2.6 of the add-on, which I just uploaded.

Please try to update your add-on, then try "cURL" as the transport mode. This is the mode that should be enabled automatically when AdSense hits your site.

By making sure that this option is always enabled, we can try it again and see if it makes Googlebot happy. If not, then it must be a problem with the bot, or perhaps it thinks your entries are too brief (for some reason). If it does make it happy, then we know that the fallback must not have triggered correctly, and I can perform some tests on my end to ensure that the auto-fallback mechanism works.
elyon replied on at Permalink Reply
elyon
Hi Randy!

I just released version 1.3.0 of the WordPress for Concrete5 add-on. This does several things that you have been looking for -- I think this will solve what you are looking for.

The first key improvement, since 1.2.9, is that the PHP method (cURL) has been brought up to parity with the Javascript method (AJAX), so both should work solid. Using AJAX can lighten the load on your server, but for now, let's see if Google AdSense picks up your page if you set it to always use cURL. I have a feeling that Google was receiving the cURL version as expected, but that a few minor glitches prevented it from seeing all of your content.

The second improvement is a new template system. I know you've been hoping for "author" support in the blog view -- now this is completely possible, without any programming.

I have included an example template with the add-on. If you edit a block and select "Custom Template", you should see "Just Another Wordpress" on the list. This is a sample template that is more similar to the format of the 2010 default WordPress theme, which many of us are familiar with. You can completely customize your format, however, and you may decide to go with something that is basically the same as the standard, but with the author added in somewhere.

You can read more about it here:

http://www.concrete5.org/marketplace/addons/wordpress-for-concrete5...

...but if you already know exactly how you want your blog entries to look, I would be more than happy to make a template for you
randyking replied on at Permalink Reply
randyking
Very cool! I loaded the custom template and I have a couple of issues. First, the "continue reading" link sends me to my Wordpress blog instead of my C5 blog entry page. The heading link works.

The other issues are just stlye issues. I want a space (line) between the Posted on date and byline and the exerpt body. and a space after the exerpt body and posted in line.

Alternatively can it look just like my actual WP page?http://www.entertainsafety.com/wordpress/
elyon replied on at Permalink Reply 1 Attachment
elyon
Hey Randy,

Sorry about the regression. The links should be working properly again, and I also added tags support in the templates, so we can replicate what you have going on in WordPress.

The reason why the content squishes together in Concrete and not in WordPress is simply a matter of CSS styles. I've updated this template to include tags, like your WordPress page, and to include some hard-coded padding to help it look better.

<?php  
   defined('C5_EXECUTE') or die(_("Access Denied."));
   include $b -> getBlockPath () . '/templates_default.php';
   $templates['post'] = '
      <div class="wordpress-entry">
         <h2 class="wordpress-entry-title"><a href="%URL%">%TITLE%</a></h2>
         <div class="wordpress-entry-meta" style="padding-bottom: 12px;">Posted on %MONTH% %DATE%, %FULL_YEAR% by %AUTHOR_NICKNAME%</div>
         <div class="wordpress-entry-content">%CONTENT%</div>
         <div class="wordpress-entry-utility" style="padding-top: 16px;">%CATEGORIES%%TAGS%%DISQUS_COMMENT_COUNT%%EDIT_POST%</div>
      </div>
   ';
   $templates['categories'] = 'Posted in %ITEMS% | ';
   $templates['tags'] = 'Tagged %ITEMS% | ';
   $templates['disqus_comment_count'] = '<a href="%URL%" data-disqus-identifier="%IDENTIFIER%">View Comments</a>';
   initialize ($base, $templates);


You should take this and put it at /blocks/wordpress_entries/templates/entertain_safety.php, or something like it. Then "Entertain Safety" should appear on the list when you go to select a custom template.

I've also attached it here as a file, so you can upload it straight to your server. It wouldn't let me upload using the "*.php" file extension, so rename it before you put it on your server.
randyking replied on at Permalink Reply
randyking
Okay, this works the way I want it. I have created the template and made a couple of changes. Here's the code:

<?php  
   defined('C5_EXECUTE') or die(_("Access Denied."));
   include $b -> getBlockPath () . '/templates_default.php';
   $templates['post'] = '
      <div class="wordpress-entry">
         <h2 class="wordpress-entry-title"><a href="%URL%">%TITLE%</a></h2>
         <div class="wordpress-entry-meta" style="padding-bottom: 12px;">Posted on %MONTH% %DATE%, %FULL_YEAR% by %AUTHOR_NAME%</div>
         <div class="wordpress-entry-content">%CONTENT%</div>
         <div class="wordpress-entry-utility" style="padding-top: 16px;">%CATEGORIES%%DISQUS_COMMENT_COUNT%%EDIT_POST% </div>
      </div>
   ';
   $templates['categories'] = 'Posted in %ITEMS% | ';
   $templates['tags'] = 'Tagged %ITEMS% | ';
   $templates['disqus_comment_count'] = '<a href="%URL%" data-disqus-identifier="%IDENTIFIER%">View Comments</a>';
   initialize ($base, $templates);


Will this template change with future updates? If so, please make sure yourcode matches what I've done here. For example, I am using "Author Name" rather than "Nickname" if nickname is used it says "posted by admin"

I appreciate all of your help with this, now we'll wait and see what happens with Google Ad Sense.

Thanks a lot!
elyon replied on at Permalink Reply
elyon
Perfect!

I am so glad you were able to customize it to make it work the way you want it to. Maybe it makes more sense, now, why I said that I wanted to add support for a template system first, to add "Posted by Randy King" in there.

I hope that the format is simple enough that it is not a burden to customize (and even then, probably only once). If you create your own template file under /blocks/wordpress_entries/templates, and did not put it in the package directory, then it will remain even after the add-on is updated, and nothing I do should require changes on your end. If we had customized the add-on earlier, it would have been impossible to upgrade without making changes every time.

I may change the "Just Another Wordpress" template slightly, but that won't affect you if you are using your own template
randyking replied on at Permalink Reply
randyking
The way you set it up is fine with me. If I knew more about CSS etc it would make my life easier in general, but I made this look just the way I wanted it to, with your help. I put the new file in the same folder as your Just Another Wordpress template. I hope that the right place.

I have my fingers crossed on the Google Ad Sense issue.

Any thoughts about optimizing WP for C5 SEO would be most helpful since I'm not too sure Google is finding my blog.

Thanks for the outstanding support!

Randy
elyon replied on at Permalink Reply
elyon
It is possible that your file might get removed if you update to a newer version of the add-on ... I am not sure.

However, if you place it at (Concrete5 install directory)/blocks/wordpress_entries/templates, it definitely will not be overwritten. That's the ideal place to put it.

Google has been using the cURL version of the add-on. You know how we switched to cURL yesterday, and a number of bugs popped up? Unfortunately, that is what Google was seeing. It may not have seen your posts because it couldn't get to them.

However, now that this all is fixed, Google is going to see exactly what you are seeing on your site. I think this is the biggest first step to improving SEO. The second step, I think, is making sure that the pretty URLs are supported all across the board. This is something I will pay attention to on my end. In general, Google probably will favor "http://www.myblog.com/categories/general" better than "http://www.myblog.com?cat=2"

Oh, and last thing -- I can see that Google is picking up entries from my blog. Not sure how recently it crawled the site...

concrete5 Environment Information

Browser User-Agent String

Hide Post Content

This will replace the post content with the message: "Content has been removed by an Administrator"

Hide Content

Request Refund

You have not specified a license for this support ticket. You must have a valid license assigned to a support ticket to request a refund.