aaclayton (@aaclayton)

Forum Replies Created

Viewing 25 replies - 1 through 25 (of 36 total)
  • In reply to: bbbPress performance

    @aaclayton

    Participant

    @jjj said : “Hopefully in bbPress 2.4 or 2.5, I’d like to move the last-active-time meta queries to use post_modified in the posts table. That will remove some of our dependency on JOINing tables, and speed things up for you pretty significantly (at the cost of bastardizing the core post schema and its intentions a bit.)”

    I would be hugely in favor of this change, as it would have really tangible performance benefits. I understand what you are saying about misinterpreting the schema, but I think you can make a compelling argument that a reply being added to a topic is tantamount to that topic being modified for the purposes of discussion. If that eases your conscience at all…

    While you’re at it, it would also be worth considering saving the topic reply count in the ‘comment_count’ field, since they are functionally the same thing.

    @aaclayton

    Participant

    @dtbaker perhaps I’m misunderstanding, but you are adding a postmeta key=>value for every user that visits your forum? That seems fairly suicidal.

    The other problem I see, is that if you are pulling posts for which:
    bbpress_unread_posts_last_visit_X < _bbp_last_active_time

    You will be omitting topics that were created after _bbp_last_active_time, which are quite clearly also unread by the particular user.

    @aaclayton

    Participant

    @mech24 your site is one of the most aesthetically pleasing forums I’ve ever seen, major kudos. I first saw it a couple months ago when I was reworking the theme for my own site, and I was inspired by your setup to transition to a more “boundary-less” layout. I would love to read any tips/tricks that you are interested to share.

    In reply to: Tamriel Foundry Forums

    @aaclayton

    Participant

    A lot has changed with Tamriel Foundry over the past 9 months, but one thing that has stayed constant is our application of bbPress to power our popular forums. If you haven’t checked the site out yet, or haven’t visited recently, drop by and take a look!

    Going with bbPress isn’t always the easiest route to take, but it’s been really rewarding to work with from the development side of things, and it’s great to have total control over a forum platform that is seamlessly integrated into the overall site.

    http://tamrielfoundry.com (main site)
    http://tamrielfoundry.com/forums (bbPress forums)

    @aaclayton

    Participant

    @danblumenfeld, seems like that would work fine for small sites with a limited number of users and topics, but what about when you get into the thousands of users with thousands of topics? At that point you are saving an extremely long meta key for every user. I would worry about scalability, although I think that’s true of any attempt at solving this problem.

    As for pagination with jumping to the first unread reply, it might be more practical to simply give the user a “jump to last read reply” button using bbp_get_reply_permalink( $reply_id );

    @aaclayton

    Participant

    There’s a fairly substantial difference between “topics with no replies” and “topics with new (read UNREAD) replies” 😉

    Not to detract from the cleverness of your solution, but my point was that it can approximate “read topics” using browser side CSS, but it can’t generate a list of unread topics using PHP.

    @aaclayton

    Participant

    I agree this is a reasonably clever approximation for displaying which threads have been viewed by the user however there is one primary feature that most forum-goers look for in a “unread posts” feature that this does not successfully proxy for, which is the ability to query a list of topics which are unread and/or have unread replies.

    I played around with an alternative approximation of this feature by generating a list of topics with replies more recent than the user’s last recorded activity (from BuddyPress), but this also only simulates the functionality that posters are used to from a VBulletin style message board.

    @aaclayton

    Participant

    I’m still curious if anyone has an opinion on this issue. Is there a performance gain to be had from closing threads once they reach a certain number of replies and reopening fresh versions?

    @aaclayton

    Participant

    Thanks for pointing that out @netweb. I’m interested to see what comes of that discussion.

    @aaclayton

    Participant

    @JohnJamesJacoby, Thanks very much for confirming this! I found the ticket you created with a solution: https://bbpress.trac.wordpress.org/changeset/4657

    I’ll probably go ahead and push this through later today, great work and Merry Christmas!

    @aaclayton

    Participant

    Went through the whole disable all plugins, revert to default theme thing…no luck. Really could use a confirmation from someone else running WP 3.5 and BBP 2.2.3 that reply revision logging is working for them?

    @aaclayton

    Participant

    I’ve tried a few other odds and ends to sort this out, but it seems like the problem is simply that reply edits aren’t saving revisions to the posts DB. I don’t use any plugins that could be causing this disconnect. Is it possible this is simply something that is happening within bbPress core? Probably not, because I didn’t see any other reports of this issue, but maybe nobody has noticed?

    Can someone else using WP 3.5 and BBP 2.2.3 confirm that reply revision logging is working on their install?

    @aaclayton

    Participant

    OK, doesn’t seem to be a permissions issue. I can’t get reply revisions to save to POSTS even as the administrator/bbp_keymaster.

    Also disabled + re-enabled “Allow topic and reply revision logging” to try to “reset” the revision system, but no luck.

    @aaclayton

    Participant

    I would like to weigh in here and agree with @xmasons sentiment. The “Members” plugin, for example, is a great example of role/capability management done right IMHO. I am unable, however, to modify the capabilities of the bundled bbp roles within the Members interface.

    What I have been forced to do is create my own role for “forum moderator” with additional capabilities added on top of the bbp_moderator defaults. The resulting outcome is that I am deliberately not using the bundled bbPress role, which effectively defeats the purpose of having implemented it in the first place.

    I’m not sure why the new bbp roles are incompatible with the Members plugin, I get the following error when attempting to modify their available caps.

    Fatal error: Call to a member function has_cap() on a non-object in /home/tamrielfoundry/tamrielfoundry.com/wp-content/plugins/members/admin/role-edit.php on line 31

    @aaclayton

    Participant

    Same issue here, also a bit scared to remap user roles. I looked into it, turns out as part of the new bbPress update that restructured some of its own user roles, it actually removed certain capabilities from existing roles. For example, my site-wide administrator role didn’t have the capability to read_hidden_forums or read_private_forums, in addition to 20 or so other bbPress specific capabilities.

    If you are using default (or custom) WordPress roles in a bbPress environment, you may need to go in and grant them some of the bbPress specific capabilities.

    @aaclayton

    Participant

    @chromancer, thanks for digging into this. I worked out an alternative solution for hiding a private forum category, but it looks like you’ve nailed the issue. Might be worth working up a ticket for the trac on this one.

    I can think of a number of scenarios in which having a private forum category would be ideal, this functionality would make a lot of sense to be supported in core IMHO.

    @aaclayton

    Participant

    I anticipate that’s not going to be feasible, because it would require him to count whether individual replies have been read, instead of simply toggling if a topic is read or not.

    The database implications of flagging read status at the reply level are a bit scary.

    @aaclayton

    Participant

    Exact same problem. Have restored topics to be searchable, but searching for “&post_type=topic” just pulls the topic archive page.

    @aaclayton

    Participant

    Pippin, thanks for sharing your thoughts. Sorry the formatting of my original post was so hideous, I’m not sure what happened. I guess maybe line breaks got stripped after getting run through spam filter or something?

    It’s definitely a tricky problem, I had thought about trying to write an “unread posts” function a while ago and decided against it because I was worried about scalability and database requirements. I wonder how some of the dedicated forum platforms handle this sort of feature.

    @aaclayton

    Participant

    Hi Pippin, great work on this plugin so far. Thank you. I read through the code and tested it out. The plugin works great, and I commend you for your hard work on this. I wanted to provide a bit of feedback in case you are planning any further revisions, just to weigh in with my 2c: 1) I realize you needed somewhere to hook the “mark as read/unread” link, and by default in bbp_theme_compat no action hook is provided in a topic header. Hooking it onto the subscribe link wedges it between subscribe/favorite and is overall a bit awkward for templating. I’m not sure what a better default solution would be, but personally I felt the need to unhook this and manually place the toggle button somewhere more appealing. 2) A standalone function to display a loop of unread topics would be great. show_unread_topics() is purpose built for the bbpress user profile, but under many circumstances users might want to call this list elsewhere (if we are using BuddyPress profiles for example). Personally I created a “View Unread Topics” page that functions similarly to the “Recent Topics” archive. Anyways, including a function for just the unread topics loop (with pagination) would be a nice addition for template flexibility purposes. 3) For a site with thousands of topics, is having that bulky a “_bbp_mar_read_ids” entry in meta a concern? 4) The plugin serves a nice function of allowing a user to track whether or not he/she has looked at topics which are posted. However, it seems to me that full “view unread posts” functionality would entail clearing resetting the “read” flag when the topic is updated with a new reply. What about saving each “read” ID to meta as: post_id?num_replies where num_replies is the number of replies to the topic when the user marked it as read. When a topic is called you can explode out how many replies it had when the user first marked it. If the topic now has more replies than when it was marked, you can override the “read” flag and reset it to unread. Probably not a very elegant solution, but I think what most users would be interested in is being able to generate a list of threads with unread content, not necessarily just unread topics. Anyways, thanks very much for your work on this. I’ll be keeping an eye on how this project develops. Andrew

    @aaclayton

    Participant

    Just got hit with this issue myself. Thought I’d throw my 2c on the pile.

    If a category or forum has children, and no child is public, I run into some strange bugs where the category disowns all its children.

    I’m trying to have a hidden category with private subforums for administrative purposes, ideally I could have:

    Category = hidden
    Subforum = private
    Topics in Subform = public

    Unfortunately both of these setups hit the bug documented above. The two setups I’ve found which works are either:

    Category = hidden
    Subforum + Topics = public

    This has the undesirable side effect of subscribers being able to find the topic even though it’s nested in a hidden category.

    OR:

    Category = hidden
    Subforum = private
    Topics = private

    This seems to work OK, but it requires that every new topic in the private subforums be switched to be flagged as private in the wp-admin area.

    I’m gonna keep working on this, see if I can figure out a solution.

    @aaclayton

    Participant

    Well…it seems like you want a working solution more than an ideal one, so here goes. You could replace archive-forum.php with:

    http://pastebin.com/NktqDANZ

    Plus anything else you explicitly want in the page.

    DISCLAIMER: I don’t actually advise doing this. I feel like there are probably better ways to achieve the categorical forum listing that you describe. I implemented a categorical forum listing on my own site (http://tamrielfoundry.com), using the general method outlined by Lynq in this thread:

    https://bbpress.org/forums/topic/customising-bbp_list_forums-last-poster-block/

    What you are asking for is outside the default scope of bbpress functionality. It can definitely be modded in using some custom php functions and templates.

    In reply to: Thread Text Size

    @aaclayton

    Participant

    Its because the first line of each post isnt getting wrapped in a paragraph tag for some reason. A quick css fix could be to assign a font-size for bbp-reply-content.

    @aaclayton

    Participant

    If you have your theme take control of the bbpress templates using the theme-compatibility settings you can change the header names in the various loops, specifically loop-forums.php and loop-single-forum.php

    In reply to: Avatar Upload

    @aaclayton

    Participant

    Not sure what the answer to your question is, but for what it’s worth the Simple Local Avatars plugin works flawlessly with bbpress.

    https://wordpress.org/extend/plugins/simple-local-avatars/

Viewing 25 replies - 1 through 25 (of 36 total)