āĻŽāĻĄā§‡āϞ-āĻ­āĻŋāω-āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϏāĻžāĻŽāĻžāĻ¨ā§āϝ āĻ•āĻŋāϛ⧁
āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϤ⧈āϰāĻŋāϰ āĻŦ⧇āϏāĻŋāĻ• āφāχāĻĄāĻŋ⧟āĻž āĻŦāĻž āĻŸā§‡āĻ•āύ⧋āϞāϜāĻŋāϟāĻž āφāϏāϞ⧇ āϖ⧁āĻŦāχ āϏāĻšāϜ āĻ•āĻŋāĻ¨ā§āϤ⧁ āϝāĻ–āύāχ āφāĻŽāϰāĻž āĻāϰ āϏāĻžāĻĨ⧇ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻĢāĻŋāϚāĻžāϰ āϝ⧋āĻ— āĻ•āϰāĻŋ āĻ…āĻĨāĻŦāĻž āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āĻ•āĻžāĻˇā§āϟāĻŽāĻžāχāϜ āĻ•āϰāĻŋ āϤāĻ–āύāχ āĻāϟāĻžāϰ āĻšā§‡āĻšāĻžāϰāĻž āĻĻā§āϰ⧁āϤ āϜāϟāĻŋāϞ āĻšā§Ÿā§‡ āϝāĻžā§ŸāĨ¤
Model-View-Controller (MVC) āĻšāϞ⧋ āĻāĻŽāύ āĻāĻ•āϟāĻŋ āϏāĻĢāϟāĻ“ā§Ÿā§āϝāĻžāϰ āĻĄāĻŋāϜāĻžāχāύ āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ (Software design pattern) āϝāĻž āϕ⧋āĻĄāϕ⧇ āϏāĻ‚āĻ—āĻ āĻŋāϤ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻŦāĻŋāϜāύ⧇āϏ āϞāϜāĻŋāĻ• āĻāĻŦāĻ‚ āĻĄāĻžāϟāĻž āĻĒā§āϰ⧇āĻœā§‡āĻ¨ā§āĻŸā§‡āĻļāύ āĻ˛ā§‡ā§ŸāĻžāϰāϕ⧇ āφāϞāĻžāĻĻāĻž āϰāĻžāϖ⧇āĨ¤ āĻāϧāϰāύ⧇āϰ āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ⧇āϰ āĻŽā§‚āϞ āϏ⧁āĻŦāĻŋāϧāĻž āĻāχ āϝ⧇, āϝāĻĻāĻŋ āφāĻŽāϰāĻž āĻŦāĻŋāϜāύ⧇āϏ āϞāϜāĻŋāĻ•āϕ⧇ āφāϞāĻžāĻĻāĻž āĻāĻ•āϟāĻž āĻ—ā§āϰ⧁āĻĒ⧇ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰāĻŋ āϤāĻžāĻšāϞ⧇ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āĻāĻŦāĻ‚ āχāωāϜāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻ…ā§āϝāĻžāĻ•āĻļāύ āĻāϰ āϝ⧇ āϕ⧋āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻŦāĻž āĻ•āĻžāĻˇā§āϟāĻŽāĻžāχāĻœā§‡āĻļāύ āĻŦāĻŋāϜāύ⧇āϏ āϞāϜāĻŋāϕ⧇āϰ āϕ⧋āĻĄā§‡ āĻšāĻžāϤ āύāĻž āĻĻāĻŋā§Ÿā§‡āχ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦāĨ¤

āϜ⧁āĻŽāϞāĻžāϤ⧇ āĻāĻŽāĻ­āĻŋāϏāĻŋ (MVC) āϝ⧇āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇

āϜ⧁āĻŽāϞāĻžāϤ⧇ āĻāĻŽāĻ­āĻŋāϏāĻŋ (MVC) āϝ⧇āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇

