Crypto Ticker Suite – Documentation

Documentation for version 1.0.0. In your dashboard this guide is always available under Crypto Ticker Suite > Documentation.

1. First-time setup

The whole setup takes about a minute. No account or key is needed with the default data source.

  1. Install the plugin. In WordPress go to Plugins > Add New Plugin > Upload Plugin, choose 007aj-crypto-ticker-suite.zip, click Install Now, then Activate.
  2. Run the Setup Wizard. Right after activation you are taken to Crypto Ticker Suite > Setup Wizard. (You can open it again at any time from that menu.) It has five steps:
    1. Data source – keep CoinGecko (recommended, no key needed) or pick Coinpaprika or CoinCap. You can paste an optional CoinGecko key here.
    2. Coins & currency – how many coins to keep (100 to 2,500), how often to refresh prices, and your default currency (more than 150 currencies).
    3. Look – light, dark or automatic color scheme, and an optional site-wide ticker fixed at the top or bottom of every page.
    4. Coin pages – let the plugin create a “Coins” page that lists every coin and gives each coin its own page.
    5. Done – the wizard downloads the first prices and tells you how many coins are in the cache. The rest of the list fills in over the next few minutes in the background.
  3. Add your first widget. Edit any page and add the Crypto Widget (007AJ) block, or paste a shortcode such as [ajcts type="ticker"]. See Adding widgets.
  4. Optional: add donation wallets under Settings > Donations, check the news feeds under Settings > News, and pick your Binance region under Settings > Charts & live prices if your server is in the United States.

The Overview screen shows the data source, the number of coins in the cache, the last and next price refresh, exchange rates, news items and any recent problems. Its Tools buttons let you Refresh prices now, Clear cache and refill, Update exchange rates and Update news.

2. Requirements

  • WordPress 6.2 or newer and PHP 7.4 or newer (PHP 8 included).
  • PHP extension json (always present on normal hosts). The plugin shows a notice and stays inactive without it.
  • PHP extension xml is optional and only used by the news feed. Without it the news feed is switched off and everything else works.
  • WP-Cron must run. It runs on page visits by default; if you disabled it with DISABLE_WP_CRON, make sure a real server cron calls wp-cron.php.
  • Your server must be able to make outgoing HTTPS requests to the data source you choose.

3. Adding widgets to your site

Every widget can be added four ways. All four use exactly the same options.

Block editor (Gutenberg)

Add the Crypto Widget (007AJ) block. Each widget type is also listed as its own block variation (for example “Price ticker (007AJ)”), so you can search for it by name. Choose coins with the coin picker (type a name or symbol) and adjust the options in the sidebar. The editor shows a live preview rendered by your server.

Elementor

In the Elementor panel open the 007AJ Crypto group. It contains one widget per type with the same options and a searchable coin picker.

Shortcodes and the Shortcode Builder

Open Crypto Ticker Suite > Shortcode Builder, choose a widget type and its options, check the live preview, then click copy and paste the shortcode into any post, page or widget area.

The main shortcode is [ajcts type="..."]. Every type also has a short alias, for example [ajcts_ticker], [ajcts_table], [ajcts_converter]. Both forms accept the same attributes.

[ajcts type="ticker" coins="bitcoin,ethereum,solana"]
[ajcts_table top="100" per_page="25" currency="EUR"]
[ajcts type="chart" coin="ethereum" chart_type="candle" days="30"]

Classic widget areas

Under Appearance > Widgets (classic widgets) add Crypto Widget (007AJ). Set a title, the widget type, coins, number of top coins, currency and color scheme. Any other attribute from the reference goes in More options, for example changes="1h,24h" decimals="4". Block-based widget areas use the block described above.

Widgets are complete when the page loads: prices, tables and sparklines are rendered by your server, so visitors and search engines see real numbers before any JavaScript runs. CSS and JavaScript load only on pages that contain a widget.

4. The 15 widgets

