Current Location: Home> Latest Articles> How to Quickly Implement Site Announcement Feature in CMS with PHP

How to Quickly Implement Site Announcement Feature in CMS with PHP

M66 2025-07-26

How to Implement Site Announcement Feature in CMS Using PHP

When developing a Content Management System (CMS), the site announcement feature is an essential module. It allows website administrators to conveniently publish, edit, and delete announcements, ensuring important information is delivered to users promptly. This article will guide you step-by-step on how to implement the site announcement feature in a CMS using PHP with code examples.

Database Design

First, design a database table to store announcement information. You can create a table named announcements with the following fields:

  • id: unique identifier of the announcement, auto-increment primary key
  • title: announcement title, varchar type
  • content: announcement content, text type
  • created_at: announcement creation time, timestamp type
  • updated_at: announcement last updated time, timestamp type

Announcement List Page

Create a page to display all announcements, making management and viewing easier. Below is an example of the announcement list page announcement_list.php:

<?php
// Connect to the database
$conn = mysqli_connect("localhost", "root", "password", "cms_db");

// Query all announcements
$query = "SELECT * FROM announcements ORDER BY created_at DESC";
$result = mysqli_query($conn, $query);
?>
<!DOCTYPE html>
<html>
<head>
    <title>Site Announcements</title>
</head>
<body>
    <h1>Site Announcements</h1>
    <a href="announcement_create.php">Create New Announcement</a>
    <hr>
    <?php
    // Iterate through the announcements
    while ($row = mysqli_fetch_assoc($result)) {
    ?>
        <h2></h2>
        <p></p>
        <p>Published on: </p>
        <hr>
    <?php
    }
    ?>
</body>
</html>
<?php
// Close database connection
mysqli_close($conn);
?>

Announcement Creation Page

To add new announcements, create an announcement creation page announcement_create.php. The code is as follows:

<?php
if ($_SERVER['REQUEST_METHOD'] == "POST"){
    // Get submitted form data
    $title = $_POST['title'];
    $content = $_POST['content'];

    // Connect to the database
    $conn = mysqli_connect("localhost", "root", "password", "cms_db");

    // Insert new announcement
    $query = "INSERT INTO announcements (title, content) VALUES ('$title', '$content')";
    mysqli_query($conn, $query);

    // Close database connection
    mysqli_close($conn);

    // Redirect to announcement list page
    header("Location: announcement_list.php");
    exit();
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>Create New Announcement</title>
</head>
<body>
    <h1>Create New Announcement</h1>
    <hr>
    <form method="POST" action="">
        <label for="title">Title:</label>
        <input type="text" id="title" name="title" required><br><br>
        <label for="content">Content:</label><br>
        <textarea id="content" name="content" rows="5" required></textarea><br><br>
        <input type="submit" value="Publish">
    </form>
</body>
</html>

Summary

With these steps, you have built a simple yet effective site announcement feature in your CMS. Administrators can publish announcements via the backend, and users can view them on the frontend, ensuring important information is shared timely. You can further enhance the feature with editing and deletion capabilities as needed.

The provided example code is clear and easy to understand, suitable for beginners and small to medium CMS projects.