āύāĻžāĻŽ āĻļ⧁āύ⧇āχ āφāĻŽāϰāĻž āĻšā§ŸāϤ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇āχ āĻŦ⧁āĻāϤ⧇ āĻĒāĻžāϰ⧇āĻ›āĻŋāĨ¤ āĻŽāĻĄā§‡āϞ āĻ­āĻŋāω āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ⧇āϰ āϤāĻŋāύāϟāĻŋ āĻ…āĻ‚āĻļ:
āĻŽāĻĄā§‡āϞ (Model):
āĻāχ āĻ…āĻ‚āĻļ⧇ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āĻĄāĻžāϟāĻžāϗ⧁āϞ⧋āϕ⧇ āĻāύāĻ•ā§āϝāĻžāĻĒāϏ⧁āϞ⧇āϟ āĻ•āϰāĻž āĻšā§ŸāĨ¤ āĻāĻ–āĻžāύ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āϏāĻŽāĻ¸ā§āϤ āĻĢāĻžāĻ‚āĻļāύ āĻŦāĻž āϞāϜāĻŋāĻ•, āĻĄāĻžāϟāĻžāĻŦ⧇āϏ āĻ•ā§ā§Ÿā§‡āϰāĻŋ (add, remove and update information) āχāĻ¤ā§āϝāĻžāĻĻāĻŋ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤ āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻŽāĻĄā§‡āϞ āĻ…āĻ‚āĻļ āφāĻĒāύāĻžāϰ āĻĄā§‡āϟāĻž āĻ¸ā§āĻŸā§āϰāĻžāĻ•āϚāĻžāϰ āϰāĻŋāĻĒā§āϰ⧇āĻœā§‡āĻ¨ā§āϟ āĻ•āϰāĻŦ⧇āĨ¤ āĻāχ āϞāϜāĻŋāĻ•āϗ⧁āϞāĻŋāϕ⧇ āĻŦāϞāĻž āĻšā§Ÿ āĻŦāĻŋāϜāύ⧇āϏ āϞāϜāĻŋāĻ• (business logic)āĨ¤ āĻāĻ–āĻžāύ⧇ āĻ­āĻŋāĻ‰ā§Ÿā§‡āϰ āϕ⧇āĻžāύ⧇āĻž āĻĒā§āϰāĻ•āĻžāϰ āĻ•āĻžāϜ āĻšāĻŦ⧇āύāĻž, āφāĻŽāĻžāĻĻ⧇āϰāϕ⧇ āĻ•āĻŋāϛ⧁ variable āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻĒāĻžāĻ āĻžāύ⧇āĻž āĻšāϤ⧇ āĻĒāĻžāϰ⧇, āύāĻžāĻ“ āĻĒāĻžāϰ⧇, āφāĻŽāϰāĻž āĻĢāĻžāĻ‚āĻļāύāϗ⧁āϞ⧋āϤ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āĻĒā§āĻ°ā§Ÿā§‡āĻžāϜāĻ¨ā§€ā§Ÿ āĻ•āĻžāϜ āĻ•āϰ⧇ āĻ•āύāĻŸā§āϰ⧇āĻžāϞāĻžāϰāϕ⧇ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰāĻŦā§‹āĨ¤ āĻŽāĻĄā§‡āϞ āϝ⧇ āĻĄāĻžāϟāĻž āϰāĻŋāϟāĻžāĻ°ā§āĻŖ āĻ•āϰ⧇ āϏ⧇āϗ⧁āϞ⧇āĻžāϕ⧇ “display-neutral-data” āĻŦāϞāĻž āĻšā§Ÿ, āĻ…āĻ°ā§āĻĨāĻžā§Ž āϏ⧇āϗ⧁āϞ⧇āĻžāϤ⧇ āϕ⧇āĻžāύ⧇āĻž āĻĄāĻŋāϏāĻĒā§āϞ⧇ āĻĢāϰāĻŽā§‡āϟāĻŋāĻ‚ āĻĨāĻžāϕ⧇āύāĻžāĨ¤ āϝāĻĻāĻŋ āĻ•āĻ–āύāĻ“ āĻāĻŽāύ āϘāϟāύāĻž āϘāĻŸā§‡ āϝ⧇, āφāĻŽāϰāĻž āφāĻŽāĻžāĻĻ⧇āϰ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āχāύāĻĢāϰāĻŽā§‡āĻļāύ āϗ⧁āϞ⧋ flat file āĻ āĻˇā§āĻŸā§‹āϰ āĻ•āϰ⧇āĻ›āĻŋ, āĻāĻ–āύ āφāĻŦāĻžāϰ āĻāĻ•āϟāĻŋ āĻĄāĻžāϟāĻžāĻŦ⧇āϜ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āϚāĻžāĻšā§āĻ›āĻŋāĨ¤ āϤāĻžāĻšāϞ⧇ āϝ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϟ⧁āϕ⧁ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇ āϤāĻž āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ Model āĻ…āĻ‚āĻļ⧇āχ view āĻ…āĻĨāĻŦāĻž controller-āĻ āϕ⧋āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻĻāϰāĻ•āĻžāϰ āĻšāĻŦ⧇ āύāĻžāĨ¤
āĻ­āĻŋāω (View):
āĻ āĻ…āĻ‚āĻļ⧇ āĻĨāĻžāĻ•āĻŦ⧇ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ user interface-āĻāϰ āϕ⧇āĻžāĻĄ, āĻ…āĻ¨ā§āϝ āĻ•āĻŋāϛ⧁ āύāĻžāĨ¤ āϞāϜāĻŋāĻ•ā§āϝāĻžāϞ āϕ⧇āĻžāύ⧇āĻž āĻŦā§āϝāĻžāĻĒāĻžāϰ āĻ­āĻŋāωāϤ⧇ āĻĨāĻžāĻ•āĻŦ⧇āύāĻžāĨ¤ āĻāϰ āϕ⧋āĻĄ āĻĻā§āĻŦāĻžāϰ āχāωāϜāĻžāϰ āĻāĻ•āϟāĻž āĻĒ⧇āϜ āĻĻ⧇āĻ–āĻŦ⧇, āϝāĻž āĻāĻ•āϟāĻž āϏāĻžāϧāĻžāϰāύ html āĻĒ⧇āϜ āĻšāϤ⧇ āĻĒāĻžāϰ⧇ (āĻ…āĻĨāĻŦāĻž error, feed, html, json, raw, xml, flash animation)āĨ¤ āĻ­āĻŋāω āĻŽāĻĄā§‡āϞ āĻĨ⧇āϕ⧇ āĻĄāĻžāϟāĻžāϗ⧁āϞ⧋āϕ⧇ āϤ⧁āϞ⧇ āĻāύ⧇ āĻāĻ•āϟāĻž view-āĻāϰ āĻŸā§‡āĻŽāĻĒā§āϞ⧇āĻŸā§‡āϰ āĻŽāĻ§ā§āϝ⧇ āĻĢ⧇āϞ⧇ āĻĻ⧇āĻ–āĻžā§ŸāĨ¤ āĻāĻ•āϟāĻŋ āĻ­āĻŋāĻ‰ā§Ÿā§‡āϰ āĻāĻ•āĻžāϧāĻŋāĻ• āϞ⧇āφāωāϟ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇ āϝ⧇āϟāĻž āĻ•āĻ¨ā§āĻŸā§āĻ°ā§āϰ⧋āϞāĻžāϰ āĻĻā§āĻŦāĻžāϰ āύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āĻšāĻŦ⧇āĨ¤ āφāĻŽāϰāĻž āϝāĻĻāĻŋ āφāĻŽāĻžāĻĻ⧇āϰ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻĄāĻŋāϜāĻžāχāύ⧇āϰ āϕ⧋āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āϚāĻžāχ āϤāĻžāĻšāϞ⧇ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ­āĻŋāω āĻ…āĻ‚āĻļ⧇ āĻ•āĻžāϜ āĻ•āϰāϞ⧇āχ āϚāϞāĻŦ⧇āĨ¤
āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ (Controller):
āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ⧇ āϐ āϏāĻŽāĻ¸ā§āϤ āϕ⧋āĻĄāϗ⧁āϞāĻŋ āĻĨāĻžāĻ•āĻŦ⧇ āϝāĻžāϰ āĻĻā§āĻŦāĻžāϰāĻž model āĻāĻŦāĻ‚ view āĻāϰ āϞāϜāĻŋāĻ•āϗ⧁āϞāĻŋ āĻāϕ⧇ āĻ…āĻĒāϰ⧇āϰ āϏāĻžāĻĨ⧇ āϝ⧋āĻ—āĻžāϝ⧋āĻ— āĻ•āϰāĻŦ⧇āĨ¤ āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āĻŽāĻĄā§‡āϞ āĻāϰ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĻ⧇āĻ–āĻŦ⧇ āĻŦāĻž āϏ⧇āϟ āĻ•āϰāĻŦ⧇ (set and get the states of the models) āĻāĻŦāĻ‚ āĻ­āĻŋāĻ‰ā§Ÿā§‡āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āϏ⧇āϗ⧁āϞ⧋ āĻĻ⧇āĻ–āĻžāĻŦ⧇āĨ¤ āĻ…āĻ¨ā§āϝāĻ­āĻžāĻŦ⧇ āĻŦāϞāĻž āϝāĻžā§Ÿ, āϏāĻ•āϞ āχāωāϜāĻžāϰ āχāύāĻĒ⧁āϟ āĻ•āĻ¨ā§āĻŸā§āϰ⧇āĻžāϞāĻžāϰ⧇āϰ āĻ•āĻžāϛ⧇ āĻĒāĻžāĻ āĻžāύ⧋ āĻšā§Ÿ, āĻ•āĻ¨ā§āĻŸā§āϰ⧇āĻžāϞāĻžāϰ āχāύāĻĒ⧁āϟ āĻĒāĻžāĻŦāĻžāϰ āĻĒāϰ parameter āĻšāĻŋāϏāĻžāĻŦ⧇ āĻĒāĻžāĻ āĻŋā§Ÿā§‡ āĻĻā§‡ā§Ÿ āĻŽāĻĄā§‡āϞ⧇āϰ āĻ•āĻžāϛ⧇, āĻŽāĻĄā§‡āϞ āϏ⧇āϟāĻžāϕ⧇ āĻĒā§āϰāϏ⧇āϏ āĻ•āϰ⧇ āĻ•āĻŋāϛ⧁ āĻĄāĻžāϟāĻž āϰāĻŋāϟāĻžāĻ°ā§āĻŖ āĻ•āϰ⧇, āĻāĻŦāĻžāϰ āϏ⧇āχ āĻĄāĻžāϟāĻžāϕ⧇ āĻ•āĻ¨ā§āĻŸā§āϰ⧇āĻžāϞāĻžāϰ āφāĻŦāĻžāϰ āĻĒāĻžāĻ āĻŋā§Ÿā§‡ āĻĻā§‡ā§Ÿ āĻ­āĻŋāω āĻāϰ āĻ•āĻžāϛ⧇āĨ¤ āĻ­āĻŋāω āϤāĻ–āύ āĻĄāĻžāϟāĻž āϗ⧁āϞ⧇āĻž āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤
āĻŽāĻĄā§‡āϞ āĻ­āĻŋāω āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āφāĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āϚāĻžāϰ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāϰāĻ“ āϜāĻžāύāϤ⧇ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāϰ⧇āύ:

