有办法重新排序帖子吗?

is there a way to reorder posts in a topic? the problem occurs when threads are created by select + move posts by multiple moderators.

8 个赞

This would require the ability to set timestamp on the posts cc @sam @tgxworld

Why? Are the posts always supposed be in order of time? …because that’s not what I’m seeing.

I reproduced by selecting 10 posts from the bottom of a long topic and moving them into a new topic. Then I selected 3 from the top of the same topic and moved them into the same new topic. The 3 are showing up at the end, the 10 are showing up above the 3.

If that’s not what you were implying, ignore this post :smile:

3 个赞

Oh yes I forgot about that. Good point. We thought it would be bizarre if previously sequential posts had other posts randomly interspersed with them. So a pure time order of insertion when splitting topics seemed like a bad idea…

2 个赞

Your decision was a good one, and the ability to move posts to an existing topic is awesome way of cleaning up the site, but it gets confusing if you can’t reorder.

It helps a ton when trying to keep topics on-topic.

8 个赞

Hi, I just had the same problem and, I think, an easy an elegant solution would be to allow for posts to be “moved from one topic into the same topic”. At the moment it is not possible to press “Move into existing topic” and then enter the same topic ID as the original topic (e.g. moving posts from ID 10820 to ID 10820, for them to appear at the end of the post list).

What do you think about it?

3 个赞

Today, I was trying to illustrate a potential use case for Discourse. We have some “weekly update” communications from various teams that are currently sent via email. I wanted to show how this would look if we did this in Discourse instead, so I was going through my inbox and copying/pasting messages into an example topic in Discourse. I wanted to change the dates to match the original email dates. This way the “gaps” and the “timeline” in the progress bar would look more “real”.

Would be cool if we could do this. (Might come up again if there’s enough interest in actually migrating old content into Discourse, though perhaps that will just be done by some other means).

4 个赞

Not sure if this is the right place for this query but it was pointed out to me in reply to a topic I recently created. As I stated:

I’ve got a few dozen comments that I’m manually importing (we’re talking copying and pasting into the comment box) from Commentics to Discourse. Supposing a previous user from Commentics has set up an account with my new Discourse install I discovered that I can change ownership of the comment from me (as the copier and paster) to said user. What I’m wondering is, now that I’ve done that is it also possible to change the timestamp of said comments in a similar way to how it’s possible to change the timestamp of a topic? If not, would it be possible via some non-GUI method?

In the process of moving some wikis to discourse, I came across this issue. I’d like to do what I’ve seen here on meta where a topic has a series of wiki posts in it. This is helpful because it lets those that follow (including our future selves) to quickly edit a section without having to scroll through loads of markdown.

Reordering these posts after they have been posted becomes a challenge. Am I right in understanding that the “official” method for slotting in a post later is to select the ones that should go below, move them to a new temporary topic, then move them back again after adding the new post?

Or, if all the posts you want to reorder exist already, you’d move them into new temporary topics and then move them back in order you want?

This somehow seems… complicated. Also, it seems to leave behind artifacts like this that I am not seeing a way to remove.

Is there something I am missing here?

5 个赞

Dear all, apologies for resuming a quiet topic after some time.

For our community the ability to change the timestamp of single posts is quite important. Let me explain my case.
My community deals with space missions. I have developed a small bot that opens a new topic via API when a mission is “officially” announced, but this does not prevent our users discussing that very same mission quite in advance with respect on the API-created opening of a new topic.

Now, our need is the ability to merge the topic created via API with the one created (earlier) by our users, but having the first post of the former as the first topic of the merged topic.

As the API-created topics are (usually but not always) having one post only, at the moment our workaround is to change the timestamp of that topic and only after proceed with the merger. The situation becomes quite more complicated in case some user decides to comment in the the API-created topic before we merge. In this case a shift back of the timestamp will “drag” all posts back in time, and this is something we really don’t want.

Long story short, the abiliy to merge topics and then cherry pick posts we want to move up/down in time would be precious. If doing this in UX is considered too much of an effort, no worries. I think that even a dedicated rake task (something that takes a post_id and a ISO date as parameters) that after the change calls for the existing rake task to reorder posts in a topic could be enough.

4 个赞

So, the posts:reorder_posts rake task isn’t enough for you? You can change post timestamps via API or UI before executing that task.

3 个赞

Yes and no.

As said, I need a specific post to be the first of the merged duscussion thread.
Using the posts:reorder_posts option would place this “special” post right where it belongs in order of time, but that would be a no go.
So the list of actions should be:

  1. apply a new timestamp to a specific post (or posts)
  2. merge the topics
  3. run posts:reorder_posts rake task to put everything where it belongs

The change of timestamp available today is applicable only to an entire topic, and all posts in that topic will be re-timestamped according to the delta time applied.

3 个赞

Hey Folks,

I just got bitten by this one on the Keyboard Maestro Forum.

We had a user leave tracks all over related to the same task, and I consolidated them. (A pesky task in and of itself.)

Unfortunately the order of posts is quite far off.

While it would be nice to be able to drag and drop to reorder, something like move-selected-post(s)-to-top and/or move-selected-posts(s)-to-bottom would be far better than nothing.

-Chris

1 个赞

Any progress on this? The use-cases are compelling and I have recently run into the same issue trying to consolidate posts. @gerhard Where can I find out how to change the timestamp of a reply? There is one suggestion here, but it is convoluted. I assume that if I have access to the server, it might be easier (but I don’t want to break anything).

1 个赞

I, too, would like to see progress on this. I split off several replies that were a bit off-topic, but by themselves, they needed some context. So I tried to add a post quoting the relevant content from the original topic, but that post was now at the bottom of the posts I moved.

In the end, I deleted it because it didn’t fit out-of-place.

1 个赞

Here’s a little help on how you change the time stamp for your post. Depending upon whether it’s a new topic (original post) or a reply determines how much manual effort it will take.

You can also search here on Meta for change post time stamp and get quite a few results to check out. Maybe one of those will have exactly what you want.

1 个赞

Thank you, @JimPas, the ‘work around’ for re-ordering replies led me to my final, very easy solution. I created a new post with my introductory references to the original, then moved the replies from the original split to the new topic. After that, I deleted the original split.

I did need to update the split-reference link in the original topic to point to the correct topic since I had deleted the intermediate one. Going forward, if I want to add an introduction again, I should create that topic first, and then move the relevant replies over to it. This should prevent the stale link issue.

3 个赞

有什么进展吗?
你应该添加“选择帖子”。

1 个赞

我尝试了这个变通方法,但如何删除第一个介绍性引用而不删除整个帖子?

我经常遇到用户在现有帖子中发帖,我需要将他们分离到自己的帖子中,同时又不丢失原始日期顺序,因此此功能很重要。希望能够实现。

1 个赞

你好 @ianm,我不确定你到底想实现什么。在我的例子中,我实际上是在拆分主题之后删除了我最后添加的上下文帖子,因为它顺序不对。

主题的主帖(在不删除整个主题的情况下)无法被删除。但是,当你拆分主题时,你可以在将帖子发送到现有主题或新主题之间进行选择。如果你先创建你的介绍性帖子作为新主题的开头,然后拆分到你的新主题,那么你将拥有第一个帖子,并可以随心所欲地处理它。否则,你拆分后的第一个回复将成为该主题的开头。

我最终采用了第二种方法。清楚了吗?

1 个赞