extension-workshop/sidebar-master-template.md

18 KiB
Исходник Постоянная ссылка Ответственный История

layout title permalink published topic tags contributors last_updated_by date skip_index
sidebar Sidebar Master Template /sidebar-master-template/ false Develop
label
distribution
install
remove
lancecummings
caitmuenster
muffinresearch
lancecummings 2019-06-24 09:00:00 true

{% capture page_hero_banner_content %}

Develop

Short and brief description of the sort of content you will find on this page.

{% endcapture %} {% include modules/page-hero.html content=page_hero_banner_content cta1_label="Do first thing" cta1_url="#" cta2_label="Do second thing" cta2_url="#" %}

{% capture content_with_toc %}

Label Title 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et. Consectetur adipiscing elit, sed.

{% capture note %}

Note that this is a one-way conversion. You cannot update an extension using WebExtensions to use a legacy technology. This means that you must be sure that you are ready to commit to using WebExtension APIs before you submit the updated add-on to AMO.

{% endcapture %} {% include modules/note.html content=note alert=false %}

{% capture table %}

Column Title Column Title Column Title
Content scripts matching URL patterns page-mod API content-scripts key
Content scripts matching URL patterns page-mod API content-scripts key
Content scripts matching URL patterns page-mod API content-scripts key

{% endcapture %} {% include modules/table.html content=table %}

{% endcapture %} {% include modules/column-w-toc.html id="section-1" content=content_with_toc %}

{% capture content %}

Label Title 2

You reference all extensions API functions using a namespace, for example, browser.alarms.create([delayInMinutes]); would create an alram in Firefox that goes off after the time specified in code goes here

code link goes here and runtime.sendNativeMessage()

{% highlight javascript linenos %} function setCurrentChoice(result) {   document.querySelector('#color').value = result.color || 'blue'; } {% endhighlight %}

{% endcapture %} {% include modules/one-column.html id="section-2" content=content aside="" %}

{% capture content %}

Label Title 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et. Consectetur adipiscing elit, sed.

{% capture alert %}

Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

{% endcapture %} {% include modules/note.html content=alert alert=true %}

{% endcapture %} {% include modules/one-column.html id="" content=content aside="" %}

{% capture col_1_content %}

![Example Alt Tag Description]({% asset "fpo-half-width-image-1.jpg" @path @optim %} "Example Title Tag Description")

{% endcapture %} {% capture col_2_content %}

Laser Cat

This page provides a succinct description of the extension, clear instructions on how to fire your cats lasers, and how to turn your laser cat on and off.

{% endcapture %} {% include modules/two-column.html id="" col_1=col_1_content col_2=col_2_content aside="" reverse=true %}

{% capture col_1_content %}

![Example Alt Tag Description]({% asset "fpo-half-width-image-2.png" @path @optim %} "Example Title Tag Description")

{% endcapture %} {% capture col_2_content %}

Ghostery - Privacy Ad Blocker

As the features of Ghostery are mostly silent, this onboarding screen gives users two options for the initial setup: A simple one-click option and a link to the full settings so they can customize how Ghostery works.

{% endcapture %} {% capture aside %}

Cards contain content and links about a single subject.

Related Article

{% endcapture %} {% include modules/two-column.html id="" col_1=col_1_content col_2=col_2_content aside=aside reverse=false %}

{% capture content %}

Label Title 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et. Consectetur adipiscing elit, sed.

{% capture expandable-list %}

{% capture item-content %}

Developers receive 70% of the pre-VAT and fee amount. For instance, if the US price is .99 (Tier 10), the Euro price is €.89, and the VAT is 20% (based on a UK standard VAT rate), the pre-VAT price is €.74, which is around .99 (sometimes the equivalent price tier may be higher and sometimes lower). Developers receive 70% of the €. For more information on price tiers and pricing, read App pricing.

{% endcapture %} {% include modules/expandable-list-item.html id="content-1" title="How do I change my developer account information?" content=item-content %}

{% capture item-content %}