āϞāĻŋāĻ‚āĻ•āϗ⧁āϞ⧋ āĻĻ⧇āĻ–āϤ⧇ āύāĻž āϚāĻžāχāϞ⧇āĻ“ āϏāĻŽāĻ¸ā§āϝāĻž āύ⧇āχāĨ¤ āĻāχ āϟāĻŋāωāĻŸā§‹āϰāĻŋ⧟āĻžāϞ⧇āχ āϝāĻ–āύ āϝ⧇āϟāĻž āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ āϏ⧇ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āφāϞ⧋āϚāύāĻž āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āĻĢāϞ⧇ āϟāĻŋāωāĻŸā§‹āϰāĻŋ⧟āĻžāϞ āϏāĻŋāϰāĻŋāĻœā§‡āϰ āĻļ⧇āώ⧇ āĻāĻŽāύāĻŋāϤ⧇āχ MVC āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϧāĻžāϰāĻŖāĻž āϤ⧈āϰāĻŋ āĻšā§Ÿā§‡ āϝāĻžāĻŦ⧇āĨ¤
MVC āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āĻĢā§āϰ⧇āĻŽāĻ“ā§ŸāĻžāĻ°ā§āϕ⧇āϰ āĻŽāϤ āϜ⧁āĻŽāϞāĻž āĻĢā§āϰ⧇āĻŽāĻ“ā§ŸāĻžāĻ°ā§āϕ⧇āϰāĻ“ āĻŽāĻĄā§‡āϞ āĻ­āĻŋāω āĻāĻŦāĻ‚ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ⧇āϰ āϜāĻ¨ā§āϝ āφāϞāĻžāĻĻāĻž abstract āĻ•ā§āϞāĻžāϏ āφāϛ⧇āĨ¤ āϜ⧁āĻŽāϞāĻžāϤ⧇ MVC āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ āχāĻŽāĻĒā§āϞāĻŋāĻŽā§‡āĻ¨ā§āϟ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ JModel, JView āĻāĻŦāĻ‚ JController āύāĻžāĻŽā§‡ āϤāĻŋāύāϟāĻŋ āĻ•ā§āϞāĻžāϏ āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤
āφāϏ⧁āύ āφāĻŽāϰāĻž āφāϗ⧇āϰ āϟāĻŋāωāĻŸā§‹āϰāĻŋ⧟āĻžāϞ⧇āϰ āϕ⧋āĻĄ āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻžāĻœā§‡ āϞ⧇āϗ⧇ āĻĒ⧜āĻŋāĨ¤

āϏāĻžāχāϟ āĻĒāĻžāĻ°ā§āĻŸā§‡ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āϏ⧇āϟ āĻ•āϰāĻž

site/team.php

āĻāϟāĻŋ āφāĻŽāĻžāĻĻ⧇āϰ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āĻāĻ¨ā§āĻŸā§āϰāĻŋ āĻĢāĻžāχāϞāĨ¤ āĻāχ āĻĢāĻžāχāϞ⧇ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āϞāĻžāχāύāϗ⧁āϞ⧋ āϝ⧋āĻ— āĻ•āϰāĻŋ:

site/team.php
<?php

// No direct access to this file
defined('_JEXEC') or die('Restricted access');

