Po pierwsze ogarnij sobie architekturę MVC, chyba, że wolisz jakąś inną, ale myślę, że MVC na początek to super sprawa. Jak się nad tym dogłębniej zastanowić to programowanie webowe polega na odczytywaniu informacji od użytkownika w 90% przypadku poprzez formularze, obrobieniu żądania i wysłania odpowiedzi.
Rozpisz sobie co chciałbyś, żeby ten cms potrafił. Jeżeli ma być to CMS np sklepu to zacznij od systemu logowania: dla zwykłych użytkowników i dla administratora i rozpisz sobie co każdy użtykownik może zrobić.
Np. administrator może wstawić nowy produkt do bazy danych, który będzie wyświetlany dla wszystkich.
Stwórz sobie klasę Produkt i funkcje, które można z takim produktem zrobić. Np. setPrice - ustaw cenę dla danego produktu, setName - ustawia nazwę produktu, calculateVAT, addProduct - dodaje produkt do bazy danych, itp, itd. Pamiętaj, żeby funkcje były robiły tylko jedną czynność i były odpowiednio widoczne. Np czy z zewnątrz powinna być możliwość zmiany ceny netto? Czy powinna być ona obliczana na podstawie ceny brutto?
W dużym uproszczeniu w modelu obrabiaj dane, w widoku wyświetlaj je, a kontroler przekazuje tylko informacje między odpowiednimi widokami a modelami. Pobaw się AJAXem, itd.
Swoją drogą CMS jest dosyć nudnym projektem według mnie ;) Żeby był użyteczny i przydatny trzeba się sporo napisać, ale to z czasem jak sam się przekonasz, będzie powtarzalne i schematyczne ;)