Jump to content



  • Posts

  • Joined

  • Last visited

 Content Type 



IPS4 Providers

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog



Everything posted by Cemmos

  1. Click the Add URL button and a popup will come up. Type in the URL that you want to hide all ads on (such as www.YOURSITE.com/register) Trailing slash and http/https don't matter — they'll be stripped anyway. Repeat adding your URLs for every page you want to disable ads from, then go to your site in the list below and click on the arrow dropdown (to reveal the URLs you just added). Select each one of them and continue to the next page. On the next page I believe you'll select each ad type that should be shown. Uncheck all of them, including the small button at the button about future ad type, then proceed. You can name it. For example, I have multiple sites that use the same auto ad code. I name mine as such: Site1.com - no ads Site2.com - no ads I don't actually use it on my IPS site, but I set it up for when I want to use it: But my URLs are customized, except login, lostpassword, and contact. So your mileage will vary. For instance, all of my documents such as terms of service, ad disclosure, and privacy policy are under the /policy page, so including only that one will also remove the ads from /policy/privacy, /policy/terms, etc. Keep in mind that Google themselves are also very good at not displaying ads on pages they think shouldn't have ads, such as those ones with very little text on them that don't seem like an article.
  2. Adsense is pretty good at detecting where not to place ads, but there's a specific option where you can create groups of URLs to not display ads. Simply add your login and registration links, privacy policy, etc. I did that on one of my sites along with the entire /forum section and ads are not displayed. I don't know the specific terms, but I'm sure this is something Google is aware of since they specifically tell you to load the code in those global places, whereas with regular Adsense, you need to place them specifically where you want them (and follow their TOS).
  3. There are a few ways you can do this: Insert the code directly into the <head> and <body> sections (globalTemplate) Create two new templates in your theme and paste each one into those templates, and place the template tag into the <head> and <body> sections Use the Advertisements feature of the software and place the custom tags into the <head> and <body> sections All of them require you placing some sort of tag into the globalTemplate. As an example for #1: Find: <title>{expression="output.getTitle( $title )"}</title> {{if settings.ipbseo_ga_enabled}} {setting="ipseo_ga"} {{endif}} Paste the code that goes into the header there, such as underneath the </title> and above the if statement. Then find: <body class='ipsApp ipsApp_front {{if isset( \IPS\Request::i()->cookie['hasJS'] )}}ipsJS_has{{else}}ipsJS_none{{endif}} ipsClearfix{{foreach output.bodyClasses as $class}} {$class}{{endforeach}}' {{if output.globalControllers}}data-controller='{expression="implode( ',', output.globalControllers )"}'{{endif}} {{if isset( output.inlineMessage )}}data-message="{expression="output.inlineMessage"}"{{endif}} data-pageApp='{$location['app']}' data-pageLocation='front' data-pageModule='{$location['module']}' data-pageController='{$location['controller']}'> Paste the body code directly underneath that. The other two ways of doing it are pretty much the same thing, only they require a couple of extra steps. I personally just created a template for each and then called the templates in the spots I mentioned above, such as: <head> <title>{expression="output.getTitle( $title )"}</title> {template="google_tag_manager_head" app="core" group="global" location="global" params=""} {{if settings.ipbseo_ga_enabled}} {setting="ipseo_ga"} {{endif}} ... <body class='ipsApp ipsApp_front {{if isset( \IPS\Request::i()->cookie['hasJS'] )}}ipsJS_has{{else}}ipsJS_none{{endif}} ipsClearfix{{foreach output.bodyClasses as $class}} {$class}{{endforeach}}' {{if output.globalControllers}}data-controller='{expression="implode( ',', output.globalControllers )"}'{{endif}} {{if isset( output.inlineMessage )}}data-message="{expression="output.inlineMessage"}"{{endif}} data-pageApp='{$location['app']}' data-pageLocation='front' data-pageModule='{$location['module']}' data-pageController='{$location['controller']}'> {template="google_tag_manager_body" app="core" group="global" location="global" params=""} The method of using the Advertisements feature means you can select which usergroups the Javascript runs for (depending on what you're doing with Google Tag Manager). For instance, if you don't want it to load for Admins, you could use that option. Or just use an IF statement and wrap it around your code.
  4. Yeah, that's definitely something to think about. But one thing that I like about Google is that they're very much against ad-spam themselves. I noticed that there won't even be ads on pages where there's very little content (like text). It also seems to insert ads decently in article body text, but I've noticed that sometimes they leave big white gaps where an ad should be. For someone that really likes to make sure a site looks nice, that bit is a little jarring. On an old forum of mine, it inserts an ad something like every 2-3 posts down and actually looks fairly tasteful. Overall, I think it's a nice way to get ad placements on a site, but it does need some tinkering on Google's end. I can't speak for earnings yet since it hasn't even been a full day since I put them on a few sites I run. Haven't yet put it on my Invision Community though, except when I was testing some things.
  5. Yup. If you're adding it directly to your theme's globalTemplate, template syntax will work there.
  6. {{if \IPS\Member::loggedIn()->member_id === NULL}} Adsense Auto Ad code goes here {{endif}} Just paste your ad code in the IF statement. This way the script won't load for users that are logged in.
  7. Haven't tried it myself, but I'll give it a shot on one of my sites using Google Tag Manager. Seems like it could be a really good asset.
  8. That specific error means you need to add your domain name to the App Domains portion under Settings > Basic: As for strict mode (different error), go to Facebook Login settings under the PRODUCTS section and enter the below URL in the Valid OAuth redirect URIs portion: https://www.YOURDOMAIN.com/applications/core/interface/facebook/auth.php For App Domains, you don't need http, but for the OAuth redirect you need to use it (I use both http and https in the OAuth field). Strict Mode is going to be forced in March, so best to get it over with now.
  9. Is the app still in development mode? You should be able to tell by looking near the top while you're viewing it:
  10. A lot of this is going to come down to how you want to brand your site, and whether you want to separate your site into distinct sections or not. When using subdomains, as stated above: they are seen as different websites. Your subdomain of hello.example.co will not pass its page ranking into www.example.co. This is a good method for sites that offer people their own URL, like how WordPress.com does it. If the site's sections are all connected, i.e. the same topic niche is discussed in the forum and the article section (possibly your root), then subdirectories are the way to go. This way, your subdomain is not competing with your main website and together they can enhance your rankings for keywords, making the entire site more "juicy." I think the majority of people would want to use subdirectories rather than subdomains.
  11. You can always add a bit of jQuery to do it: $('a').text(function(index, oldText) { return oldText.length > 50 ? oldText.substring(0, 50) + '...' : oldText; }); https://jsfiddle.net/sg5pe3uc/
  12. The key is already linked to the specific site. You'd need to change the URL with Invision Power, Inc. to be able to change it to another site. Which is already locked behind the same login we use to access a new patch or upgrade. I'm not really seeing what the problem is there, even with lack of attention to detail on the site administrator's end (should really test and retest permissions, and other admins should be trusted anyway). There is the point about other admins being able to upgrade your community when using just the key (automatic credential auth). But that, again, is easily fixed just by making sure the permission is set correctly. I personally don't mind either way. The way it works now is fine for me, but I see how the convenience is wanted.
  13. 4.3 is just looking insanely good. Getting super impatient now, y u do dis? Awesome work, guys.
  14. Google can be pretty confusing tbh. In their docs, they state, - https://support.google.com/adsense/answer/1354736?hl=en So technically, using CSS to avoid displaying the ad on the login and register pages is something we want to avoid doing. We're not using display: none for responsive units, but rather not displaying the ad at all, on all screen sizes. But no request will be made to that unit, so they wouldn't particularly know that the site is using display: none to fully hide an ad unit anyway. I think the safest way would be to use @thompsone's code. With that said, there is a site I use display:none (and have for years) with zero problems. Still, I'm curious if this is something Google would openly say is okay to do, since it really doesn't seem like it should matter.
  15. Cemmos

    4.3: Videos

    Yes, I was confused for a moment by that comment. This is really only a good thing. Plus, it's not as if users couldn't upload videos before (if the administrator allowed). Still requires a download either way.
  16. OP is correct. It actually has to do with the trailing slash. It happens here on InvisionCommunity.com too (try another browser or private browsing, or just log out): https://invisioncommunity.com/register/ https://invisioncommunity.com/register The one without the trailing slash doesn't have social sign in options.
  17. For those that might be headed in the same direction and are looking for a workaround: Create a block for your legal pages, such as Terms Open up the reconfirmTerms template in your theme and find this: {lang="reg_rules_value"} Comment that out or delete it: <!--{lang="reg_rules_value"}--> In that same section, add: <a href='#termsContent' data-ipsDialog data-ipsDialog-title='{lang="reg_terms"}' data-ipsDialog-content="#termsContent"> View {lang="reg_terms"} </a> <div id='termsContent' class='ipsHide'>{block="terms"}</div> This will open up a modal once the link is clicked, allowing users to see your terms if they're on an internal page of your site. Using a block will allow you to not have to manage two versions of your terms, since you can use the block both in your terms page and your templates. Using a modal to pull an internal page itself, rather than a block, won't work as the system keeps the user locked out from viewing pages. Do the same thing for the privacy section and you're good to go. If you want to force members to accept your new terms/privacy, edit your block first and then go into the default settings for them, add random text, save it (don't force users to accept yet), then go back and remove that text and save it. Force them to accept this time. It's not super intuitive for admins, but it's not terribly complicated. Example:
  18. In an attempt to streamline the design of additional legal pages other than the default privacy/terms/guidelines, I decided to use the "external URL" option rather than the default pages. Using Pages, I put all of the new documents under a "legal" folder, similar to how you have it here at Invision: https://invisioncommunity.com/legal/ When the option comes up asking if I'd like to force users to accept the new terms/privacy, I confirm and select it. The issue with doing this is that these documents are not literally external to the Invision Community Suite, they are simply different pages within it. What happens is that, instead of showing the full text when a user tries accessing the website, it shows a link to "View our Privacy Policy": This is the correct thing to do. However, I'm assuming that by "external URL," it's meant in a literal way: a URL that's not part of the current website. What happens when you actually use internal pages is that the user clicks on the link to view the new policy, but it simply opens a new window where they're forced to accept the policy (without being able to view it, as they need to accept the policy before they can view pages within the site). This also locks them out from accessing the default terms, guidelines, and privacy pages since they need to accept them before they can see them. They cannot even sign out without accepting, as that is one of the triggers to the forced acceptance. In summary: Users should be able to see specific URLs regardless of whether they've accepted your new terms or not (default privacy/terms/guidelines pages and/or the ones supplied via the External URL selection). Users should be able to sign out, as an indication that they do not want to accept the new terms. "External URL" shouldn't be literal; we should be able to use internal pages and just forgo the default pages. Maybe a fourth option allowing those of us with Pages installed to select a specific page, which could be hooked into the system that knows we've made a change to the document. "Registration Terms & Rules" should have the same options as privacy and guidelines.
  19. Just chiming in that I'd also be interested in Amazon SES/SNS. Following plugin and will purchase the moment it's available. Great-looking plugin, by the way.
  20. The consent page linked in this article leads to a removed page. They seem to have made a typo (bases instead of basis) and didn't redirect the old URL to the new one.
  21. When you're creating or editing your page under Page Management, set the Page Filename to contact instead of having it as contact.html.
  22. Add to custom.css: #ipsLayout_header header { background-color: rgba(61, 94, 120, 0.6); }But unless you're adding a background image to your site or something, it's just going to look like a lighter blue color.
  23. ACP -> Community -> Forums -> Settings, then look under Topic Settings. That's for posts per page, but if you're also looking for topics per page, I haven't seen a setting for that. And unless it's been changed since around Beta 6, topics per page always sits at 25 per page.
  24. The members list technically isn't even gone though, so I'm not seeing the problem. The search functions exactly as a members list would depending on how you're filtering it. You can even take it one step further and rewrite the ugly search URL to /members/ if you wanted to and put it in your site's navigation. What superj707 recommended would be cool, I really like that idea. But it's not a members list. Technically, it would still work off of the search feature. We'd just style it differently. The topic quickly went from wanting a members list to wanting a better way to search for members.
  25. What you've mentioned is a really cool way to search for and filter members based off of specific criteria. Which I really like. And it's possible to do currently with what IPS has provided for us in their software, but would definitely take some time to implement.
  • Create New...

Important Information

We use technologies, such as cookies, to customise content and advertising, to provide social media features and to analyse traffic to the site. We also share information about your use of our site with our trusted social media, advertising and analytics partners. See more about cookies and our Privacy Policy