// import joomla controller library
jimport('joomla.application.component.controller');

// Get an instance of the controller prefixed by Team
$controller = JController::getInstance('Team');

// Perform the Request task
$input = JFactory::getApplication()->input;
$controller->execute($input->getCmd('task'));

// Redirect if set by the controller
$controller->redirect();

āĻāĻ–āĻžāύ⧇ JController āĻ•ā§āϞāĻžāϏ⧇āϰ getInstance āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āĻŽā§‡āĻĨāĻĄ āύāϤ⧁āύ āĻāĻ•āϟāĻž āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰāĻŦ⧇āĨ¤ getInstance() āĻāϰ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ ‘Team’ āĻĻ⧇āĻ“ā§ŸāĻžāϰ āĻĢāϞ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āϕ⧋āĻĄā§‡ āĻāϟāĻŋ TeamController āύāĻžāĻŽā§‡ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āĻ•ā§āϞāĻžāϏ⧇āϰ āĻāĻ•āϟāĻŋ āχāĻ¨ā§āϏāĻŸā§āϝāĻžāĻ¨ā§āϏ āϤ⧈āϰāĻŋ (instantiate) āĻšāĻŦ⧇āĨ¤ āϜ⧁āĻŽāϞāĻž TeamController āύāĻžāĻŽā§‡āϰ āĻ•ā§āϞāĻžāϏ⧇āϰ āĻŦāĻ°ā§āύāύāĻž (declaration) controller.php āύāĻžāĻŽā§‡āϰ āĻĢāĻžāχāϞ⧇ āϖ⧁āϜāĻŦ⧇āĨ¤ āĻāϟāĻž āϜ⧁āĻŽāϞāĻžāϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦāĻŋāĻšā§‡āĻŦāĻŋ⧟āĻžāϰāĨ¤

site/controller.php

āĻāĻ–āύ āφāĻŽāϰāĻž controller.php āύāĻžāĻŽā§‡ āύāϤ⧁āύ āĻāĻ•āϟāĻž āĻĢāĻžāχāϞ āϤ⧈āϰāĻŋ āĻ•āϰāĻŦ āϝāĻžāϰ āĻŽāĻ§ā§āϝ⧇ TeamController āĻ•ā§āϞāĻžāϏ āĻ˜ā§‹āώāύāĻž (declaration) āĻ•āϰāĻŦā§‹āĨ¤

site/controller.php
<?php

// No direct access to this file
defined('_JEXEC') or die('Restricted access');

// import Joomla controller library
jimport('joomla.application.component.controller');

/**
 * Team Component Controller
 */
class TeamController extends JController {

}

āϝ⧇āĻšā§‡āϤ⧁ request variables-āĻ āύāϤ⧁āύ āĻ•āĻŋāϛ⧁ āϝ⧋āĻ— āĻ•āϰāĻž āĻšā§ŸāύāĻŋ āϤāĻžāχ āĻŦāĻ°ā§āϤāĻŽāĻžāύ⧇ āĻāϟāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āϟāĻžāĻ¸ā§āĻ• āĻāĻ•ā§āϏāĻŋāĻ•āĻŋāωāϟ āĻ•āϰāĻŦ⧇, āϝāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻ­āĻŋāωāϕ⧇āχ āĻĻ⧇āĻ–āĻžāĻŦ⧇āĨ¤ āφāĻŽāĻžāĻĻ⧇āϰ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āύāĻžāĻŽā§‡āϰ āϏāĻžāĻĨ⧇ āĻŽāĻŋāϞ āϰ⧇āϖ⧇ ‘Team’ āĻšāĻŦ⧇ āĻ­āĻŋāĻ‰ā§Ÿā§‡āϰ āύāĻžāĻŽāĨ¤ āĻĒāϰāĻŦāĻ°ā§āϤ⧀āϤ⧇ āφāĻŽāϰāĻž āĻĻ⧇āĻ–āĻŦā§‹ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ display() āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āύāϤ⧁āύ āĻ­āĻŋāω āĻĻ⧇āĻ–āĻžāύ⧋ āϝāĻžā§ŸāĨ¤

 Inheritance diagram for TeamController

Inheritance diagram for TeamController

āϏāĻžāχāϟ āĻĒāĻžāĻ°ā§āĻŸā§‡ āĻ­āĻŋāω āϝ⧋āĻ— āĻ•āϰāĻž
āϝāĻ–āύ JController āĻāĻ•āϟāĻž āĻ­āĻŋāω āĻĻ⧇āĻ–āĻžāϤ⧇ āϚāĻžā§Ÿ āϤāĻ–āύ āϏ⧇ com_[component_name]/views/[name_of_view]/folder āĻāϰ āĻ­āĻŋāϤāϰ āĻ•āĻŋāϛ⧁ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĢāĻžāχāϞ⧇āϰ āĻ–ā§‹āϜ āĻ•āϰ⧇āĨ¤āϤāĻžāχ āφāĻŽāϰāĻž āĻāĻ–āύ site/views/team āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻ•āĻŋāϛ⧁ āĻĢāĻžāχāϞ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϝ⧋āĻ— āĻ•āϰāĻŦāĨ¤ āĻĒā§āϰāĻĨāĻŽā§‡āχ..

site/views/team/view.html.php
<?php

// No direct access to this file
defined('_JEXEC') or die('Restricted access');

// import Joomla view library
jimport('joomla.application.component.view');

/**
 * HTML View class for the Team Component
 */
class TeamViewTeam extends JView {

    // Overwriting JView display method
    function display($tpl = null) {
	// Assign data to the view
	$this->name		 = 'Lorem Ipsum';
	$this->designation	 = 'Junior Web Developer';
	$this->biography	 = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur dui ligula, dapibus in ultricies a, fringilla ut lorem. Sed ante elit, porttitor at egestas at, tempus mollis risus. Nulla at accumsan neque..............';

	// Display the view
	parent::display($tpl);
    }

}

