• Stars
    star
    1,790
  • Rank 25,957 (Top 0.6 %)
  • Language
    PHP
  • License
    GNU General Publi...
  • Created about 9 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Enable AMP on your WordPress site, the WordPress way.

AMP Plugin for WordPress

Banner

An easier path to great Page Experience for everyone. Powered by AMP.

Contributors: google, xwp, rtcamp, automattic, westonruter, albertomedina, schlessera, delawski, swissspidy, pierlo, joshuawold, thelovekesh
Tags: page experience, performance, amp, mobile, optimization, accelerated mobile pages
Requires at least: 4.9
Tested up to: 6.3
Stable tag: 2.4.2
License: GPLv2 or later
Requires PHP: 7.0

Build Status Coverage Status Built with Grunt

Description

Page Experience (PX) is a set of ranking signals—including Core Web Vitals (CWV)—measuring the user experience of interacting with a web page. AMP is a powerful tool which applies many optimizations and best practices automatically on your site, making it easier for you to achieve good page experience for your visitors. The official AMP Plugin, supported by the AMP team, makes it easy to bring the power of AMP to your WordPress site, seamlessly integrating with the normal publishing flow and allowing the use of existing themes and plugins.

Play video on YouTube

For more videos like this, check out the ongoing AMP for WordPress video series.

The plugin's key features include:

  1. Automate the process of generating AMP-valid markup as much as possible, letting users follow the standard workflows they are used to in WordPress.
  2. Provide effective validation tools to help users deal with AMP incompatibilities when they happen, including mechanisms for identifying, contextualizing, and resolving issues caused by validation errors.
  3. Provide development support to make it easier for WordPress developers to build AMP-compatible ecosystem components and build websites and solutions with AMP-compatibility built-in.
  4. Support the serving of AMP pages to make it easier for site owners to take advantage of mobile redirection, AMP-to-AMP linking, and generation of optimized AMP by default (via PHP port of AMP Optimizer).
  5. Provide a turnkey solution for segments of WordPress creators to be able to go from zero to publishing AMP pages in no time, regardless of technical expertise or availability of resources.