Developers receive 70% of the pre-VAT and fee amount. For instance, if the US price is .99 (Tier 10), the Euro price is €.89, and the VAT is 20% (based on a UK standard VAT rate), the pre-VAT price is €.74, which is around .99 (sometimes the equivalent price tier may be higher and sometimes lower). Developers receive 70% of the €. For more information on price tiers and pricing, read App pricing.

{% endcapture %} {% include modules/expandable-list-item.html id="content-2" title="How do I change my developer account information?" content=item-content %}

{% capture item-content %}

Developers receive 70% of the pre-VAT and fee amount. For instance, if the US price is .99 (Tier 10), the Euro price is €.89, and the VAT is 20% (based on a UK standard VAT rate), the pre-VAT price is €.74, which is around .99 (sometimes the equivalent price tier may be higher and sometimes lower). Developers receive 70% of the €. For more information on price tiers and pricing, read App pricing.

{% endcapture %} {% include modules/expandable-list-item.html id="content-3" title="How do I change my developer account information?" content=item-content %}

{% endcapture %} {% include modules/expandable-list.html list=expandable-list %}

{% endcapture %} {% include modules/one-column.html id="section-4" content=content aside="" %}

{% capture content %}

Phase 1 Components

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et. Consectetur adipiscing elit, sed.

{% include modules/image-with-caption.html source="content-guidelines/example-remembear.png" alt="Screenshot Remembear" caption="Full width image (above)" %}

{% endcapture %} {% include modules/one-column.html id="" content=content aside="" %}

{% capture col_1_content %}

{% include modules/image-with-caption.html source="content-guidelines/example-remembear.png" alt="Screenshot Remembear" caption="Full width image (above)" %}

{% endcapture %} {% capture col_2_content %}

{% include modules/image-with-caption.html source="content-guidelines/example-remembear.png" alt="Screenshot Remembear" caption="Full width image (above)" %}

{% endcapture %} {% include modules/two-column.html id="" col_1=col_1_content col_2=col_2_content aside="" reverse=false %}

{% capture content %}

{% include modules/video-popup.html title="Whats Great Content and Design?" youtube_id="a0_OsLGI0k4" image="content-guidelines/example-thumbnail.jpg" alt="Whats Great Content and Design?" %}

{% endcapture %} {% include modules/one-column.html id="" content=content aside="" %}

{% capture col_1_content %}

{% include modules/video-popup.html title="Whats Great Content and Design?" youtube_id="a0_OsLGI0k4" image="content-guidelines/example-thumbnail.jpg" alt="Whats Great Content and Design?" %}

Whats Great Content and Design?

Featuring Madhava Enros, Senior Director of Firefox User Experience, and Dietrich Ayala, extension developer.

{% endcapture %} {% capture col_2_content %}

{% include modules/video-popup.html title="Whats Great Content and Design?" youtube_id="a0_OsLGI0k4" image="content-guidelines/example-thumbnail.jpg" alt="Whats Great Content and Design?" %}

Whats Great Content and Design?

Featuring Madhava Enros, Senior Director of Firefox User Experience, and Dietrich Ayala, extension developer.

{% endcapture %} {% include modules/two-column.html id="" col_1=col_1_content col_2=col_2_content aside="" reverse=false %}

{% capture content %}

Icons

Examples of goood icons

{% endcapture %} {% capture grid %}

{% include modules/icon-grid-cell.html image="content-guidelines/example-icon.png" alt="Icon" width="53" fit="shrink" %}

{% include modules/icon-grid-cell.html image="content-guidelines/example-icon.png" alt="Icon" width="53" fit="shrink" %}

{% include modules/icon-grid-cell.html image="content-guidelines/example-icon.png" alt="Icon" width="53" fit="shrink" %}

{% endcapture %} {% include modules/icon-grid.html content=content grid=grid %}

{% capture content %}

Your extensions name is critical. It shows up everywhere—in search results, on addons.mozilla.org, and in the browser itself. Its sometimes one of the few pieces of information that a user has to determine whether or not they are interested in what you built.

Research shows that people really do take an extensions name into account when making installation decisions. And, what you put into the extension name field becomes your URL on addons.mozilla.org.