JView āĻ•ā§āϞāĻžāϏ⧇āϰ display() āĻŽā§‡āĻĨāĻĄ JController āĻ•ā§āϞāĻžāϏ⧇āϰ display āϟāĻžāĻ¸ā§āĻ• āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ•āϞ āĻšā§ŸāĨ¤ āφāĻŽāĻžāĻĻ⧇āϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇, āĻāχ āĻŽā§‡āĻĨāĻĄ tmpl/default.php āĻĢāĻžāχāϞ⧇āϰ āĻĄāĻžāϟāĻž āĻĻ⧇āĻ–āĻžāĻŦ⧇ (āϝ⧇āĻšā§‡āϤ⧁ $tpl = null)āĨ¤ āφāϏ⧁āύ āφāĻŽāϰāĻž āĻĢāĻžāχāϞāϟāĻŋ āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āĻĢ⧇āϞāĻŋāĨ¤

Inheritance diagram for TeamViewTeam

Inheritance diagram for TeamViewTeam

site/views/team/tmpl/default.php

āĻĢāĻžāχāϞāϟāĻŋāϰ āĻĻāĻŋāϕ⧇ āϞāĻ•ā§āĻˇā§āϝ āĻ•āϰāϞ⧇ āφāĻŽāϰāĻž āĻĻ⧇āĻ–āĻŦ āĻāĻ–āĻžāύ⧇ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻĄāĻžāϟāĻžāϗ⧁āϞ⧋āϕ⧇ āĻ­ā§āϝāĻžāϰāĻŋā§Ÿā§‡āĻŦāϞ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ html āĻĢāϰāĻŽā§āϝāĻžāĻŸā§‡ āχāϕ⧋ āĻ•āϰāĻžāĨ¤ āĻāχ āĻŸā§‡āĻŽāĻĒā§āϞ⧇āϟ āĻĢāĻžāχāϞ āϝ⧇āĻšā§‡āϤ⧁ JView āĻ•ā§āϞāĻžāϏ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āχāύāĻ•ā§āϞ⧁āĻĄā§‡āĻĄ, āϏ⧇āĻšā§‡āϤ⧁ āĻāĻ–āĻžāύ⧇ $this TeamViewTeam āϕ⧇ āϰ⧇āĻĢāĻžāϰ āĻ•āϰ⧇āĨ¤

site/views/team/tmpl/default.php
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
<h1><?php echo $this->name ?></h1>
<h2><?php echo $this->designation ?></h2>
<p><?php echo $this->biography ?></p>
helloworld.xml

āύāϤ⧁āύ āϝ⧇āϏāĻ•āϞ āĻĢāĻžāχāϞ āĻ“ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϞ⧋ āϤāĻžāϰ āϜāĻ¨ā§āϝ helloworld.xml āĻĢāĻžāχāϞāϟāĻŋāϰ āĻ•āĻŋāϛ⧁ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻŋāĨ¤ āφāĻĒāĻĄā§‡āĻŸā§‡āϰ āϜāĻ¨ā§āϝ 0.0.2 āϞāĻŋāĻ–āĻŋāĨ¤

helloworld.xml
<?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?>
<extension type=&quot;component&quot; version=&quot;1.6.0&quot; method=&quot;upgrade&quot;>
    <name>Team</name>
    <!-- The following elements are optional and free of formatting conttraints -->
    <creationDate>December 2012</creationDate>
    <author>Shamim Reza</author>
    <authorEmail>shamim@localhost</authorEmail>
    <authorUrl>http://localhost</authorUrl>
    <copyright>Copyright Info</copyright>
    <license>License Info</license>
    <!--  The version string is recorded in the components table -->
    <version>0.0.2</version>
    <!-- The description is optional and defaults to the name -->
    <description>This Component will manage your team ...</description>
    <update> <!-- Runs on update; New in 1.6 -->
	<schemas>
	    <schemapath type=&quot;mysql&quot;>sql/updates/mysql</schemapath>
	</schemas>
    </update>
    <!-- Site Main File Copy Section -->
    <!-- Note the folder attribute: This attribute describes the folder
  		to copy FROM in the package to install therefore files copied
  		in this section are copied from /site/ in the package -->
    <files folder=&quot;site&quot;>
	<filename>index.html</filename>
	<filename>team.php</filename>
	<filename>controller.php</filename>
	<folder>views</folder>
    </files>
    <administration>
	<!-- Administration Menu Section -->
	<menu>The Team</menu>
	<!-- Administration Main File Copy Section -->
	<!-- Note the folder attribute: This attribute describes the folder to copy FROM in the package to install therefore files copied in this section are copied from /admin/ in the package -->
	<files folder=&quot;admin&quot;>
	    <!-- Admin Main File Copy Section -->
	    <filename>index.html</filename>
	    <filename>team.php</filename>
	    <!-- SQL files section -->
	    <folder>sql</folder>
	</files>
    </administration>
</extension>

āχāĻ¨ā§āϏāϟāϞ āĻ•āϰ⧇ āϜ⧁āĻŽāϞāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϟāĻŋāωāĻŸā§‹āϰāĻŋ⧟āĻžāϞ (ā§Ļā§§) āĻāϰ āύāĻŋ⧟āĻŽā§‡ āφāωāϟāĻĒ⧁āϟ āĻĻ⧇āĻ–āĻŋāĨ¤ āĻāĻ•āχ āφāωāϟāĻĒ⧁āϟ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϞ⧇āĻ“ āĻāĻ–āĻžāύ⧇ āφāĻŽāϰāĻž āĻ­āĻŋāω āĻ“ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞāĻžāϰ āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āφāωāϟāĻĒ⧁āϟ āĻĒā§‡ā§Ÿā§‡āĻ›āĻŋāĨ¤

āχāĻ¨ā§āϏāϟāϞ⧇āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āϜāĻŋāĻĒ (.zip) āĻĢāĻžāχāϞ āϤ⧈āϰāĻŋ āĻ…āĻĨāĻŦāĻž āĻĄāĻžāωāύāϞ⧋āĻĄ

Folder Hierarchy

Folder Hierarchy

File List
  • com_team\team.xml
  • com_team\admin\index.html
  • com_team\admin\team.php
  • com_team\admin\sql\index.html
  • com_team\admin\sql\updates\index.html
  • com_team\admin\sql\updates\mysql.0.1.sql
  • com_team\admin\sql\updates\mysql\index.html
  • com_team\site\controller.php
  • com_team\site\index.html
  • com_team\site\team.php
  • com_team\site\views\team\index.html
  • com_team\site\views\team\view.html.php
  • com_team\site\views\team\tmpl\default.php
  • com_team\site\views\team\tmpl\index.html

