Omri Amos Posted July 10, 2016 Posted July 10, 2016 Hi, I changed the urlFilters settings to make links "nofollow". However I was under the impression that it will only affect external links.... Now I see that I was wrong, and I added my own domain as an allowed domain ("Domains to instruct search engines to follow") - but it does not affect existing links that are still "nofollow", even after clearing the (IPS) cache. How can I force a "refresh" of all the existing links, on all the existing posts? Another issue is that it added all these parameters to the links: "external nofollow noopener noreferrer"Why noreferrer? It should only add "nofollow" as this is how this feature is described... The fact that I want to "nofollow" external links (so they will not get any seo credit for it) does not mean I don't want them to know that I have referred visits to them. How can I remove the noreferrer parameter? Thanks
Omri Amos Posted July 10, 2016 Author Posted July 10, 2016 I've got an answer from the support: Quote Unfortunately we don't have a way to rebuild posts at the moment, it is something we are discussing and assessing. IPS4 compiles and stores the HTML for the post, which makes this process more complex So they're saying all my existing links on all my existing posts are doomed to be nofollow? this is a huge SEO problem for us. We really need to be able to rebuilt the existing posts. I know that there IS a process for doing that (I rebuilded all the posts after I converted from VBulletin), can't I call it again by added a manual job to the database's table? Anyone knows how to accomplish that? Thanks
Dan Park Posted September 30, 2016 Posted September 30, 2016 I saw your post and was looking for an answer. It appears to me that the noopener and noreferrer are added using javascript. I added the following in a plugin: ;( function($, _, undefined){ "use strict"; ips.controller.mixin('nofollow', 'core.front.core.app', true, function () { // if nofollow rel: set _blank target and remove the external rel. this.before('setup', function () { if( ips.getSetting('links_external') ) { this.scope.find('a[rel*="external"]').each( function( index, elem ){ if(elem.rel.indexOf('nofollow') === -1){ elem.target = "_blank"; elem.rel = elem.rel.replace("external", ""); } }) } }); }); }(jQuery, _)); The only time these rels appear to get set is if open link in a new window is set. Here I just check for the lack of nofollow in cases where the external rel is set. Then remove the external rel so it won't get processed in the actual setup function. I don't know if there are any gotchas on this method. Does anyone know if the external rel is used for other purposes? Hope this helps.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.