Jump to content

Error with furl changes


Spanner

Recommended Posts

On 06/06/2017 at 5:39 PM, Adriano Faria said:

You can change the furl.json file in the applications/APP/data folder and rebuild cache later. But I'm not sure it works. 

Hi Adriano,

The problem exists for your app Classifeds

When we change classifieds par something else in the url customization it gives :

/classifieds/somethingelse/ instead of /classifieds/

Tx for your help !

Link to comment
Share on other sites

Just now, Durango said:

Hi Adriano,

The problem exists for your app Classifeds

When we change classifieds par something else in the url customization it gives :

/classifieds/somethingelse/ instead of /classifieds/

Tx for your help !

Hi Durango.

Classifieds is not mine anymore and this is a CORE issue, as explained in this topic (page 1) by a IPS staff.

Link to comment
Share on other sites

Ok so I've found a way around this, but it's more for advanced users. @forumdev99, this should work for you:

For FORUMS: Find the folder public_html/applications/forums/

Open up the furl.json in your chosen editor (I use Brackets). Inside this file, you should find the following code:

/**
 * Friendly URL Structure
 *
 * For each value in the $furl array:
 *	The key should be the "SEO Template" - an identifier which you'll use when displaying a URL.
 *	The value should be an associative array with two or three elements: 'friendly' and 'real', and optionally 'verify':
 *		'friendly'
 *			The friendly URL to use - encase variables in {curly braces} containing a symbol, followed by the name of the parameter that matches in the "real" URL
 *			The symbol should be # for numbers or @ for strings
 *			For example, if the "real" URL contains id=XXX, where XXX is a number, you should include {#id} somewhere in the friendly URL.
 *			You can also use the tag {?} for the "SEO Title" (that is, any variables that shouldn't be part of the real URL, such as the name of the topipc being viewed).
 *			If you want to support more than one SEO Title, you can give them zero-indexed keys like so: {?0} {?1} {?2}
 *		'real'
 *			This should be the base of the real URL. You should not include parameters which will be parsed out from the friendly URL.
 *      'verify'
 *          This should be the name of a class that contains a loadFromUrl() and an url() method.  The dynamic URL (i.e. app=core&...) will be passed to loadFromUrl(), and the url()
 *          method will subsequently be called to retrieve the correct URL, ideal with ActiveRecord pattern classes.
 *
 * IMPORTANT: Ensure values are listed with the most specific ones first. This is to ensure that non-FURL redirects are done correctly. For example, if you have these FURLs:
 *	/index.php?app=myapp&module=mymodule&controller=mycontroller&do=myaction	->	/myfolder/myaction
 *	/index.php?app=myapp&module=mymodule&controller=mycontroller				->	/myfolder
 * They must be provided in that order, otherwise the former will redirec to /myfolder/?do=myaction rather than /myfolder/myaction
 */
{
	"topLevel": "forums",
	"pages": {
	    "forums_rss": {
		    "friendly": "forum/{#id}-{?}.xml",
		    "real": "app=forums&module=forums&controller=forums&rss=1"
	    },
	    "forums_forum": {
		    "friendly": "forum/{#id}-{?}",
		    "real": "app=forums&module=forums&controller=forums",
		    "verify": "\\IPS\\forums\\Forum"
	    },
	    "topic_copy": {
	        "friendly": "topic/{#id}-{?}/copy",
	        "real": "app=cms&module=database&controller=topic"
	    },
	    "forums_topic": {
		    "friendly": "topic/{#id}-{?}",
		    "real": "app=forums&module=forums&controller=topic",
		    "verify": "\\IPS\\forums\\Topic"
	    },
	    "forums": {
	        "friendly": "",
	        "real": "app=forums&module=forums&controller=index"
	    },
		"topic_create": {
		  "friendly": "submit",
		  "real": "app=forums&module=forums&controller=forums&do=createMenu"
		},
		"topic_non_forum_add_button": {
		  "friendly": "startTopic",
		  "real": "app=forums&module=forums&controller=forums&do=add"
		}
	}
}

The things to change here would be the "friendly" parts. For instance, to change it from yoursite.com/forums/ to yoursite.com/forum/, replace "topLevel": "forum".