āωāĻĒāϰ⧇āϰ āϏāĻŦ āĻĢāĻžāχāϞāϗ⧁āϞ⧋ āύāĻŋā§Ÿā§‡ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻĒā§āϰ⧇āϏāĻĄ .zip āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰāĻŋ āĻ…āĻĨāĻŦāĻž āϏāϰāĻžāϏāϰāĻŋ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧇ Joomla! extension manager āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āχāĻ¨ā§āϏāϟāϞ/āφāĻĒāĻĄā§‡āϟ āĻ•āϰāĻŋāĨ¤

āϜ⧁āĻŽāϞāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ•āĻŋ?

āĻĒā§āϰāĻĨāĻŽā§‡āχ āĻŦāϞ⧇ āϰāĻžāĻ–āĻž āĻ­āĻžāϞ⧋, āϝāĻžāĻĻ⧇āϰ āϜ⧁āĻŽāϞāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āĻŽā§‹āĻŸā§‡āĻ“ āϧāĻžāϰāύāĻž āύ⧇āχ āϤāĻžāĻĻ⧇āϰ āϜāĻ¨ā§āϝ āĻāχ āϟāĻŋāωāĻŸā§‹āϰāĻŋ⧟āĻžāϞ āĻšā§ŸāϤ⧋ āϕ⧋āύ āĻ•āĻžāĻœā§‡ āφāϏāĻŦ⧇ āύāĻžāĨ¤ āϤāĻžāϰāĻĒāϰāĻ“ āφāĻŽāĻŋ āϜ⧁āĻŽāϞāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ•āĻŋ āϏ⧇ āĻŦāĻŋāĻˇā§Ÿā§‡ āϏāĻžāĻŽāĻžāĻ¨ā§āϝ āφāϞ⧋āϚāύāĻž āĻ•āϰāĻŦāĨ¤

āϜ⧁āĻŽāϞāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻšāϞ⧋ āĻāĻ•āϧāϰāύ⧇āϰ āϜ⧁āĻŽāϞāĻž āĻāĻ•ā§āϏāĻŸā§‡āύāĻļāύāĨ¤ āĻāϟāĻŋ āϜ⧁āĻŽāϞāĻžāϰ āĻĒā§āϰāϧāĻžāύ āĻĢāĻžāĻ‚āĻļāύāĻžāϞ āχāωāύāĻŋāϟāĨ¤ āĻāĻ•āĻžāϰāϪ⧇ āĻāϟāĻžāϕ⧇ āĻ…āύ⧇āϕ⧇ āϏ⧇āĻŽāĻŋ-āĻāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰ⧇āύāĨ¤ āϰ⧂āĻĒāĻ• āĻšāĻŋāϏāĻžāĻŦ⧇ āĻŦāϞāĻž āϚāϞ⧇, āϜ⧁āĻŽāϞāĻž āϝāĻĻāĻŋ āĻāĻ•āϟāĻž āĻ…āĻĒāĻžāϰ⧇āϟāĻŋāĻ‚ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻšā§Ÿ āϤāĻŦ⧇ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻšāϞ⧋ āϤāĻžāϰ āĻĄā§‡āĻ•ā§āϏāϟāĻĒ āĻāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϝāĻž āĻŽā§‡āχāύ āĻ•āĻ¨ā§āĻŸā§‡āĻ¨ā§āϟ āĻāϰāĻŋ⧟āĻžāϰ āĻŽāĻ§ā§āϝ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšā§Ÿ (āĻ…āĻŦāĻļā§āϝāχ āĻŸā§‡āĻŽāĻĒā§āϞ⧇āĻŸā§‡āϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇)āĨ¤

āĻŦ⧇āĻļāĻŋāϰāĻ­āĻžāĻ— āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰāχ āĻĻ⧁āχāϟāĻŋ āĻ…āĻ‚āĻļ āĻĨāĻžāϕ⧇: āĻāĻĄāĻŽāĻŋāύāĻŋāĻˇā§āĻŸā§āϰ⧇āϟāϰ āĻĒāĻžāĻ°ā§āϟ (administrator part) āĻāĻŦāĻ‚ āϏāĻžāχāϟ āĻĒāĻžāĻ°ā§āϟ(site part)āĨ¤

āϏāĻžāχāϟ āĻĒāĻžāĻ°ā§āϟāϟāĻŋ āϏāĻžāχāĻŸā§‡ āĻĻ⧇āĻ–āĻžāύ⧋ āĻĒ⧇āϜāϗ⧁āϞ⧋āϕ⧇ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰ⧇āĨ¤ āφāϰ āĻāĻĄāĻŽāĻŋāύāĻŋāĻˇā§āĻŸā§āϰ⧇āϟāϰ āĻĒāĻžāĻ°ā§āϟ āϏāĻžāχāĻŸā§‡āϰ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻ•āύāĻŸā§‡āĻ¨ā§āϟ āĻ•āĻžāĻˇā§āϟāĻŽāĻžāχāĻœā§‡āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻž āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āϝāĻž āϜ⧁āĻŽāϞāĻž āĻāĻĄāĻŽāĻŋāύ āĻĒā§āϝāĻžāύ⧇āϞ⧇ (Joomla! Administrator) āϞāĻ—āχāύ āĻ•āϰ⧇ āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻšā§ŸāĨ¤

āĻĒā§āϰāĻĨāĻŽ āĻŦ⧇āϏāĻŋāĻ• āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ

āφāϏ⧁āύ āϤāĻžāĻšāϞ⧇ āĻĒā§āϰāĻĨāĻŽā§‡āχ āĻāĻ•āϟāĻŋ Hello World! āϟāĻžāχāĻĒ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϤ⧈āϰāĻŋ āĻ•āϰāĻŋāĨ¤ āϝ⧇āĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āĻ…āĻĢāĻŋāϏ⧇āϰ āĻ•ā§Ÿā§‡āĻ•āϜāύ āĻāĻŽāĻĒā§āĻ˛ā§Ÿā§€āϰ āύāĻžāĻŽ āĻ“ āĻĒāĻĻāĻŦā§€ (Designation) āĻĻ⧇āĻ–āĻžāĻŦ⧇āĨ¤

