Some animals are more equal than others.

This famous quote from animal farm also applies to content.

I'd like to discuss the fact that all content is considered equal in Elgg, but it shouldn't. In contrast to animal farm where it should,just to confuse the discussion topic :-)

So I would like better measures in core to discriminate content in terms of number of views, people more important than blogs or whatever discrimination based on priority an admin wants to create new views or different search results.

To make it more distinctive:

- Easy view creation based on number of views

- Easy view creation based on priority attached to a member.

- Search taking personal interest into account or number of replies or number of views as a consideration of its value to read.

These things happen in the internet world all over, where Google is king in this area. But in Elgg we need to create plugins for each and every form of discrimination and always find ourselves not being able to give our users what they would like to see without tremendous effort (which they dislike doing).

I have no idea what the impact would be on the core code, but just think it is a good idea to consider and if we agree find out how to implement this in a step by step approach.

From my end and I think a lot of plugin developers are dealing with these measures on a daily basis, not because we like to program around elgg, but just because we have a need for doing this.

I am very interested in your views.

  • i created a github ticket months ago to create a generic entity featuring system for all subtypes.

    the sorted plugin i have created does support sorting lists by number of views, likes and other parameters.

    a 'suggested items' plugin would be helpful too - along the lines of the suggested friends (extended) plugin.

  • Generic featuring is indeed a good idea, but not enough to support the goal I am aiming for. I also extended some content types with featuring options or use plugins for it. But it is not granular enough. I think we need more levels of prioritizing content as well as others level of distinction like number of views or interest based views.

    There are a number of plugins that really help like your very well appreciated suggested items plugin, and suggested friends and follow interest tags

    But I still think that a major leap could be made if entities would contain a number of default parameters where we could make a selection out. At first to be able to more easily create plugins, but later to to be able to create customs views by just clicking or favor entities in search.

  • to be clear, i was referring to an as yet non-existent plugin 'suggested items' (the one i have already created is 'related items' and it is not tailored to the user, it only finds items that are similar to the one that is currently viewed).

    i'm not exactly sure what you are asking for here.. except to move view counting into the core and to integrate it more coherently into the ui - plus the changes you mentioned to search results lists (which could be covered by the code in my sorted plugin without much difficutly).

    i agree that this type of functionality should be in the core as standard - i think the only reason that it isn't in there core yet is because of the extended process of integrating the changes that are in 1.9, plus dealing with the hangovers from the initial poor design of elgg in the early versions.

  • Plus priorities on entities (1 to 10) like pagerank from google to determine quality of content

  • i imagine that a pagerank type of feature would be best integrated via solr - simply because it would require an indexing engine and solr is already integrated into elgg. i don't know how easy it is to customise solr to do this though and i think that probably each site's algorithm might be slightly different depending on the objectives of the site.

  • Solr is quite easy to customize.  Not sure how you would determine pagerank, but if you did you could easily add a new field in solr to store an entities rank and add a query boost based on it.

  • i was thinking that maybe solr could include a pagerank calculation function as part of it's indexing process, since there is no other equivalent index process running in elgg core already.
    as for the specifics of the pagerank algorithm, that would be site dependent, although examples of potentially useful metrics to include in the algorithm would be mostly well known already - such as a calculation based on number of likes, views, external links pointing to the page and other social calculations.



  • External links is I think impossible to know but admin should be able to give rank to content and indeed likes.

  • external links can be retrieved from other sites, if that's what you would find helpful

  • @ura, do you maybe have some example code on how to do that ?

Feedback and Planning

Feedback and Planning

Discussions about the past, present, and future of Elgg and this community site.