1

In our Craft Pro site we've enabled public registrations and allow anyone to create an account and make entries in a "blog" channel. These entries are then filtered via URL segments - so /blog/ will show a listing of entries by each user. A user can create different entry types (video/audio/text/etc) which are handled by different templates.

I'm trying to add the ability for a user to "reblog" or "repost" another user's entry - I'm not sure of the best way to do that though. The ideas I've had are:

  • Create a new entry type (reblog), with a field that stores a reference to the original entry ID and allows the user to add a comment
  • Use a custom plugin to create an entry as above
  • Clone the original entry data into a new entry and allow the user to edit it
  • Create a new channel for reblogs which the user doesn't have permission to post to via the CP, and try to hack around that using a plugin and frontend forms

My issue is that, for usability reasons, I'd very much prefer to hide the original entry ID reference field (if this is handled through the CP) but I don't know if that's possible? We're relying entirely on the CP for creating entries at the moment, so it'd be a bit clunky if we moved the handling of reposts to a separate section of the site.

Also if I simply reference the original entry ID in a field, while it would be cleaner than cloning the original entry's content (assets/etc) and creating a new post for the current user, I'll most likely still have to create a new entry type (reblog) to house the new post, which would then appear in the "Entry Type" dropdown when accessing the create entry page, which would be pretty confusing to the end user, unless I made the original entry ID some kind of custom FieldType with a live-search sort of feature?

I'm beginning to think that perhaps the best way is to handle this through a plugin / frontend form, but that feels super hacky.

Any suggestions on how best to approach this issue? I'm totally open to any and all ideas!

  • I'm a little confused... do users "reblog" from their authenticated account on the front-end? Or are you saying that all users have access to the CP? – Brad Bell Mar 8 '15 at 19:22
  • Sorry - users have access to a limited version of the CP Using these permissions - so they need to register and have an authenticated account before they can do any kind of interaction with the site. – Drew W Mar 8 '15 at 22:47
0

I think it's going to be a lot easier if you go the custom plugin route with your own front-end forms for everything. Not hacky at all!

  • Okay, cool, I'm thinking the same after having a think over the weekend. Thanks for the advice!! – Drew W Mar 9 '15 at 0:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.