āφāϏ⧁āύ āĻĒā§āϰāĻĨāĻŽā§‡āχ āφāĻŽāϰāĻž com_team āύāĻžāĻŽā§‡ āĻāĻ•āϟāĻž āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰāĻŋ āϝāĻžāϰ āĻŽāĻ§ā§āϝ⧇ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻĢāĻžāχāϞ āĻ“ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰāϗ⧁āϞāĻŋ āĻĨāĻžāĻ•āĻŦ⧇:

Folder Hierarchy

Folder Hierarchy 01

File List
  • \com_team\team.xml
  • \com_team\admin\index.html
  • \com_team\admin\team.php
  • \com_team\admin\sql\index.html
  • \com_team\admin\sql\updates\index.html
  • \com_team\admin\sql\updates\mysql.0.1.sql
  • \com_team\admin\sql\updates\mysql\index.html
  • \com_team\site\index.html
  • \com_team\site\team.php
com_team\team.xml

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ .xml āĻĢāĻžāχāϞ āϝāĻž āχāĻ¨ā§āϏāϟāϞ⧇āĻļāύ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ⧇āϰ āϰ⧁āĻŸā§‡ āĻĨāĻžāϕ⧇āĨ¤ āϕ⧋āύ āĻŸā§āϝāĻžāϗ⧇āϰ āĻ•āĻžāϜ āĻ•āĻŋ āϤāĻž āĻŸā§āϝāĻžāĻ—āϗ⧁āϞ⧋ āĻĻ⧇āĻ–āϞ⧇āχ āĻŦā§‹āĻāĻž āϝāĻžā§ŸāĨ¤ āϝ⧇āĻŽāύ: āĻŸā§āϝāĻžāϗ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āύāĻžāĻŽ āĻāĻŦāĻ‚ āĻāϰ āĻŽāĻ§ā§āϝ⧇

āĻŸā§āϝāĻžāϗ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻŽā§‡āύ⧁āϤ⧇ āϝ⧇ āύāĻžāĻŽ āϝ⧋āĻ— āĻšāĻŦ⧇ āϏ⧇āϟāĻŋāĨ¤āϤāĻžāĻ›āĻžā§œāĻž āĻŸā§āϝāĻžāϗ⧇āϰ āĻŽāĻ§ā§āϝ⧇ site  āĻĒāĻžāĻ°ā§āĻŸā§‡ āϝ⧇ āϏāĻ•āϞ āĻĢāĻžāχāϞ āĻ…āĻĨāĻŦāĻž āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϝ⧋āĻ— āĻšāĻŦ⧇ āϤāĻžāϰ āϞāĻŋāĻˇā§āϟ āĻāĻŦāĻ‚ āĻŸā§āϝāĻžāϗ⧇āϰ āĻŽāĻ§ā§āϝ⧇ administrator  āĻĒāĻžāĻ°ā§āĻŸā§‡āϰ āϏāĻ•āϞ āĻĢāĻžāχāϞ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ⧇āϰ āύāĻžāĻŽ āϝ⧋āĻ— āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻĢāĻžāχāϞ⧇āϰ āĻ•āĻŽā§‡āĻ¨ā§āϟāϗ⧁āϞ⧋āĻ“ āϞāĻ•ā§āĻˇā§āϝ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

com_team\team.xml
<?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?>
<extension type=&quot;component&quot; version=&quot;1.6.0&quot; method=&quot;upgrade&quot;>
    <name>Team</name>
    <!-- The following elements are optional and free of formatting conttraints -->
    <creationDate>December 2012</creationDate>
    <author>Shamim Reza</author>
    <authorEmail>shamim@localhost</authorEmail>
    <authorUrl>http://localhost</authorUrl>
    <copyright>Copyright Info</copyright>
    <license>License Info</license>
    <!--  The version string is recorded in the components table -->
    <version>0.0.1</version>
    <!-- The description is optional and defaults to the name -->
    <description>This Component will manage your team ...</description>
    <update> <!-- Runs on update; New in 1.6 -->
    <schemas>
        <schemapath type=&quot;mysql&quot;>sql/updates/mysql</schemapath>
    </schemas>
    </update>
    <!-- Site Main File Copy Section -->
    <!-- Note the folder attribute: This attribute describes the folder
        to copy FROM in the package to install therefore files copied
        in this section are copied from /site/ in the package -->
    <files folder=&quot;site&quot;>
    <filename>index.html</filename>
    <filename>team.php</filename>
    </files>
    <administration>
    <!-- Administration Menu Section -->
    <menu>The Team</menu>
    <!-- Administration Main File Copy Section -->
    <!-- Note the folder attribute: This attribute describes the folder to copy FROM in the package to install therefore files copied in this section are copied from /admin/ in the package -->
    <files folder=&quot;admin&quot;>
        <!-- Admin Main File Copy Section -->
        <filename>index.html</filename>
        <filename>team.php</filename>
        <!-- SQL files section -->
        <folder>sql</folder>
    </files>
    </administration>
</extension>
com_team\site\team.php

āĻāχ āĻĢāĻžāχāϞ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āφāĻŽāϰāĻž āϝāĻž āϞāĻŋāĻ–āĻŦ āϏ⧇āϟāĻŋāχ āϏāĻžāχāĻŸā§‡ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāĻŦ⧇āĨ¤

com_team\site\team.php
<h1>Lorem Ipsum</h1>
<h2>Junior Web Developer</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur dui ligula, dapibus in ultricies a, fringilla ut lorem. Sed ante elit, porttitor at egestas at, tempus mollis risus. Nulla at accumsan neque. Vivamus malesuada, tortor a tincidunt facilisis, nunc lacus rutrum nunc, sed molestie nulla sem et nisl. Mauris vitae tincidunt neque. Pellentesque consectetur ligula pretium risus pharetra fringilla. Suspendisse elementum rutrum euismod. Donec at leo massa. Nulla pretium adipiscing sem nec varius. Suspendisse nisl metus, gravida sed tincidunt eu, tempor vel dolor. Morbi lobortis cursus leo cursus vestibulum. Quisque a diam vel est ullamcorper interdum. Nullam lacinia, sapien tempor sodales interdum, nisi purus posuere massa, vel fermentum libero mauris eu enim.</p>
com_team\admin\team.php