This is in the same location for -all- installed applications. After reuploading the file to the same place, you will need to run "Something isn't working" in your "System -> Support" page. After that, you can edit or install language files to deal with the rest of it.

 

Regards

Link to comment
Share on other sites

I tried editing /applications/forums/data/furl.json as suggested, and cleared cache via support system, and unfortunately, the URLs still can't be changed. 

They revert back to the default when I change them in the 'friendly URLs' section of ACP, and they reflect what is in the ACP on the live site.

This is a tough issue as we want to upgrade to 4.x without breaking all of our existing URLs - we already went through that once when migrating from another Forum software and it killed our traffic for a long time. Still not at the level it was before moving to IPS.

Thanks again for taking a stab at this - I'm willing to try anything, and willing to pay someone who can find a hack that works.

Link to comment
Share on other sites

On 10/11/2017 at 7:32 PM, forumdev99 said:

I tried editing /applications/forums/data/furl.json as suggested, and cleared cache via support system, and unfortunately, the URLs still can't be changed. 

They revert back to the default when I change them in the 'friendly URLs' section of ACP, and they reflect what is in the ACP on the live site.

This is a tough issue as we want to upgrade to 4.x without breaking all of our existing URLs - we already went through that once when migrating from another Forum software and it killed our traffic for a long time. Still not at the level it was before moving to IPS.

Thanks again for taking a stab at this - I'm willing to try anything, and willing to pay someone who can find a hack that works.

Really? I was able to change all of my URLs using this trick.

Link to comment
Share on other sites

17 hours ago, Lord Nowe said:

Really? I was able to change all of my URLs using this trick.

I am able to change a couple of them, actually, so let's focus on one in particular that won't change:

I need this URL /forums/topic/{#id}-{?}

..to look like this: /topic/{#id}-{?}

But when I change it and save, it reverts back to: /forums/topic/{#id}-{?}

In /applications/forums/data/furl.json it looks like this:

    "forums_topic": {
            "friendly": "topic/{#id}-{?}",
            "real": "app=forums&module=forums&controller=topic",
            "verify": "\\IPS\\forums\\Topic"
        },

..are you able to change this specific URL in your board?

BTW I am running IPSv4.2.5

Link to comment
Share on other sites

1 hour ago, forumdev99 said:

I am able to change a couple of them, actually, so let's focus on one in particular that won't change:

I need this URL /forums/topic/{#id}-{?}

..to look like this: /topic/{#id}-{?}

But when I change it and save, it reverts back to: /forums/topic/{#id}-{?}

In /applications/forums/data/furl.json it looks like this:


    "forums_topic": {
            "friendly": "topic/{#id}-{?}",
            "real": "app=forums&module=forums&controller=topic",
            "verify": "\\IPS\\forums\\Topic"
        },

..are you able to change this specific URL in your board?

BTW I am running IPSv4.2.5

 

The issue here is the top-level portion of this, the "topLevel": "forums", bit will always be included in any URL while inside of the Forums app. I do not believe this part can be changed while this current bug persists.

 

Edit: On 2nd thought, this might be able to be done by using the "Rules" and "URL Paths" addons:

 

 

 

You would probably be able to do this with these two applications. There is an APA-Lite, but that only supports up to 25 URLs IIRC.

Edited by Lord Nowe
Link to comment
Share on other sites

  • 2 weeks later...
  • 3 weeks later...
38 minutes ago, forumdev99 said:

I haven't been able to figure out where to even begin w/ APA and Rules to make this work.. 

Maybe I can help or maybe the mod authors can. Essentially I just have Rules which say "When member posts in X app, add new canonical URL of Y". Thats then forwarded on to the APA. But seriously if IPS fixes this, it wouldn't be needed.

Link to comment
Share on other sites

I've just tried doing this for DevFuse's Collections, as one of the FURLs didn't want to loose the prefix after I changed the name of the application - and it has worked!

I've had to click on "revert" to have it reset to no prefix though and then enter it again with the new prefix.

Thanks!

Link to comment
Share on other sites

  • 3 months later...
  • 2 months later...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...