Title: 10. Plugin Components
Author: Daniel Bachhuber
Published: June 9, 2013
Last modified: October 21, 2014

---

#  10. Plugin Components

As you learned in the introduction, WordPress plugins vary quite significantly in
how they extend the WordPress experience. Some plugins are less than ten lines of
codeLines of Code Lines of code. This is sometimes used as a poor metric for developer
productivity, but can also have other uses., and others are thousands of lines with
bundled JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming
language commonly used to create interactive effects within web browsers. WordPress
makes extensive use of JS for a better user experience. While PHP is executed on
the server, JS executes within a user’s browser. [https://www.javascript.com](https://www.javascript.com/)
and CSSCSS CSS is an acronym for cascading style sheets. This is what controls the
design or look and feel of a site..

For the purpose of deconstructing how WordPress plugins do what they do, we’ll break
them into a series of components. Many of these components relate to one of WordPress’
internal APIs.

To provide context on how using WordPress makes it easier to solve common problems,
here are a few examples:

 * The **[Settings API](https://make.wordpress.org/docs/plugin-developer-handbook/plugin-components/settings/)**
   enables you to create an administrative interface for the user to change pluginPlugin
   A plugin is a piece of software containing a group of functions that can be added
   to a WordPress website. They can extend functionality or add new features to 
   your WordPress websites. WordPress plugins are written in the PHP programming
   language and integrate seamlessly with WordPress. These can be free in the WordPress.
   org Plugin Directory [https://wordpress.org/plugins/](https://wordpress.org/plugins/)
   or can be cost-based plugin from a third-party. options.
 * **Admin AJAX** endpoints allow JavaScript to dynamically interact with WordPress.
 * **[Internationalization](https://make.wordpress.org/docs/plugin-developer-handbook/plugin-components/internationalization/)**
   support in every plugin will make it possible for translators to contribute localized
   strings.

Most importantly, following the design patterns expressed by each component means
its easier for other WordPress developers to dive into your code.

# Post navigation