Type Shortcode What it shows
Price ticker [ajcts type="ticker"] A scrolling marquee of coins with price and change. Pauses on hover. Can sit inline or fixed at the top/bottom of the screen.
Coin list [ajcts type="list"] A compact vertical list of coins with logo, price and change. Good for sidebars.
Price table [ajcts type="table"] A full market table with search, sortable columns, paging and 7-day sparklines.
Price label [ajcts type="label"] Small inline price badges you can place inside text.
Multi-currency tabs [ajcts type="tabs"] Coin prices with a tab per currency (USD, EUR, GBP, JPY, INR by default).
Price card [ajcts type="card"] One card per coin with price, 1h/24h/7d change, market cap, volume and a sparkline.
Price block [ajcts type="block"] A grid of tiles, one per coin (6 by default).
Price slider [ajcts type="slider"] A carousel of coin cards with optional autoplay and previous/next buttons.
Accordion [ajcts type="accordion"] Coins as expandable rows that open to show details.
Price chart [ajcts type="chart"] A line or candlestick chart with 24H, 7D, 1M, 3M and 1Y range buttons and a hover tooltip.
Converter [ajcts type="converter"] Converts between crypto and fiat, crypto and crypto, or fiat and fiat, with a swap button.
News feed [ajcts type="news"] Latest headlines from crypto news RSS feeds, as a list or grid.
Donation box [ajcts type="donation"] Your wallet addresses with copy buttons and QR codes, as tabs or a table. Optional MetaMask button for Ethereum-style addresses.
Binance live prices [ajcts type="binance"] Trading-pair prices that update in real time from Binance in the visitor’s browser.
Single coin details [ajcts type="coin" coin="bitcoin"] Everything about one coin: price, changes, market data, chart and converter. Used by the coin pages.

5. Shortcode attribute reference

Choosing coins

  • coins – coin IDs or symbols, comma separated, for example coins="bitcoin,eth,solana". IDs are the ones your data source uses (CoinGecko: bitcoin, ethereum…). Symbols work too and match the highest-ranked coin with that symbol, so your widgets keep working if you switch data source. The pickers in the block editor, Elementor and the builder fill this in for you.
  • top – when coins is empty, show this many coins (1–2500).
  • order – order of the top coins: rank (default), gainers, losers, volume, market_cap.

Attributes shared by the price widgets

Attribute Values Default
currency Any supported 3-letter currency code, e.g. USD, EUR, NGN Default currency from Settings
decimals auto or a number 0–10 Price decimals from Settings (auto)
changes Any of 1h, 24h, 7d, comma separated, or none 24h (card, accordion, coin: 1h,24h,7d)
theme light, dark, auto Color scheme from Settings
logos yes / no From Settings
link yes / no – link coin names to their coin page From Settings
live yes / no – refresh prices while the page is open, at the interval set under Settings > Display > Live updates (has no effect while that setting is Off) yes when Live updates is on
title Optional heading above the widget empty
class Extra CSS class names for your own styling empty

Attributes for specific widgets

Widget Attribute Values Default
ticker position inline, top, bottom (fixed to the screen edge) inline
speed Seconds per full scroll loop, 10–300 (lower is faster) Ticker scroll duration from Settings (40)
table top Number of coins in the table 100
per_page Rows per page, 5–100 25
columns Any of rank,price,1h,24h,7d,market_cap,volume,supply,sparkline all of them
search yes / no yes
label, card top Coins shown when coins is empty 1
block top Coins shown when coins is empty 6
tabs currencies 3-letter codes, comma separated USD,EUR,GBP,JPY,INR
slider autoplay yes / no yes
interval Seconds per slide, 2–30 4
chart coin One coin ID or symbol bitcoin
chart_type line or candle line
days 1, 7, 30, 90, 365 7
height Pixels, 150–800 300
converter mode all, crypto_fiat, fiat_crypto, crypto_crypto, fiat_fiat all
from Starting coin ID/symbol (or a currency code in fiat_fiat mode) bitcoin
to Starting target currency or coin Default currency
amount Starting amount 1
top How many coins the coin menus offer 100
currencies Limit the currency menus to these codes (empty = all supported) empty
news count Headlines, 1–30 6
layout list or grid list
images yes / no yes
excerpt yes / no yes
donation wallets Wallet slugs, comma separated (empty = all wallets). The slug is shown under each saved wallet’s name in Settings > Donations. empty
layout list (tabs) or table list
qr yes / no yes
metamask yes / no yes
title Heading text Support us with crypto
binance symbols Binance trading pairs, comma separated, e.g. BTCUSDT,ETHUSDT BTCUSDT,ETHUSDT,BNBUSDT,SOLUSDT,XRPUSDT
layout list or cards list
live yes / no – connect to the Binance live stream yes
coin coin One coin ID or symbol (on a coin page it is taken from the address) empty
days Chart range: 1, 7, 30, 90, 365 7

Invalid values are replaced by the default, so a typo never breaks a page.

6. Settings, tab by tab

Go to Crypto Ticker Suite > Settings.