āĻāχ āĻĢāĻžāχāϞāϟāĻŋ āφāĻĒāĻžāϤāϤ āĻāĻĄāĻŽāĻŋāύāĻŋāĻˇā§āĻŸā§āϰ⧇āϟāϰ āĻĒāĻžāĻ°ā§āĻŸā§‡ āĻāĻ•āϟāĻŋ āĻĄā§‡āĻŽā§‹ āĻŸā§‡āĻ•ā§āϏāϟ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāĻŦ⧇āĨ¤

com_team\admin\team.php
<h1>The Team Administration</h1>
com_team\admin\sql\updates\mysql.0.1.sql

āĻāχ āĻĢāĻžāχāϞ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āφāĻŽāĻžāĻĻ⧇āϰ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āĻĄāĻžāϟāĻžāĻŦ⧇āϜ āĻ¸ā§āĻ•āĻŋāĻŽāĻž āĻ­āĻžāĻ°ā§āϏāύ āύāĻŋāĻ°ā§āϧāĻžāϰāύ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āφāĻĒāĻžāϤāϤ āĻĢāĻžāχāϞāϟāĻŋ āĻĢāĻžāρāĻ•āĻžāχ āĻĨāĻžāϕ⧁āĻ•āĨ¤

com_team\admin\sql\updates\mysql.0.1.sql

index.html common to all folders

āφāĻŽāϰāĻž āϜāĻžāύāĻŋ āϜ⧁āĻŽāϞāĻžāϰ āϏāĻ•āϞ āĻāĻ•ā§āϏāĻŸā§‡āύāĻļāύ⧇āχ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻ•āϰ⧇ index.html āĻĢāĻžāχāϞ āĻĨāĻžāϕ⧇āĨ¤

index.html
<html><body bgcolor=&quot;#FFFFFF&quot;></body></html>

āχāĻ¨ā§āϏāϟāϞ⧇āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āϜāĻŋāĻĒ (.zip) āĻĢāĻžāχāϞ āϤ⧈āϰāĻŋ

āφāĻŽāĻžāĻĻ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āϝāĻžāĻĻ⧇āϰ āφāϗ⧇āχ āϕ⧋āύ āϜ⧁āĻŽāϞāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āχāĻ¨ā§āϏāϟāϞ āĻ•āϰāĻžāϰ āĻ…āĻ­āĻŋāĻœā§āĻžāϤāĻž āφāϛ⧇ āϤāĻžāϰāĻž āϜāĻžāύāĻŋ āϝ⧇, āĻĒā§āĻ°ā§Ÿā§‹āϜāĻ¨ā§€ā§Ÿ āϏāĻŦ āĻĢāĻžāχāϞāχ āϜāĻŋāĻĒ āφāĻ•āĻžāϰ⧇ āĻĨāĻžāϕ⧇āĨ¤ āϤāĻžāχ āĻŸā§‡āĻŦāĻŋāϞ-ā§Ļā§§ āĻāϰ āϏāĻŦ āĻĢāĻžāχāϞāϗ⧁āϞ⧋ āύāĻŋā§Ÿā§‡ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻĒā§āϰ⧇āϏāĻĄ .zip āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ āĻ…āĻĨāĻŦāĻž āϏāϰāĻžāϏāϰāĻŋ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧇ Joomla! extension manager āĻŦā§āϝāĻžāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āχāĻ¨ā§āϏāϟāϞ āĻ•āϰ⧁āύāĨ¤

āĻāĻŦāĻžāϰ āφāĻĒāύāĻžāϰ āĻŦā§āϰāĻžāωāϜāĻžāϰ⧇āϰ āĻāĻĄā§āϰ⧇āϏāĻŦāĻžāϰ⧇ āĻŽā§‡āχāύ āĻĄā§‹āĻŽā§‡āχāύ⧇āϰ āĻĒāϰ index.php?option=com_team āϞāĻŋāϖ⧇ āĻĻ⧇āϖ⧁āύ āϏāĻžāχāϟ āĻĒāĻžāĻ°ā§āĻŸā§‡āϰ āφāωāϟāĻĒ⧁āϟ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻŦ⧇āύāĨ¤

Site part View

Site part View


āĻāĻŦāĻ‚ āĻ…ā§āϝāĻžāĻĄā§āϰ⧇āϏāĻŦāĻžāϰ⧇  administrator/index.php?option=com_team āϝ⧋āĻ— āĻ•āϰāϞ⧇ “The Team Administration” āϞ⧇āĻ–āĻžāϟāĻŋ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻŦāĨ¤ āĻāĻ›āĻžā§œāĻžāĻ“ āφāĻŽāϰāĻž āϞāĻ•ā§āĻˇā§āϝ āĻ•āϰāϞ⧇ āφāϰāĻ“ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻŦ āϝ⧇, āϜ⧁āĻŽāϞāĻž āĻāĻĄāĻŽāĻŋāύāĻŋāĻˇā§āĻŸā§āϰ⧇āϟāϰ āĻĒāĻžāĻ°ā§āĻŸā§‡āϰ Component āĻŽā§‡āύ⧁āϤ⧇ Team āύāĻžāĻŽā§‡ āĻāĻ•āϟāĻŋ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĻ⧇āĻ–āĻž āϝāĻžāĻšā§āϛ⧇āĨ¤

āĻāχ āϟāĻŋāωāĻŸā§‹āϰāĻŋ⧟āĻžāϞ⧇āϰ āĻĒāϰāĻŦāĻ°ā§āϤāĻŋ āĻĒāĻžāĻ°ā§āĻŸā§‡ āφāĻŽāϰāĻž āĻĻ⧇āĻ–āĻŦ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āϏāĻžāχāϟ āĻĒāĻžāĻ°ā§āĻŸā§‡ view āϝ⧋āĻ— āĻ•āϰāϤ⧇ āĻšā§ŸāĨ¤