Jeśli nie zna się podstaw programowania, to musisz się ich nauczyć :) Podana przez ciebie umiejętności to prawdopodobnie oferta na front-end developera/webmastera.
HTML i CSS to nie języki programowania, a języki opisu, na których podstawie tworzy się to, co widzi użytkownik w przeglądarce. JavaScript to język programowania, którego głównym zadaniem jest "obsługiwaniem" dwóch wyżej wymienionych, czyli zajmuje się również tym, co widzi użytkownik. Ta trójka to tzw. frontend.
Tymi trzema językami możemy tworzyć tylko strony statyczne. Żeby stworzyć prawdziwą aplikację internetową, czyli np. stronę szkoły, urzędu z systemami rejestracji, logowania itd., musi to obsługiwać serwer. Wszystko z tym związane określone jest pojęciem backendu. W przypadku przez ciebie podanym stoi za tym język PHP używający Smarty.
Smarty to język szablonów dla PHP obsługujący w.w. zestaw (HTML&CSS&JS). Polega to na tym, że nasz szablon (czyli powiedzmy nasz frontend) dostaje dane od backendu (za którym stoi w tym przypadku język PHP) i masz je pokazać użytkownikowi w jakiś sensowny, określony przez nasz backend sposób.
Jak już wiesz o co mniej więcej chodzi, to wchodzisz w google/youtube i szukasz tutoriali lub ew. kupujesz książkę i po prostu robisz. Polecam taką kolejność:
- Podstawy HTML i CSS. Naucz się stworzyć prostą stronkę.
- Podstawy PHP
- Przerób pierwszą stronę (lub stwórz nową) tak, aby używała PHP (system rejestracji, logowania, newsów, co sobie wymyślisz).
- Wsadź w stronę JavaScript (na tym etapie już będziesz raczej wiedział do czego ci się to przyda).
- Twórz, użyj wyobraźni. Skup się na frontendzie, ale język serwera też musisz poznać, żeby wiedzieć o co w tym chodzi.
Te wymagania, które napisałeś są na jakieś konkretne stanowisko, które chcesz zdobyć?