Data source

  • Data source – CoinGecko (recommended, no key needed), Coinpaprika (no key needed, up to 2,000 coins) or CoinCap (needs your own CoinCap API key).
  • CoinGecko API key (optional) – paste a key from your CoinGecko account and choose Demo key (free account) or Paid CoinGecko plan key. Without a key the public limit is enough for the default settings; a key raises it. Saved keys are never shown again; leave the field blank to keep the saved key, or tick Remove the saved key.
  • CoinCap API key – only needed when CoinCap is the data source.
  • Coins to keep in the cache – 100, 250, 500, 1,000, 1,500, 2,000 or 2,500. CoinGecko loads 250 coins per request, spread over several cron runs. Coinpaprika and CoinCap return up to 2,000 coins. Custom coins are added on top.
  • Refresh prices every – 5, 10, 15, 30 or 60 minutes (default 10).

Display

  • Default currency – used when a widget has no currency attribute.
  • Price decimals – Automatic (more decimals for small prices) or a fixed 0–10.
  • Color scheme – Light, Dark, or Follow the visitor’s device.
  • Coin logos – show coin logos (loaded from the data source’s image server).
  • Attribution – shows a small “Data by …” line under widgets. On by default. CoinGecko’s free plan and ExchangeRate-API’s open endpoint require attribution; keep it on unless your plan allows otherwise.
  • Site-wide ticker – Off, fixed at the top of every page, or fixed at the bottom of every page.
  • Site-wide ticker coins – coin IDs or symbols, or leave empty to show the top N coins.
  • Ticker scroll duration – seconds per loop (lower is faster).
  • Live updates – Off, or every 30 seconds, 1, 2 or 5 minutes. Open pages fetch the latest cached prices from your own site, never from the data source.

Coin pages

See Single-coin pages.

Charts & live prices

  • Chart data – CoinGecko (when CoinGecko is the data source) or Binance (coin symbol against USDT). With Coinpaprika or CoinCap as the data source, charts always come from Binance. Charts are cached for 10 minutes to 3 hours depending on the range.
  • Binance region – Binance.com (global) or Binance.US. See Binance live prices.

News

  • News feeds – one RSS or Atom address per line, up to 8. Cointelegraph, Decrypt and CoinDesk are filled in by default. Only use feeds you are allowed to republish headlines from.
  • Check feeds every – 30, 60, 180 or 360 minutes.

Donations

See Donation box.

Advanced

  • Custom CSS – added after the plugin stylesheet on pages that show a widget.
  • Uninstall – see Uninstalling.

7. Custom coins

Go to Crypto Ticker Suite > Custom Coins to add coins that are not in your top list.

  • Tracked – enter the coin’s ID at your data source (for example the CoinGecko ID from the coin’s page address, such as pepe). It is downloaded by ID and refreshes with everything else.
  • Manual – for your own token or a coin no data source lists. Enter a coin ID, name, symbol, price in USD, and optionally the 24h change, market cap and a logo URL. Manual coins get the ID prefix custom- (for example custom-mytoken) and keep the price you enter. To change it, add the coin again with the same ID; the new values replace the old ones.

Custom coins work in every widget, by their ID or symbol. Remove one with the Remove link in the list.

8. Single-coin pages

Coin pages give every coin its own address, for example https://example.com/coin/bitcoin/, with price, changes, market data, a chart and a converter.

  1. Go to Settings > Coin pages.
  2. Under Coin page pick an existing page, or tick Create a new “Coins” page for me, and save.
  3. Optional: change the Address base (default coin) to change the /coin/ part of the address.
  4. Keep Link coin names in widgets to their coin page ticked so widgets link to these pages.

The chosen page itself lists all coins in a searchable table. It works with or without the [ajcts_coin_page] shortcode in its content; add the shortcode if you want to control where the coin content appears. An unknown coin address shows the coin table so visitors can pick a coin instead of seeing an error. Choose — Coin pages off — to switch the feature off.

Coin pages need pretty permalinks (any setting except “Plain” under Settings > Permalinks). The plugin refreshes the rewrite rules itself when you save.

9. Donation box and QR codes

  1. Go to Settings > Donations and click Add wallet.
  2. Enter a Name (e.g. Bitcoin), Symbol (BTC), the Address and an optional Note (e.g. “Lightning not supported”).
  3. Tick Ethereum-style address for addresses that start with 0x to offer a Send with MetaMask button (shown only to visitors who have MetaMask or a compatible browser wallet; the amount is entered in ETH).
  4. Save, then add [ajcts type="donation"] to a page. Use layout="table" for a table, and wallets="..." to show only some wallets.

QR codes are generated on your own server as SVG images. No QR service is contacted and no address leaves your site. Every address has a copy button.

Always double-check your addresses after saving. Payments sent to a wrong address cannot be reversed.

10. Binance live prices

