When you only have one or two content creators then Joomla is pretty good but when you increase the number to ten or twenty with their content distributed across the site it can be improved.
The site for this project has approximately 35 content owners who will have a mix of content and calendar events (created with JEvents). They are all non-technical users and I really don't want to give them back end access.
While experimenting with JEvents on the site to find some of its hundreds of undocumented and hidden features I didscovered that it already did what I needed - at least for the calendar events. A nice simple menu item that will display all the events that a user "owns". From one quick menu item they can see all their calendar events and follow a link to make any updates or modifcations.
Now if only I had the same for regular content articles
I did take a look at some extensions that claim to offer front end article management but all they really do is to transfer the joomla admin experience to the front end. That's not what I want or what my users need.
After taking a look at the JEvents code I realised it wouldnt be too hard for me to write a new menu item type for com_content to produce a list of all the users articles. But to do it properly it would really need to be something added to the Joomla core and not an extension. Unfortunately for reasons out of my control I can't contribute that for another 58 days and by then it would probably be too late for the next Joomla release.
As I can't wait that long I started to look again for an existing solution. It wasn't a very productive search until I spotted a comment from Michael Babker in a forum post.
"The Joomla core Latest Articles module has that option".
I couldn't believe it. I was pretty sure that I knew all the core options and I don't remember seeing this. Michael must have been mistaken. But no - he was right. As you can see in the screenshot below the module has exactly the option I require - display a list of a articles added or modifed by a user.
But I don't want a module, I want a menu item so that it matches the events menu item I have already created.
Plugin time
Joomla has a plugin that lets you insert a module inside an article.
So all I have to do is to create a module, create an article and then insert the module in the article. Then I can create the menu item that I require as its easy to create a menu item to an article.
Setup the module
Publishing the module is no different than for any other module on our web site except for the module position - we must create a new position for it that does not exist in the template and that we will only use here.
Simply type the name of the NEW position (in my case it was "my-content") in the box and press enter and you will see that Joomla will create this new position for you.
For convenience I also set Joomla to hide the Module title.
Create the article
Now I just need to create an article and insert the module.
(Top Tip - I always have a category called 'caution - internal use only' which I use for any content that doesn't really fit anywhere and often consists of nothing but code)
Insert the module
With earlier versions of Joomla in order to insert a module in an article using the plugin you needed to know some obscure syntax. But now you just need to click on the Module button in the toolbar and then select the newly created module from the popup.
Create the menu link
With the article created I can simply create a new menu item pointing to that article and I have everything I need.
Setting up the ACL
I have two usergroups for creating content - 'words' for com_content and 'calendar' for 'com_jevents' and they are both configured to just allow edit and publish own access rights. So I just have to make sure that the menu link I create is set to be visible only for users in the 'words' group and I am good to go.
Finishing touches
I have several menu links now that are just for my content creators so I put them all in a single menu but I was struggling for space on the screen - unless it was very big - so I decided not to give this dropdown menu a name but an icon instead.
Adding the icon
This isn't something I have ever done before but it is actually very easy - Joomla provides everything you need - again - no extra code needs to be installed.
Simply go to the Link Type tab of the menu and upload an image to use as the link image and then if like me you only want to display the image and no text make sure that you set the Add Menu Title to no.