{"action":"created","issue":{"url":"https://api.github.com/repos/opencart/opencart/issues/3188","labels_url":"https://api.github.com/repos/opencart/opencart/issues/3188/labels{/name}","comments_url":"https://api.github.com/repos/opencart/opencart/issues/3188/comments","events_url":"https://api.github.com/repos/opencart/opencart/issues/3188/events","html_url":"https://github.com/opencart/opencart/pull/3188","id":96105150,"number":3188,"title":"Bunch of old bugs that never got fixed","user":{"login":"dhaupin","id":6352930,"avatar_url":"https://avatars.githubusercontent.com/u/6352930?v=3","gravatar_id":"","url":"https://api.github.com/users/dhaupin","html_url":"https://github.com/dhaupin","followers_url":"https://api.github.com/users/dhaupin/followers","following_url":"https://api.github.com/users/dhaupin/following{/other_user}","gists_url":"https://api.github.com/users/dhaupin/gists{/gist_id}","starred_url":"https://api.github.com/users/dhaupin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dhaupin/subscriptions","organizations_url":"https://api.github.com/users/dhaupin/orgs","repos_url":"https://api.github.com/users/dhaupin/repos","events_url":"https://api.github.com/users/dhaupin/events{/privacy}","received_events_url":"https://api.github.com/users/dhaupin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":13,"created_at":"2015-07-20T16:38:57Z","updated_at":"2015-10-14T08:51:01Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/opencart/opencart/pulls/3188","html_url":"https://github.com/opencart/opencart/pull/3188","diff_url":"https://github.com/opencart/opencart/pull/3188.diff","patch_url":"https://github.com/opencart/opencart/pull/3188.patch"},"body":" - Removed redundant/duplicate product url generation (no need for cats and mfg products since there are already canonicals). **\"Only include canonical URLs. A common mistake is to include URLs of duplicate pages. This increases the load on your server without improving indexing.\"** http://googlewebmastercentral.blogspot.com/2014/10/best-practices-for-xml-sitemaps-rssatom.html\r\n\r\n - Added ampersand escape on all urls: **\"All data values in a Sitemap must be entity-escaped\"** **\"In addition, all URLs (including the URL of your Sitemap) must be URL-escaped and encoded for readability by the web server on which they are located\"** http://www.sitemaps.org/protocol.html#escaping\r\n\r\n - Added replace spaces with `%20` on all output since MANY people use spaces in their image folder names and \"dumbcrawlers\" will hang on parse or complain on SEO scans. This is not technically required by the spec but experience and 404 logs show tons of incomplete uri requests if no `%20` exists in paths.\r\n\r\n - Added `<lastmod>` for categories and products in W3C datetime format. MFG and informations are lacking a modified column so didn't add those. (They should have it too for many semantic/push/ping/sanity reasons, but that's another commit...).\r\n\r\n - Removed image resizing. This causes insane load on servers when a large sitemap is generated. Side effects: script timeouts beyond what default php.ini allows, connection timeouts or multi-fetch retry A.D.D. after ~60-90 seconds (can cause EP caps or super easy DoS on CL enabled servers/VPS), and possible hosting penalties for CPU abuse on shared servers with popular site(s) being hit by Search bots, scrapers, scanners, etc. Google prefers full size images anyways and has its own caching and limiting mechanisms that decide what to do per the device requesting via search. We live in a world with unlimited hosting bandwidth as the norm....its just logical in general to provide high resolution and allow endpoints to scale down.\r\n\r\n - Added full URL for images instead of just the URi. Again, for dumbcrawlers and stuff that may not be aware of the TLD from just the map.\r\n\r\n - Also did some admin product image changes to move to correct tab.\r\n\r\n - Added the category canonical and breadcrumb chain fixes too."},"comment":{"url":"https://api.github.com/repos/opencart/opencart/issues/comments/147979839","html_url":"https://github.com/opencart/opencart/pull/3188#issuecomment-147979839","issue_url":"https://api.github.com/repos/opencart/opencart/issues/3188","id":147979839,"user":{"login":"danielkerr","id":5079756,"avatar_url":"https://avatars.githubusercontent.com/u/5079756?v=3","gravatar_id":"","url":"https://api.github.com/users/danielkerr","html_url":"https://github.com/danielkerr","followers_url":"https://api.github.com/users/danielkerr/followers","following_url":"https://api.github.com/users/danielkerr/following{/other_user}","gists_url":"https://api.github.com/users/danielkerr/gists{/gist_id}","starred_url":"https://api.github.com/users/danielkerr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielkerr/subscriptions","organizations_url":"https://api.github.com/users/danielkerr/orgs","repos_url":"https://api.github.com/users/danielkerr/repos","events_url":"https://api.github.com/users/danielkerr/events{/privacy}","received_events_url":"https://api.github.com/users/danielkerr/received_events","type":"User","site_admin":false},"created_at":"2015-10-14T08:51:01Z","updated_at":"2015-10-14T08:51:01Z","body":"Category canonical cateogry id is already taken care of in another issue "}}