oddoneout / bwp-google-xml-sitemaps Goto Github PK
View Code? Open in Web Editor NEWWordPress plugin that helps generate XML Sitemaps for your website/blog.
Home Page: http://betterwp.net/wordpress-plugins/google-xml-sitemaps/
WordPress plugin that helps generate XML Sitemaps for your website/blog.
Home Page: http://betterwp.net/wordpress-plugins/google-xml-sitemaps/
If a sitemap has not been generated yet, its Last generated on should be blank or n/a.
Check cases that might affect the stylesheet:
Original issue: The sitemap appears to be blank but is still actually generated correctly. This seems to occur only in Firefox, when an addon called Vimperator is active (so this is actually an invalid bug).
sudo composer update
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Loading composer repositories with package information Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package kminh/bwp-framework could not be found in any version, there may be a typo in the package name.
Potential causes:
Read https://getcomposer.org/doc/articles/troubleshooting.md for further common problems.
As per Google's rules, news sitemap should contain only articles published within a 48-hour period.
Hello!
This isn't so much an issue as just something to think about...
For sites that have lots of posts (say over 3 million) sitemap generation get increasing slow. From what I can tell its from the LIMIT usage with an offset in the query. I was looking into a way to modify the query to remove the offset in the LIMIT clause and keep track of your place in the posts via the where clause as you cycle.
ex. WHERE ... p.ID > last post id from previous cycle...
I've been looking through the source code and it seems like that is going to be a fairly difficult optimization to make. Do you have any suggestions?
Make it possible to set the following per sitemap item:
Resolves:
Hi,
Quick feature request. I like the fact that bwp-google-xml-sitemaps add multisite sitemaps to robots.txt if a physical file is not there, but at the same time I need to throttle Bing.
A simple text box with a snippet to add to all virtual sitemaps would go along way.
Any plans to keep repo up to date?
Should support following features:
References:
Examples:
We might need better default names too.
Resolves:
https://wordpress.org/support/topic/rename-sitemapindexxml-and-other-files?replies=1#post-6138174
Should be able to set frequencies and priority as well.
Originally requested from: https://twitter.com/ReneHesse/status/687939182157762561
Should support Google news sitemap as well.
Resolves:
https://wordpress.org/support/topic/update-sitemap-when-a-news-is-updated?replies=1#post-7992616
Hi,
If I want to have the image tags appear in my custom sitemaps, I need to modify your xml.php file located:
/wp-content/plugins/bwp-google-xml-sitemaps/src/sitemap/xml.php
and remove both conditions checking for:
if ($this->provider->is_image_allowed())
Indeed, I did not find a way thru the admin panel to let the app know that I want images also on the custom sitemaps.
Once I remove the condition checking in xml.php it all works fine. But certainly there should be a way to do so without modifying your code.
thanks!
In SSL-terminating load-balanced environments, bwp-google-xml-sitemaps fails with the following error:
BWP Google XML Sitemaps Error: sitemapindex.xml does not have any item. Please make sure that you have at least one sitemap enabled in BWP Sitemaps >> XML Sitemaps >> Sitemaps to generate.
This is because of a discrepancy in URL scheme:
BWP_Sitemaps_Sitemap_Provider::is_url_valid()
returns false.I suggest removing the lines following // url must use the current scheme
in bwp-google-xml-sitemaps/src/sitemap/provider/provider.php
(or reverting d3b58be) to remove this restriction.
Alternate solutions:
set_url_scheme()
to normalize URLs before comparing. We register a filter for this action in order to get WordPress to support our situation.$_SERVER['HTTP_X_FORWARDED_PROTO']
is "https" when determining $is_ssl
.Hello, I have these errors on log every day:
[17-Jan-2018 19:09:00 UTC] WordPress database error Lock wait timeout exceeded; try restarting transaction for query UPDATE
wp_optionsSET
option_value= 'a:2:{s:8:\"messages\";a:25:{i:0;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 15:07:42\";}i:1;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 15:07:42\";}i:2;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 15:07:43\";}i:3;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 16:00:05\";}i:4;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 16:00:05\";}i:5;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 16:00:05\";}i:6;a:3:{s:7:\"message\";s:77:\"Successfully generated <em>site.xml</em> using module file <em>site.php</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 16:44:58\";}i:7;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 17:02:03\";}i:8;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 17:02:03\";}i:9;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 17:02:04\";}i:10;a:3:{s:7:\"message\";s:93:\"Successfully generated <em>sitemapindex.xml</em> using module file <em>sitemapindex.php</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 17:09:55\";}i:11;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 17:10:08\";}i:12;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 17:10:09\";}i:13;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:07\";}i:14;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:07\";}i:15;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:10\";}i:16;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:10\";}i:17;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:13\";}i:18;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:13\";}i:19;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:15\";}i:20;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:15\";}i:21;a:3:{s:7:\"message\";s:67:\"Pinged <em>Google</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:21\";}i:22;a:3:{s:7:\"message\";s:65:\"Pinged <em>Bing</em> with <em>sitemapindex.xml</em> successfully!\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:21\";}i:23;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:00:22\";}i:24;a:3:{s:7:\"message\";s:66:\"Successfully served a cached version of <em>sitemapindex.xml</em>.\";s:4:\"type\";s:7:\"success\";s:8:\"datetime\";s:19:\"2018-01-17 19:08:09\";}}s:8:\"sitemaps\";a:7:{i:0;a:2:{s:4:\"slug\";s:12:\"sitemapindex\";s:8:\"datetime\";s:19:\"2018-01-17 17:09:55\";}i:1;a:2:{s:4:\"slug\";s:4:\"site\";s:8:\"datetime\";s:19:\"2018-01-17 16:44:58\";}i:2;a:2:{s:4:\"slug\";s:4:\"page\";s:8:\"datetime\";s:19:\"2018-01-16 15:25:39\";}i:3;a:2:{s:4:\"slug\";s:10:\"post_part3\";s:8:\"datetime\";s:19:\"2018-01-17 11:26:39\";}i:4;a:2:{s:4:\"slug\";s:10:\"post_part1\";s:8:\"datetime\";s:19:\"2018-01-17 13:34:16\";}i:5;a:2:{s:4:\"slug\";s:10:\"post_part2\";s:8:\"datetime\";s:19:\"2018-01-17 04:48:24\";}i:6;a:2:{s:4:\"slug\";s:10:\"post_part4\";s:8:\"datetime\";s:19:\"2018-01-17 04:46:54\";}}}' WHERE
option_name = 'bwp_gxs_log' fatta da require('wp-blog-header.php'), wp, WP->main, WP->parse_request, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, BWP_Sitemaps->request_sitemap, BWP_Sitemaps->_load_sitemap_module, BWP_Sitemaps->_load_sitemap_from_cache, BWP_Sitemaps->commit_logs, BWP_WP_Bridge->__call, update_option
so, is it related to pinging ? and what shoud I do?
Thanks
Some possible improvements:
Only:
/site.xml
/taxonomy_post_tag.xml
are added to the sitemapindex, but no posts.xml, pages.xml etc. for a blog, where all of these are enabled (i.e. not disabled) - basic setup options are kept.
add new page for non-wp sites isnt useable. as the dialogue box opens half out of the top of the page. wasnt able to fix it despite trying to scroll, zoom out, use the tab key to select the top box
Using locale aware specifier might output invalid priority such as 1,0
, 0,9
instead of 1.0
, 0.9
.
Resolves:
https://wordpress.org/support/topic/gwt-error-xml-tag-value?replies=1#post-7918677
https://wordpress.org/support/topic/invalid-sitemap-because-of-german-number-format?replies=1#post-8251538
https://wordpress.org/support/topic/priority-values-like-10-instead-of-1-0-is-bad/
Tasks:
Resolves:
https://wordpress.org/support/topic/custom-post-type-for-news?replies=3#post-4171330
The declaration of BWP_GXS_MODULE_INDEX::build_data()
doesn't match BWP_GXS_MODULE::build_data()
.
URL: http://example.co.uk/sitemapindex.xml
Referrer: http://example.co.uk/wp-admin/options-general.php?page=bwp_gxs_stats
Error(E_STRICT): Declaration of BWP_GXS_MODULE_INDEX::build_data() should be compatible with that of BWP_GXS_MODULE::build_data()
Source: /var/sites/g/example.co.uk/public_html/wp-content/plugins/bwp-google-xml-sitemaps/includes/modules/sitemapindex.php [162]
Trace:
#1 /var/sites/g/example.co.uk/public_html/index.php:17 - require('/var/si...')
#2 /var/sites/g/example.co.uk/public_html/wp-blog-header.php:14 - wp()
#3 /var/sites/g/example.co.uk/public_html/wp-includes/functions.php:775 - WP->main('')
#4 /var/sites/g/example.co.uk/public_html/wp-includes/class-wp.php:522 - WP->parse_request('')
#5 /var/sites/g/example.co.uk/public_html/wp-includes/class-wp.php:307 - do_action_ref_array('parse_r...', Array)
#6 /var/sites/g/example.co.uk/public_html/wp-includes/plugin.php:484 - call_user_func_array(Array, Array)
#7 [internal call] - BWP_SIMPLE_GXS->request_sitemap(WP)
#8 /var/sites/g/example.co.uk/public_html/wp-content/plugins/bwp-google-xml-sitemaps/includes/class-bwp-simple-gxs.php:1246 - BWP_SIMPLE_GXS->load_module('sitemap...', '')
#9 /var/sites/g/example.co.uk/public_html/wp-content/plugins/bwp-google-xml-sitemaps/includes/class-bwp-simple-gxs.php:1449 - BWP_SIMPLE_GXS::load_module()
WordPress 3.5.1
PHP 5.3.10
Better WordPress Google XML Sitemaps Plugin 1.2.1
Specify rewrite rules for NGINX if NGINX server detected.
Currently only one news sitemap is generated and is limited to 1000 posts (correct, as google suggests).
So, if you have more than a 1000 posts in the last 48 hours they are ignored.
It should be also splited to parts as the normal post sitemap is.
Got this fatal error:
[15-Feb-2017 14:12:52 UTC] PHP Fatal error: Uncaught Error: Call to a member function log() on null in PATH_HERE/plugins/bwp-google-xml-sitemaps/src/class-bwp-gxs.php:2545
Stack trace:
#0 PATH_HERE/plugins/bwp-google-xml-sitemaps/src/class-bwp-gxs.php(2573): BWP_Sitemaps->_log_message_item('Pinged <em>Goog...', 'success')
#1 PATH_HERE/plugins/bwp-google-xml-sitemaps/src/class-bwp-gxs.php(2603): BWP_Sitemaps->log_message('Pinged <em>Goog...', 'success')
#2 PATH_HERE/plugins/bwp-google-xml-sitemaps/src/class-bwp-gxs.php(3961): BWP_Sitemaps->log_success('Pinged <em>Goog...')
#3 /srv/users/serverpilot/apps/veracruzanos/public/wp-includes/class-wp-hook.php(298): BWP_Sitemaps->ping(Object(WP_Post))
#4 /srv/users/serverpilot/apps/veracruzanos/public/wp-includes/class-wp-hook.php(323): WP_Hook->apply_filters('', Array)
#5 /srv/users/serverpilot/apps/veracruzanos/publi in PATH_HERE/plugins/bwp-google-xml-sitemaps/src/class-bwp-gxs.php on line 2545
In function _log_message_item there's a call to an object before checking it exists:
$this->message_logger->log($item);
maybe this could prevent the error? (I haven't tested)
if(isset($this->message_logger))
$this->message_logger->log($item);
hello.
external page is intented for external url, so it should be avoid "filter_sitemap_item"
( /bwp-google-xml-sitemaps/src/sitemap/provider/provider.php )
usually, external page must be not working this version.
but i have solution.
provider.php <--
public function get_items()
{
if( $this->module->requested == 'external' ){
return $this->module->get_data();
} else {
return array_values(
array_filter(
$this->module->get_data(),
array($this, 'filter_sitemap_item')
)
);
}
}
i hope version upgrade include my source.
Currently, BWP generates sitemap indexes separately for each website in the network (subfolder install). This is incorrect approach.
There should be one master sitemap index with all websites in the root folder and this should have individual network sites linked.
It's useful to allow admins to:
Solves:
https://wordpress.org/support/topic/how-do-i-exclude-pages-that-i-do-not-want-indexed?replies=5#post-7391402
https://wordpress.org/support/topic/how-to-update-the-frequency-of-a-certain-page?replies=1#post-6827077
https://wordpress.org/support/topic/exclude-some-categories-in-normal-sitemap?replies=2#post-7417331
https://wordpress.org/support/topic/exclude-posts-by-taxonomy?replies=2#post-7725394
https://wordpress.org/support/topic/how-to-exclude-categories-from-the-sitemaps-1?replies=3#post-4859367
All returned values of filter hooks (http://api.betterwp.net/bwp-google-xml-sitemaps/master/hooks.html) should be sanitized to minimize mistakes from users' sides.
Hi,
Google News allow to specify image in the Sitemap because sometimes happen that the indexed article has wrong image. In my case the images linked to the article in Google News are the author's avatars.
In this article Google suggest to introduce "images" tag before the "" tag for solving the problem.
http://support.google.com/news/publisher/bin/answer.py?hl=en&answer=185541
I modify your plugin for supporting this feature and the result is this:
http://www.capn3m0.org/post_google_news.xml
Thanks if this "little patch" will be included in the next revision.
Here my modded version
http://www.capn3m0.org/files/bwp-google-xml-sitemaps.zip
and the post about this fix:
http://www.capn3m0.org/fix-immagini-nella-sitemap-google-news.html
Br
capn3m0
Related:
Solves:
I left this field empty to use the default directory and flushing the cache wouldn't work.
If I print $dir
within the flush_cache function it simply returns /
.
After copying the default directory listed below the field into the field, flushing the cache succeeded.
Resolves:
https://wordpress.org/support/topic/cant-flush-cache-1?replies=1#post-6149214
Related Plugins:
https://wordpress.org/plugins/polylang/
https://wordpress.org/plugins/transposh-translation-filter-for-wordpress/
https://wpml.org/
Solves:
https://wordpress.org/support/topic/compatibility-with-domain-name-option-and-polylang?replies=7#post-6902650
https://wordpress.org/support/topic/is-it-wpml-compatible-2?replies=2#post-7418418
https://wordpress.org/support/topic/about-transposh?replies=1#post-7513735
https://wordpress.org/support/topic/wpml-and-different-languages-sitemap?replies=1#post-8251551 (extra language might not have the same sitemaps)
https://wordpress.org/support/topic/news-xml-sitemaps-for-two-language?replies=2#post-8436549
https://wordpress.org/support/topic/bwm-minfy-and-wpml-two-domains/
https://wordpress.org/support/topic/generate-too-many-same-url-per-language/
https://wordpress.org/support/topic/bwm-minfy-and-wpml-two-domains/#post-8198892
Hi,
I've enabled the 'split post based sitemaps' feature on a large site (6000+ posts). I'm finding that the last sitemap generated is always empty, in this case when using a 1000 split limit post_part6.xml is empty. This results in google webmaster tools not being able to validate the sitemapindex. I've tried changing the split limits but the same issue occurs. No errors appear in the sitemap logs but the following appears when trying to view the last sitemap:
BWP Google XML Sitemaps Error: post_part3.xml does not have any item. There are no public Post. Enable/disable sitemaps via BWP Sitemaps >> XML Sitemaps.
Thanks
This was actually resolved in a past commit: 66d5970
Need to add a functional test to guard this.
Resolves:
https://wordpress.org/support/topic/https-in-post_google_newsxml?replies=5#post-5282646
Hi,
I followed your documentation carefully and was successful in creating custom modules but here 2 suggestions:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.