The official AMP plugin for WordPress is a powerful tool that helps you build user-first WordPress sites, that is, sites that are fast, beautiful, secure, engaging, and accessible. A user-first site will deliver experiences that delight your users and therefore will increase user engagement and the success of your site. And, contrary to the popular belief of being only for mobile sites (it doesn't stand for Accelerated Mobile Pages anymore!), AMP is a fully responsive web component framework, which means that you can provide AMP experiences for your users on both mobile and desktop devices.

AMP Plugin Audience: Everyone

This plugin can be used by both developers and non-developer users:

  • If you are a developer or tech savvy user, you can take advantage of advanced developer tools provided by the AMP plugin to fix validation issues your site may have and reach full AMP compatibility.
  • If you are not a developer or tech savvy user, or you just simply don't want to deal with validation issues and tackling development tasks, the AMP plugin allows you to assemble fully AMP-compatible sites with different configurations taking advantage of AMP-compatible components. The plugin helps you to deal with validation issues by removing invalid AMP markup in cases where it is possible, or altogether suppressing AMP-incompatible plugins on AMP pages.

The bottom line is that regardless of your technical expertise, the AMP plugin can be useful to you.

Template Modes

The official AMP plugin enables site owners to serve AMP to their users in different ways, which are referred to as template modes: Standard, Transitional, and Reader. The differences between them are in terms of the number of themes used (one or two), and the number of versions of the site (non-AMP, AMP). Each template mode brings its own value proposition and serves the needs of different scenarios in the large and diverse WordPress ecosystem. And in all cases, the AMP plugin provides as much support as possible in terms of automating the generation of AMP pages, as well as keeping the option chosen AMP valid. In a nutshell, the available template modes are the following:

Standard Mode: This template mode is the ideal, as there is only one theme for serving requests and a single version of your site: the AMP version. Besides enabling all of your site to be AMP-first, this has the added benefit of reducing development and maintenance costs. This mode is the best choice for sites where the theme and plugins used in the site are fully AMP-compatible. It's also a good option if some components are not AMP-compatible but the site owner has the resources or the know-how to fix them. See our showcase of sites using Standard mode.

Transitional Mode: In this mode there is also a single theme used, but there can be two versions of each page: AMP and non-AMP. The active theme is used for serving the AMP and non-AMP versions of a given URL. This mode is a good choice if the site uses a theme that is not fully AMP compatible, but the functional differences between the AMP and non-AMP pages are acceptable (due to graceful degradation). In this case, users accessing the site from mobile devices can get the AMP version and get an optimized experience which also retains the look and feel of the non-AMP version. Check out our showcase of sites using Transitional mode.

Reader Mode: In this mode there are two different themes, one for AMP pages and another for non-AMP pages, and therefore there are also two versions of the site. This mode may be selected when the site is using an AMP-incompatible theme, but the level of incompatibilities is significant without graceful degradation. It's also a good choice if you are not technically savvy (or simply do not want to deal with the incompatibilities) and therefore want simplified and robust workflows that allow you to take advantage of AMP with minimal effort.

Different modes would be recommended in different scenarios, depending on the specifics of your site and your role. As you configure the plugin, it will suggest the mode that might be best for you based on its assessment of the theme and plugins used on your site. And, independently of the mode used, you have the option of serving all or only a portion of your site as AMP. This gives you all the flexibility you need to get started enabling AMP on your site progressively.

AMP Ecosystem

It is possible today to assemble great looking user-first sites powered by the AMP plugin by picking and choosing themes and plugins from a growing AMP-compatible ecosystem. In this context, the AMP plugin acts as an orchestrator of the overall AMP content creation and publishing process; it serves as a validator and enforcer making it easier to not only get to AMP experiences, but to maintain them with confidence.

Many popular theme and plugin developers have taken efforts to support the official AMP plugin. If you are using a theme like Astra or Newspack, or if you are using plugins like Yoast or WP Forms — they will work out of the box! You can see the growing list of tested themes and plugins.

AMP Development

Although there is a growing ecosystem of AMP-compatible WordPress components, there is still a ways to go before majority AMP compatibility in the ecosystem. If you are a developer, or you have the resources to pursue development projects, you may want in some cases to develop custom plugin or theme to serve your specific needs. The official AMP plugin can be of great help to you by providing powerful and effective developer tools that shed light into the AMP development process as it is done in WordPress. This includes mechanisms for detailing the root causes of validation issues, the contextual space to understand them properly, and methods to deal with them during the process of achieving full AMP compatibility. Read more about Developer Tools.

Getting Started

To learn more about the plugin and start leveraging its capabilities to power your AMP publishing workflow, check the official AMP plugin product site.

If you are a developer, we encourage you to follow along or contribute to the development of this plugin on GitHub.

We have put up a comprehensive FAQ page and extensive documentation to help you start as smoothly as possible.

But if you need some help, we are right here to support you in the plugin's support forum, as well as through GitHub issues (for technical bugs and feature requests). And our thriving AMP Expert ecosystem has indie freelancers to enterprise grade agencies in case you need commercial support!

Installation

  1. Upload the folder to the /wp-content/plugins/ directory.
  2. Activate the plugin through the "Plugins" menu in WordPress.
  3. Navigate to AMP > Settings in the WordPress admin to configure the plugin; use the onboarding wizard there for guided setup.

Frequently Asked Questions

Please see the FAQs on amp-wp.org. Don't see an answer to your question? Please search the support forum to see if it has already been discussed. Otherwise, please open a new support topic.

Screenshots

New onboarding wizard to help you get started.

New onboarding wizard to help you get started.

Built for developers and non-technical content creators alike.

Built for developers and non-technical content creators alike.

Theme selection to enhance the Reader mode experience.

Theme selection to enhance the Reader mode experience.

Preview how your site looks across desktop and mobile before finalising changes.

Preview how your site looks across desktop and mobile before finalising changes.

Customize the design of AMP pages in the Customizer.

Customize the design of AMP pages in the Customizer.

Reopen the onboarding wizard, change individual options, or manage advanced settings.

Reopen the onboarding wizard, change individual options, or manage advanced settings.

Changelog

For the plugin’s changelog, please see the Releases page on GitHub.

Upgrade Notice

If you currently use older versions of the plugin in Reader mode, it is strongly encouraged to pick a Reader theme instead of using the legacy Reader templates. You may also want to switch to Standard mode or Transitional mode if you have AMP-compatible theme and plugins.

More Repositories

1

amphtml

The AMP web component framework.
JavaScript
14,887
star
2

worker-dom

The same DOM API and Frameworks you know, but in a Web Worker.
TypeScript
3,206
star
3

amp-by-example

DEPRECATED: AMP by Example has been merged into amp.dev
HTML
752
star
4

amp.dev

The AMP Project Website.
HTML
584
star
5

amp-toolbox

A collection of AMP tools making it easier to publish and host AMP pages.
HTML
450
star
6

samples

HTML
444
star
7

ampstart

AMP Start source code and templates .
HTML
419
star
8

rollup-plugin-closure-compiler

Leverage Closure Compiler to minify and optimize JavaScript with Rollup.
TypeScript
292
star
9

amppackager

Tool to improve AMP URLs via Signed Exchanges
Go
140
star
10

remapping

Remap sequential sourcemaps through transformations to point at the original source code
TypeScript
103
star
11

meta

Information about the AMP open source project.
78
star
12

filesize

Monitor the size of files in your project specified within package.json.
TypeScript
75
star
13

amp-toolbox-php

AMP Optimizer PHP library
PHP
73
star
14

amp-sw

A drop in service worker library to help your AMP pages gain network resiliency in 1 line
JavaScript
70
star
15

ampbench

AMPBench: AMP URL validation and troubleshooting tools (DEPRECATED)
JavaScript
66
star
16

wg-amp4email

Responsible for the AMP4Email project. Facilitator: @nainar
56
star
17

bentojs.dev

Bento Website
SCSS
49
star
18

eleventy-plugin-amp

Quickly build interactive websites with Eleventy & AMP.
JavaScript
46
star
19

bento

An easy to use component library that helps you achieve a great page experience
39
star
20

amp-viewer

Objective-C
38
star
21

amp-react-prototype

A scratch pad to experiment with React rendered AMP Components
JavaScript
36
star
22

amp-github-apps

GitHub Apps for the AMP Project
TypeScript
34
star
23

wg-stories

Responsible for implementing and improving AMP's story format (amp-story). Facilitator: @newmuis
28
star
24

meta-ac

The AMP Advisory Committee
25
star
25

animations

TypeScript
23
star
26

cloudflare-amp-optimizer

Implementation of AMP Optimizer for Cloudflare Workers
JavaScript
22
star
27

design-docs

Design docs contributed to AMP.
20
star
28

wg-bento

JavaScript
17
star
29

amp-react

JavaScript
17
star
30

meta-tsc

The AMP Technical Steering Committee
16
star
31

amp-email-viewer

TypeScript
16
star
32

wg-outreach

Responsible for helping developers who use AMP remain productive and keeping the AMP community healthy. This includes maintaining and enhancing AMP's developer-facing sites and documentation, maintaining communication channels, organizing community events, etc. Facilitator: @sebastianbenz
JavaScript
15
star
33

amp-readiness

AMP Readiness is a chrome extension allows you to quickly see what technologies used on the page are AMP compatible.
JavaScript
14
star
34

error-tracker

AMP Project's error logging server
JavaScript
13
star
35

wg-components

Responsible for AMP components, the overall health of AMP Pages, analytics features, and integrations with partner technologies. Facilitator: @alanorozco
11
star
36

wg-access-subscriptions

Responsible for user specific controlled access to AMP content (amp-subscriptions, amp-access and related extensions) Facilitator: @jpettitt Slack: #wg-access-subs
11
star
37

cdn-worker

CDN worker source code
TypeScript
10
star
38

amphtml-build-artifacts

This repository contains build artifacts related to the ampproject/amphtml project
10
star
39

bento-compiler

Server-render AMP Components with worker-dom
HTML
9
star
40

validator-java

A validator for the AMP HTML format implemented in Java
Java
9
star
41

wg-monetization

Responsible for monetization features and integrations in AMP. Facilitator: @powerivq
8
star
42

wg-caching

Responsible for AMP's validator and features related to AMP caches. Facilitator: @Gregable
8
star
43

px-toolbox-php

PHP
8
star
44

storybook-addon-amp

The storybook AMP addon
TypeScript
8
star
45

cdn-configuration

Configuration settings for AMP Project CDNs
TypeScript
7
star
46

wg-performance

Monitoring and improving AMP's load and runtime performance for compliant documents. Facilitator: @erwinmombay
7
star
47

amp-status

HTML
7
star
48

amp-wp-qa-tester

Easily test pre-release versions of the AMP Plugin for WordPress.
PHP
6
star
49

wg-analytics

Deprecated Working Group, previously responsible for analytics features.
6
star
50

wg-viewers

Responsible for ensuring support for AMP viewers and for the amp-viewer project. Facilitator: @gmajoulet
5
star
51

amp-closure-compiler

JavaScript
5
star
52

wg-runtime

Responsible for AMP's core runtime, such as layout/rendering and data binding. Facilitator: @jridgewell
4
star
53

wg-infra

Responsible for AMP's infrastructure, including building, testing and release. Facilitator: @danielrozenberg
4
star
54

wg-codeofconduct

Responsible for enforcing AMP's Code of Conduct. (The Technical Steering Committee delegates its responsibility for enforcement of the Code of Conduct to this Working Group.) Facilitator: @nainar
3
star
55

npw

A workspace-aware npm wrapper to aid with developing in monorepos
JavaScript
3
star
56

wg-approvers

Responsible for approving changes that have a significant impact on AMP's behavior or significant new features as described in the feature and bug fix process. Facilitator: @dvoytenko
3
star
57

wg-foundation-onboarding

Responsible for work/coordination related to AMP completing the OpenJS Foundation onboarding
3
star
58

error-reporting

Contains production error tracking issues.
2
star
59

wg-security-privacy

2
star