Topics Per Page plugin – new problem
-
Re-posted my comment from another thread to here….thought it might get better exposure this way to help find a solution sooner.
When I am on my Front Page and click on any of the other pages numbers (2, 3, Next>>, etc) that are inserted by this plugin, I get this error:
Warning: preg_replace() [function.preg-replace]: Compilation failed: nothing to repeat at offset 0 in /[myURL]/Forum/bb-includes/template-functions.php on line 925
This only happens on my front-page.php. Clicking on the numbers in my forum.php or topic.php works just fine – goes to that page number.
Any ideas?
-
Always try to post questions like this on the page for the plugin itself in the extend section so I’ll see it sooner.
Are you using pretty-permalinks? Give me an example url from one of the links off the front-page.
You reported this working the other day so I am confused as to what changed. Did you change the plugin in any way?
Hi _ck_ – thanks for helping.
Here is a link from the front page to a topic:
http://www.travel-writers-exchange.com/Forum/topic.php?id=43
I reported it working because the numbers showed up exactly how I wanted to see them, but I’m embarrassed to say that I didn’t actually “click” on the numbers at that point to be sure they actually worked correctly.
I didn’t change the plugin in any way. It does work perfectly on the other pages – the individual forum list of topics (forum.php) and the topic itself with the posts (topic.php)……I only get this error if I click on the additional page numbers on the front page.
(p.s. – I would LIKE to use pretty permalinks, but have not been able to get that working, even after reading everything I could find here on the subject and trying all of the suggestions – I’m hoping a future version of bbPress will fix this issue, but for now I’m stuck with the ugly permalinks)
Hmm that’s a really strange problem that I am going to have to explore a bit later.
You are using the final copy of the plugin correct?
And you didn’t modify it at all?
Even though I can’t reproduce the problem on my copies of bbPress, this may be an internal bug since I can workaround the issue by doing this (note the
?&
)http://www.travel-writers-exchange.com/Forum/?&page=2
ps. the best way to do pretty-permalinks is to use the .htaccess method with “rewrite” where you have to copy and paste the rules that bbPress offers here:
http://www.travel-writers-exchange.com/bb-admin/Forum/rewrite-rules.php
Once you do that, then you have to turn on the option in your bb-config.php
Yep I downloaded the most current version of the plugin, and did not modify it in any way at all.
I did try using the mod_rewrite instructions (called the file rewrite-rules.php from my browser, copied and pasted the resulting rules into my .htaccess file, and then went to settings and chose the pretty permalink), but it just results in 404 errors when I click on any of my links.
I’m certain that’s because the rewrite rules are adding in to the URL an extra level as such:
what should be /Forum/forum-guidelines-please-read/ becomes /Forum/topic/forum-guidelines-please-read
Same for the forums – it is inserting and extra /forum into the path. Unfortuanately I don’t know enough about mod_rewrite (okay really nothing at all about it) so I am not able to correct the rules myself. OR if the problem is not with the rewrite rules but something in the core code, that’s beyond me too. I just know it’s adding something to the path that shouldn’t be there.
The rewrite rules are correct to add the topic and forum in the URI. If it didn’t, bbPress would not know based on the permalink if you were talking about a topic of a forum. So, that part of it is correct. You have another issue causing the permalinks to not work for the forum. Maybe a .htaccess file one directory up?
You need to make sure the .htaccess is in /Forums/ and not the root of the entire site. Your host’s directory structure is a little strange but I don’t think it will interfere with mod_rewrite.
There is a possibility that there is a rule in the root .htaccess that is interfering the lower .htaccess. But let’s first make sure it’s in the correct directory.
By the way:
/Forum/topic/forum-guidelines-please-read
is correct.
/Forum/forum-guidelines-please-read/
is wrong.
bbPress needs to know that the string following is a topic, otherwise it doesn’t know what to do with it (it might be a forum).
/Forum/forum/forum-name
is also legit.That’s probably the problem – maybe I misinterpreted the instructions, as I WAS adding those rules to the .htaccess file in my root directory, not in the /Forum directory.
However, I just tried adding an .htacces file to my /Forum directory, and pasted the rules into that, but that gave me a 500 Internal server error, so I deleted that file again…..
There must be something I’m missing still……..if I could get the pretty permalinks working, would that fix my problem with the page numbers?
It will indirectly fix the problem with page numbers.
Doesn’t actually fix the bbPress internal issue but avoids it instead. I still don’t understand why I can’t reproduce the error on my installs.
You are probably getting an internal server error because of a conflict with a rule in the root htaccess. Make sure you don’t still have the old rewrite rules in the root one. You can also post that root htaccess here for me to look at. Be sure to put it between code backticks.
You have a couple different problems. I have no idea if fixing the permalinks will fix the page numbers.
If you have an .htaccess in the Forums directory and there is a 500 error, then there was a problem with that file. You can verify the syntax of an .htaccess file here.
http://shop.alterlinks.com/htaccess-validator/htaccess-validator.php
Well it might validate but there still might be a conflict.
Has to be examined by hand.
With a 500 error, I figured it would be a pretty blatant syntax error (or it’s a directive that’s not allowed, but if it works on the host in a different directory, I figured it would not be an allowed directive problem). Can’t verify that it will work, but I think it can tell you if it will error out.
Well the logic is that her webroot works, it’s just the forums that 500 when the rewrite rules are present in the lower directory.. To me that’s a rule conflict that apache can’t resolve.
ps. all my post editing right now reminds me of another plugin I need to make – “look behind” when editing. Of course if ajax editing was put back in, we wouldn’t need that.
Okay lets see if this sheds any light:
here is the htaccess file from my root:
RewriteEngine On
RewriteCond %{http_host} ^travel-writers-exchange.com
RewriteRule ^(.*) http://www.travel-writers-exchange.com/$1 [R=301,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPressHere is the htaccess I would put in my /Forum directory, if it didn’t trigger the 500 error
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /Forum/
RewriteRule ^forum/([^/]+)/page/([0-9]+)/?$ /Forum/forum.php?id=$1&page=$2 [L,QSA]
RewriteRule ^forum/([^/]+)/?$ /Forum/forum.php?id=$1 [L,QSA]
RewriteRule ^topic/([^/]+)/page/([0-9]+)/?$ /Forum/topic.php?id=$1&page=$2 [L,QSA]
RewriteRule ^topic/([^/]+)/?$ /Forum/topic.php?id=$1 [L,QSA]
RewriteRule ^tags/([^/]+)/page/([0-9]+)/?$ /Forum/tags.php?tag=$1&page=$2 [L,QSA]
RewriteRule ^tags/([^/]+)/?$ /Forum/tags.php?tag=$1 [L,QSA]
RewriteRule ^tags/?$ /Forum/tags.php [L,QSA]
RewriteRule ^profile/([^/]+)/page/([0-9]+)/?$ /Forum/profile.php?id=$1&page=$2 [L,QSA]
RewriteRule ^profile/([^/]+)/([^/]+)/?$ /Forum/profile.php?id=$1&tab=$2 [L,QSA]
RewriteRule ^profile/([^/]+)/([^/]+)/page/([0-9]+)/?$ /Forum/profile.php?id=$1&tab=$2&page=$3 [L,QSA]
RewriteRule ^profile/([^/]+)/?$ /Forum/profile.php?id=$1 [L,QSA]
RewriteRule ^profile/?$ /Forum/profile.php [L,QSA]
RewriteRule ^view/([^/]+)/page/([0-9]+)/?$ /Forum/view.php?view=$1&page=$2 [L,QSA]
RewriteRule ^view/([^/]+)/?$ /Forum/view.php?view=$1 [L,QSA]
RewriteRule ^rss/?$ /Forum/rss.php [L,QSA]
RewriteRule ^rss/topics/?$ /Forum/rss.php?topics=1 [L,QSA]
RewriteRule ^rss/forum/([^/]+)/?$ /Forum/rss.php?forum=$1 [L,QSA]
RewriteRule ^rss/forum/([^/]+)/topics/?$ /Forum/rss.php?forum=$1&topics=1 [L,QSA]
RewriteRule ^rss/topic/([^/]+)/?$ /Forum/rss.php?topic=$1 [L,QSA]
RewriteRule ^rss/tags/([^/]+)/?$ /Forum/rss.php?tag=$1 [L,QSA]
RewriteRule ^rss/profile/([^/]+)/?$ /Forum/rss.php?profile=$1 [L,QSA]
RewriteRule ^rss/view/([^/]+)/?$ /Forum/rss.php?view=$1 [L,QSA]
</IfModule>I’ve verified that there are no errant spaces or line breaks……it doesn’t look to me like there are syntax errors or conflicts, but I’m no expert……
Ah I forgot it’s wordpress integrated – that’s your whole problem with 500 error. I have to lookup the workaround.
(removed)
I really wish I could say that this worked, but sadly it did not.
I made the changes to my .htaccess file in the root, and the root site still worked (which is good), then added back in the .htaccess file to my /Forum folder, but still got the 500 error. Even when removing all but the /Forum in the line added above in the root .htaccess.
I’ll try anything you care to suggest though, so don’t give up and I won’t!
Try replacing that new line as:
`RewriteCond %{REQUEST_URI} !^/Forum/
(note the entire line has changed)
By the way, once we do get this working, you’ll need to add these three rules to the .htaccess in
/Forum/
because bbPress’s rule generator is not complete (and for my plugin to work)RewriteRule ^topic/?$ /Forum/ [R=302,L,QSA]
RewriteRule ^forum/?$ /Forum/ [R=302,L,QSA]
RewriteRule ^page/([0-9]+)/?$ /Forum/?page=$1 [L,QSA](put them just before
</IfModule>
)No luck Here is my root .htacces:
RewriteEngine On
RewriteCond %{http_host} ^travel-writers-exchange.com
RewriteRule ^(.*) http://www.travel-writers-exchange.com/$1 [R=301,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/Forum/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPressRoot (WP install) works fine, but when I put the .htaccess file in /Forum then I still get the 500 error….
I have to run out but will be back in about 1/2 hour…..
There is a chance your host has multiviews already turned on by default so let’s make sure it gets turned off.
At the start of the root .htaccess try putting
Options -MultiViews
Other than that, I’m out of ideas for today and will have to “sleep on it”.
Sigh…..still no luck……I put that as the first line of my Root .htaccess, then copied the /Forum htaccess file over to /Forum, still getting 500 error……..
I do appreciate your time and efforts – maybe when you wake up the morning a new idea will be dancing around in your head……
Oh! I just realized your IP is on 1and1 (1&1).
There were reported problems with them.
I’ll have to research.
You can try also putting
Options -MultiViews
at the top of the .htaccess in the /Forum/ directory too. Note it goes above and before the first<if
(first line)Sorry! I guess I should have mentioned 1&1 – didn’t realize that they might be part of the problem…….I’ll try calling their Tech Support to see if they can help, however, I’ve been with them for around 5 years with a lot of domains, and while I’m happy with their hosting packages, their Tech Support is lousy. They used to be very good, but since they moved it to India I’ve had a very poor experience with them – very rarely do I get anyone who knows anything about computers, let alone how to actually fix a problem…..and something advanced like server configuration? I’m not holding my breath…..
I doubt your host’s techs will help you with something so specific other than telling you to disable multiviews.
Apparently others here who use 1and1 solved it so you probably can too.
By the way, you are adding
$bb->mod_rewrite = "slugs";
to the bb-config.php correct?
Sorry for the delay in responding – for some odd reason my primary (desktop) computer logged me out of this forum and would not let me log back in….tried many times making certain I was typing my username/password correctly…….so I had to go boot up my laptop…
Anyway, to answer your question, no – I read all the instructions on pretty permalinks and did not see that – I thought I read most of the posts on the issue but must have missed that. In any case it did not work for me….
I put
$bb->mod_rewrite = "slugs";
into my bb-config.php and uploaded – this of course changed my default permalinks to the name-based ones (great) but when I click on the links, I get this error message:Multiple Choices
The document name you requested (/Forum/topic/article-titles) could not be found on this server. However, we found documents with names similar to the one you requested.
Available documents:
/Forum/topic.php/article-titles (common basename)
Please consider informing the owner of the referring page about the broken link.And of course if I have the .htaccess file uploaded, I still get the 500 Server error
- You must be logged in to reply to this topic.