Between your extension name and subtitle, you have up to 70 characters to use—thats because 70 is the max character limit for your headline in external search results. Its best to keep your extension name shorter so you have more characters left over for your subtitle.

  • Tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Enim facilisis gravida neque convallis a cras.
  • Id diam vel quam elementum pulvinar etiam non. Quam id leo in vitae turpis.

Extension Name Dos and Donts

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

{% capture dothis %}

  1. Make it memorable
  2. Make it unique
  3. Keep it short for better display on smaller screens
  4. Make it easy to read and say
  5. Give an idea or hint about what your extension does with an illustrative word or metaphor

{% capture example %}

Examples: An extension that saves passwords is called Remembear

An extension that puts a cat on new tabs is called Tabbycat

An extension that improves YouTube is called Enhancer for YouTube

{% endcapture %} {% include modules/example.html content=example layout="block" %}

{% endcapture %} {% include modules/do-this.html title="Do This" content=dothis %}

{% capture notthis %}

1. Don't include a description.

Save these details for your subtitle and description.

{% include modules/example.html content="Example: Videomix, a fast video downloader" layout="inline" %}

2. Don't stuff it with keywords.

Google is smarter than this and it just makes your extension look untrustworthy.

{% include modules/example.html content="Example: Youtube Download Videos, Convert, Media, MP3, MP4, Free." layout="inline" %}

3. Don't use random words to differentiate, like “Barbara Notetaker.”

Instead, create a descriptive name that is not already in use, like “Instant Notetaker.”

4. Don't call it something with no meaning, like “hoyv.”

While the name “hoyv” doesnt work, the name “uBlock Origin” for an ad-blocking extension does because it contains the word “block”.

5. Don't include "WebExtension," “Firefox” or “Mozilla."
6. Don't include version number or a previous name.

{% include modules/example.html content="Example: Weatherchanger (fix version)" layout="inline" %}

7. Don't make it hard to read or say.

{% include modules/example.html content="Example: TrLrs! Tab Changer." layout="inline" %}

Remembear Example:

![Screenshot Remembear]({% asset "content-guidelines/example-remembear.png" @path @optim %} "Screenshot Remembear")

List Example:

{% endcapture %} {% include modules/not-this.html title="Not This" content=notthis %}

{% endcapture %} {% include modules/one-column.html id="section-2" content=content aside="" %}

{% capture do_this_content %}

  1. Make it memorable
  2. Make it unique
  3. Keep it short for better display on smaller screens

{% capture example %}

Examples: An extension that saves passwords is called Remembear

An extension that puts a cat on new tabs is called Tabbycat

An extension that improves YouTube is called Enhancer for YouTube

{% endcapture %} {% include modules/example.html content=example layout="block" %}

{% endcapture %} {% capture not_this_content %}

  1. Make it memorable
  2. Make it unique
  3. Keep it short for better display on smaller screens

{% capture example %}

Examples: An extension that saves passwords is called Remembear

An extension that puts a cat on new tabs is called Tabbycat

An extension that improves YouTube is called Enhancer for YouTube

{% endcapture %} {% include modules/example.html content=example layout="block" %}

{% endcapture %} {% include modules/do-this-not-this.html do_this_title="Do This" do_this_content=do_this_content not_this_title="Not This" not_this_content=not_this_content %}

{% capture content %}

{% capture tile %}

Requirements

  • Minimum length: 2 characters
  • Maximum length: 70 characters between extension name and subtitle
  • Lorem ipsum: dolor sit amet, consectetur adipiscing elit
  • Sed do eiusmod: tempor incididunt ut labore et dolore magna aliqua
  • Ut enim ad: minim veniam, quis nostrud exercitation ullamco laboris
  • Nisi ut aliquip: ex ea commodo consequat
  • Duis aute: irure dolor in reprehenderit in voluptate velit esse cillum
  • Excepteur sint: occaecat cupidatat non proident
  • Bunt in culpa: qui officia deserunt mollit anim id est laborum

{% endcapture %} {% include modules/tile.html content=tile %}

{% endcapture %} {% include modules/one-column.html id="" content=content aside="" %}

{%- include page-meta-data.html -%}

{%- include up-next.html -%}