[ajcts type="binance" symbols="BTCUSDT,ETHUSDT"] shows trading pairs. The first prices come from your server (cached for 60 seconds). With live="yes" the visitor’s browser then connects directly to Binance’s public price stream and prices update in real time. No Binance account or key is needed. If the stream cannot connect, the cached prices stay visible.

Binance.com is not available from some countries, including the United States. If your server or most of your visitors are in the US, choose Binance.US under Settings > Charts & live prices > Binance region. Binance.US lists fewer pairs.

11. How data is loaded and cached

  • Visitors never trigger a call to the data source. Pages read prices from a database table on your site.
  • WP-Cron refreshes prices at the interval you choose. Large coin counts are loaded in small batches across several runs to stay within the free limits.
  • Right after setup, if the cache is empty, the plugin makes one guarded request so the first page already shows prices.
  • Exchange rates for more than 150 currencies are refreshed twice a day. Prices are stored in USD and converted when shown.
  • Charts are cached for 10 minutes (24H) up to 3 hours (1Y). News is checked at the interval you set.
  • If a data source is slow or down, the plugin keeps showing the last good data and retries later. The Overview screen lists recent problems.
  • The Tools on the Overview screen refresh everything on demand.

12. Data sources and their terms

The plugin connects to these outside services. Your server sends only a plain request for public market data; no visitor data is sent.

Service Used for Terms
CoinGecko (default) Prices, coin data, charts, coin logos API terms · Privacy
Coinpaprika Prices and coin data when selected Terms · Privacy
CoinCap Prices and coin data when selected (your own key) Terms · Privacy
ExchangeRate-API (open.er-api.com) Fiat exchange rates Terms · Privacy
Binance / Binance.US Charts (when selected) and live prices. The live stream is opened by the visitor’s browser. Binance terms · Privacy · Binance.US terms
News feeds (Cointelegraph, Decrypt, CoinDesk or your own) Headlines and thumbnails The terms of each publisher

You are responsible for following the terms of the services you use, including attribution. Coin logos and news thumbnails are loaded by the visitor’s browser from the source’s image server; switch logos off under Settings > Display if you prefer.

Prices are provided for information only and may be delayed. They are not financial advice.

13. Styling, dark mode and RTL

  • Pick theme="dark" or theme="auto" per widget, or set the color scheme for all widgets in Settings > Display.
  • Right-to-left languages are supported automatically.
  • Every widget has the class ajcts plus ajcts-w-TYPE (for example ajcts-w-table). Add your own class with class="..." and style it under Settings > Advanced > Custom CSS or in your theme.
  • Colors are CSS variables, for example: .ajcts { --ajcts-up: #16a34a; --ajcts-down: #dc2626; }
  • All styles and scripts are bundled with the plugin; nothing is loaded from a CDN.

14. Troubleshooting and FAQ

A widget says prices are not available yet.
The cache is still filling or the data source could not be reached. Open the Overview screen: check “Recent problems” and click Refresh prices now. If WP-Cron is disabled on your host, set up a server cron for wp-cron.php.
Prices do not change.
Prices refresh at the interval under Settings > Data source. If you use a page caching plugin, its cached pages show the prices from when the page was cached; turn on Live updates to refresh prices in the browser.
A coin I need is missing.
Raise “Coins to keep in the cache”, or add it under Custom Coins.
The chart says chart data is not available.
With Binance as the chart source, the coin needs a USDT pair on Binance (or Binance.US). Switch Chart data to CoinGecko, or pick another coin.
Binance live prices do not move.
Choose the Binance region that works in your visitors’ country. Some networks and ad blockers block websockets; the cached prices still show.
The news feed is empty.
Check the feed addresses under Settings > News and click Update news on the Overview screen. The PHP XML extension must be installed.
A coin page shows “not found”.
Save Settings > Coin pages once more and make sure permalinks are not set to “Plain”.
Can I use more than one data source at the same time?
No. One source supplies all prices so numbers stay consistent. Binance live prices are separate and can be used with any source.
Does the plugin store personal data?
No. It stores only settings and public market data. A short note is added to Settings > Privacy for your privacy policy.

15. Uninstalling

Deactivating stops all scheduled tasks. Deleting the plugin keeps your settings, wallets and custom coins by default, so a reinstall picks up where you left off. To remove everything, tick Delete all plugin data … when the plugin is deleted under Settings > Advanced before deleting the plugin. The “Coins” page, if the plugin created one, is left in place for you to delete if you wish.

007AJ Crypto Ticker Suite is released under the GNU General Public License v2 or later.

Support

Support for this plugin is handled through the WPBay support system. Open the plugin’s page on WPBay, go to its support section and open a ticket from your WPBay account. Please include your WordPress, PHP and plugin versions and what you were doing when the problem happened. We reply there, usually within one business day.