Welcome to Geeklog Saturday, October 16 2021 @ 05:36 am EDT

Geeklog Forums

COM_featuredCheck delete all featured flags except one


OMAL

Anonymous
worried
PHP Formatted Code
function COM_featuredCheck()
{
    global $_TABLES;

    // Look for multiple featured frontpage articles. If more than one pick the newest.
    $sql = "SELECT sid FROM {$_TABLES['stories']} WHERE featured = 1 AND draft_flag = 0 AND frontpage = 1 AND date <= NOW() ORDER BY date DESC LIMIT 2";
    $resultB = DB_query($sql);
    $numB = DB_numRows($resultB);
    if ($numB > 1) {
        $B = DB_fetchArray($resultB);
        // un-feature all other featured frontpage story
        $sql = "UPDATE {$_TABLES['stories']} SET featured = 0 WHERE featured = 1 AND draft_flag = 0 AND frontpage = 1 AND date <= NOW() AND sid <> '{$B['sid']}'";
        DB_query($sql);
}
I have multiple topics and each topic has one featured article. The code above allows one featured article and delete the other featured flags through all topics. Is this how it works?
 Quote

Status: offline

Laugh

Site Admin
Admin
Registered: 27/09/05
Posts: 1438
Yes that is how it works.

We did have a feature request for what you are describing at one point:

https://github.com/Geeklog-Core/geeklog/issues/793

but it was closed.

I would think it should be easy to implement (by just changing that SQL) but from what I remember their was some sort of problem which would crop up. Unfortunately I cannot remember what it was and I didn't leave a comment about it.

If it is something you want add a feature request and if you do customize your site with it be sure to include your code in the feature request so we can add it in.
One of the Geeklog Core Developers.
 Quote

All times are EDT. The time is now 05:36 am.

  • Normal Topic
  • Sticky Topic
  • Locked Topic
  • New Post
  • Sticky Topic W/ New Post
  • Locked Topic W/ New Post
  •  View Anonymous Posts
  •  Able to post
  •  Filtered HTML Allowed
  •  Censored Content