Fy2Press 1.0.0 · 09
Reference all 27 public shortcodes
Use the exact public fy2press_* catalog, grouped by product, collection and filtering responsibility.
Documentation for Fy2Press 1.0.0. The free plugin is available on WordPress.org. PRO is sold separately through Freemius, our licensing and payment provider.
In three steps
- Start with the complete product or collection shortcode when a composed default is sufficient.
- Use granular shortcodes only inside a context that provides the required product or collection.
- Validate the rendered page and the transition to Shopify before publishing.
This guide describes Fy2Press 1.0.0. Screens can change in later versions, so check the version shown on the Plugins screen before you follow it.
Expected result
Use the exact public fy2press_* catalog, grouped by product, collection and filtering responsibility.
Use the complete 27-entry public registry below as a version-bound API surface. Each entry records its minimal syntax, attributes and defaults, required context, output and known limit. WordPress passes shortcode attributes as strings before the renderer normalizes supported values.
Before you begin
- Start with the complete product or collection shortcode when a composed default is sufficient.
- Use granular shortcodes only inside a context that provides the required product or collection.
- Validate the rendered page and the transition to Shopify before publishing.
What this covers
Remember who does what: Shopify keeps products, inventory, orders, payments and checkout; Fy2Press brings the catalog into WordPress and displays it; WordPress hosts your pages and editorial content. Nothing in this guide moves orders, customers or payments to WordPress.
Use the complete 27-entry public registry below as a version-bound API surface. Each entry records its minimal syntax, attributes and defaults, required context, output and known limit. WordPress passes shortcode attributes as strings before the renderer normalizes supported values.
Steps
- Start with the complete product or collection shortcode when a composed default is sufficient. Consult the complete version-bound inventory rendered below and test the smallest representative example before reusing it.
- Use granular shortcodes only inside a context that provides the required product or collection. Consult the complete version-bound inventory rendered below and test the smallest representative example before reusing it.
- Validate the rendered page and the transition to Shopify before publishing. Consult the complete version-bound inventory rendered below and test the smallest representative example before reusing it.
Check the result
Check the result where visitors will see it: open the public WordPress page, not only the Fy2Press screen, and compare a representative product with Shopify, including its price, availability, variants and collection. Repeat a small change once to confirm that the behaviour is stable.
- Confirm the exact name or stable ID.
- Compare the declared context with the rendered page.
- Test empty, long and unavailable data states.
- Compare Gutenberg, shortcode, Elementor and WPBakery output only where the coverage matrix declares a component.
Common problems
- Do not infer an attribute, block control or builder component from a similar name.
- Do not count builder-only components among public shortcodes.
- Do not describe conceptual coverage as control, markup or behavioral parity.
Troubleshooting
- Reconfirm the installed package version and edition.
- Reduce the issue to one component, one known catalog record and one WordPress URL.
- Compare the exact name, stable ID, context and output with the version-bound inventory below.
- Identify whether the failing responsibility belongs to Shopify, Fy2Press or WordPress.
- Preserve the rendered response and settings before changing configuration, then repeat the smallest safe test once.
Security and data
If you ask for help, note the plugin version, the WordPress and PHP versions, your theme or page builder, the page address and the steps you followed. Use test products, and remove tokens, customer data, order details and private addresses from screenshots before sharing them.
Effect on search
Reference components can change headings, links, product data and interactive controls. Inspect rendered semantics, accessibility, canonical behavior and the Shopify buying handoff on a representative page.
Information for support
If you ask for help, note the plugin version, the WordPress and PHP versions, your theme or page builder, the page address and the steps you followed. Use test products, and remove tokens, customer data, order details and private addresses from screenshots before sharing them.
Related guides
Version and availability
Documentation for Fy2Press 1.0.0. The free plugin is available on WordPress.org. PRO is sold separately through Freemius, our licensing and payment provider.
Go further: Build with blocks and shortcodes (EN)
Product surface
Shortcode attributes arrive as WordPress strings and are normalized by the renderer. The values below come from the Fy2Press source for the version shown; they do not prove control parity across builders.
fy2press_product[fy2press_product id="123"]Role: complete product composition. Context: a published shopipress_product, or resolve with id or handle. Attributes/defaults: id=empty; handle=empty; show_description=yes; show_collections=yes; show_tags=no; class=empty. Output: product media, title, price and the available product controls. Returns an empty string when no published product resolves.fy2press_product_title[fy2press_product_title]Role: product title. Context: product page or builder preview. Attributes/defaults: fallback=Product Title Placeholder; show_fallback_in_editor=yes; tag=h1; font_size, font_weight, color, text_align, margin, padding and css_class=empty. Output: escaped title in the validated text container.fy2press_product_description[fy2press_product_description content_type="excerpt"]Role: product description. Context: singular product; otherwise the preview fallback. Attributes/defaults: content_type=full (full|excerpt|custom); word_limit=150; tag=div; fallback=empty; font_size=empty; font_weight=400; color, text_align, line_height, margin_top, margin_bottom, padding, css_class and css_id=empty; debug=false. Output: allowed product HTML passed through WordPress formatting.fy2press_product_price[fy2press_product_price type="range"]Role: product price. Context: singular product or preview fallback. Attributes/defaults: type=single (single|range|from); currency=symbol (symbol|code|none); fallback=$29.99; tag=div; font_size, font_weight, color, text_align, margin, padding and css_class=empty; show_compare=no; compare_color=#9ca3af; show_sale_badge=no; badge_color=#ef4444; badge_text_color=#ffffff; badge_text=On Sale. Output: formatted minimum, range or from-price, with optional comparison and sale badge.fy2press_product_image[fy2press_product_image link_to="product"]Role: featured product image. Context: singular product or editor preview. Attributes/defaults: size=large; width, height, object_fit and align=empty; link_to=none (none|full_image|product|custom); custom_url=empty; target_blank=empty; border_radius, border, box_shadow, margin, css_class, css_id and alt_text=empty. Output: responsive image markup with an optional validated link.fy2press_product_url[fy2press_product_url]Role: Shopify product URL. Context: synchronized product with a valid Shopify handle and configured store. Attributes/defaults: format=url (url|link); text=View on Shopify; target=_blank; class=shopipress-product-url shopipress-d-product-url. Output: escaped URL text or link; empty when the source URL cannot be resolved.fy2press_product_vendor[fy2press_product_vendor]Role: product vendor. Context: product data. Attributes/defaults: class=shopipress-product-vendor shopipress-d-product-vendor; prefix=empty; suffix=empty. Output: escaped vendor label or empty string.fy2press_product_type[fy2press_product_type]Role: Shopify product type. Context: product data. Attributes/defaults: class=shopipress-product-type shopipress-d-product-type; prefix=empty; suffix=empty. Output: escaped product-type label or empty string.fy2press_product_tags[fy2press_product_tags]Role: synchronized product-tag links. Context: product post with shopipress_tags terms. Attributes/defaults: separator=comma-space; limit=0; class=shopipress-product-tags shopipress-d-product-tags; tag_class=shopipress-product-tag shopipress-d-product-tag; style=links (links|badges); prefix=empty; suffix=empty; title=Tags:; wrapper=div; wrapper_class=shopipress-tags-section shopipress-d-tags-section; hide_if_empty=true. Output: linked terms.fy2press_product_gallery[fy2press_product_gallery]Role: product gallery. Context: synchronized product media. Attributes/defaults: show=all (all|featured); layout=gallery (gallery|slider); thumbs=bottom (bottom|right|none); size=large (medium|large|original); columns=4; class, main_class and thumb_class use the built-in Fy2Press defaults. Output: main image and optional thumbnails.fy2press_product_availability[fy2press_product_availability]Role: availability status. Context: product inventory data. Attributes/defaults: show=status (status|quantity|both); format=text (text|badge); in_stock_text=In Stock; out_of_stock_text=Out of Stock; low_stock_text=Low Stock; low_stock_threshold=5; show_quantity=false; class=shopipress-product-availability shopipress-d-product-availability. Output: status and optionally quantity.fy2press_product_variants[fy2press_product_variants]Role: variant selector. Context: product with synchronized variants. Attributes/defaults: style=dropdown (dropdown|buttons|grid); show_prices=false; show_images=false; show_labels=true; built-in class and option_class defaults; hide_default_variant=true. Output: selectable variant controls; default-title variants can be hidden.fy2press_product_collections[fy2press_product_collections]Role: product collection links. Context: product with shopipress_collections terms. Attributes/defaults: style=links (links|badges); separator=comma-space; limit=0; built-in class and collection_class defaults; prefix and suffix=empty; title=Collections:; wrapper=div; built-in wrapper_class; hide_if_empty=true. Output: linked collection terms.fy2press_add_to_cart[fy2press_add_to_cart]Role: Shopify cart action. Context: resolved product and purchasable variant. Public attributes: none; the shortcode uses the built-in product-design schema. Output: quantity and add-to-cart contract when available; the safe missing-variant action can direct the visitor to view the product. Checkout remains on Shopify.fy2press_buy_now[fy2press_buy_now]Role: direct Shopify buying action. Context: resolved product and variant. Attributes/defaults: text=Buy Now; class=shopipress-buy-now-btn shopipress-d-buy-now-btn; target=_blank. Output: escaped buying link that hands commerce back to Shopify.fy2press_related_products[fy2press_related_products limit="4"]Role: related product list. Context: a product resolved by current page or id. Attributes/defaults: id=empty; limit=4; title=You may also like; orderby=date; class=empty. Output: a bounded related-product composition; no dedicated builder component exists in the version shown.
Collection surface
Shortcode attributes arrive as WordPress strings and are normalized by the renderer. The values below come from the Fy2Press source for the version shown; they do not prove control parity across builders.
fy2press_collection[fy2press_collection handle="collection-handle"]Role: complete collection composition. Context: collection resolved by id, handle or collection archive. Attributes/defaults: id=empty; handle=empty; limit=24; columns=4; show_title=yes; show_description=yes; pagination=infinite; class=empty. Output: collection heading and product loop, or empty when no collection resolves.fy2press_products_loop[fy2press_products_loop collection="collection-handle" limit="12" columns="3"]Role: product grid. Context: any page, optionally filtered to a collection. Attributes/defaults: limit=24; columns=4; collection=empty; class=shopipress-d-products-loop; item_class=shopipress-product-card; pagination=infinite; sort_by=empty. Supported sort mappings include price, title and created-date directions. Output: paginated or infinite catalog cards using local synchronized records and reviewed Storefront data paths.fy2press_collection_title[fy2press_collection_title]Role: collection title. Context: collection archive or resolved term. Attributes/defaults: tag=h1; class=shopipress-collection-title shopipress-d-collection-title; prefix=empty; suffix=empty. Output: escaped collection title.fy2press_collection_description[fy2press_collection_description]Role: collection description. Context: collection archive or resolved term. Attributes/defaults: class=shopipress-collection-description shopipress-d-collection-description; wrapper=div; hide_if_empty=true. Output: allowed description HTML or nothing when empty.fy2press_collection_sort[fy2press_collection_sort]Role: product sort control. Context: a product loop that reads the same public query state. Attributes/defaults: class=shopipress-collection-sort; label=Sort by:; show_label=true; default_option=Sort by...; wrapper=div; wrapper_class=shopipress-sort-wrapper shopipress-d-collection-sort. Output: sort selector preserving compatible query parameters.
Search and filters
Shortcode attributes arrive as WordPress strings and are normalized by the renderer. The values below come from the Fy2Press source for the version shown; they do not prove control parity across builders.
fy2press_product_search[fy2press_product_search]Role: local product-title search control. Context: paired with the products loop. Attributes/defaults: placeholder=Search products...; class, wrapper_class, input_class and button_class use built-in defaults; button_text=Search; show_results_count=yes; search_in=title,description,tags. Current local search implementation is title-only; do not infer full-field parity from the attribute label.fy2press_collection_filter[fy2press_collection_filter type="dropdown"]Role: collection filter. Context: product loop or collection navigation. Attributes/defaults: type=dropdown (dropdown|checkbox|list); show_count=yes; built-in class and wrapper_class; title=Collection; show_title=yes; show_all_option=yes; all_text=All Collections; limit=0; orderby=name (name|count|slug); order=ASC; hide_empty=yes; hierarchical=yes; behavior=collection_archive (collection_archive|query).fy2press_tag_filter[fy2press_tag_filter type="tags"]Role: product-tag filter. Context: product loop reading tag_filter. Attributes/defaults: saved type, with checkbox, tags, buttons, dropdown, list and cloud render paths; show_count=yes; built-in class and wrapper_class; title=Filter by Tags; show_title=yes; show_all_option=yes; all_text=All Tags; limit=10; orderby=count; order=DESC; hide_empty=yes; multiple=yes; style=badges; max_display=20.fy2press_filter_sidebar[fy2press_filter_sidebar]…[/shopipress_filter_sidebar]Role: filter composition wrapper. Context: encloses other Fy2Press filter shortcodes. Attributes/defaults: class=shopipress-filter-sidebar; wrapper_class=filter-sidebar-wrapper; title=Filter Products; show_title=yes; style=sidebar (sidebar|horizontal|accordion); background=#f8f9fa; padding=20px; border_radius=8px; gap=20px. Output: grouped filters and a clear-all action when compatible filters are active.fy2press_price_filter[fy2press_price_filter min="0" max="250"]Role: price filter. Context: product loop reading price_min and price_max. Attributes/defaults: min=0; max=1000; default_min=0; default_max=250; step=10; currency=auto; title=Filter by Price. Values are bounded and normalized by the product loop before Storefront requests.fy2press_availability_filter[fy2press_availability_filter type="checkbox"]Role: availability filter. Context: product loop reading availability_filter. Attributes/defaults: type comes from the saved display setting; supported paths are checkbox, buttons and dropdown, with radio retained for compatibility; options=in_stock,out_of_stock; title=Availability; show_count=yes; class=availability-filter-container. Output: public query controls.
Keep the system boundary visible
Shopify remains the commerce source; Fy2Press moves catalog records and rendering contracts; WordPress owns publication.
Shopify · catalog source and checkout
Fy2Press · manual sync and rendering
WordPress · content, templates and SEO surface
Verify before moving on
- Confirm the result in WordPress, not only in the Fy2Press interface.
- Keep cart and checkout on Shopify.
- Record the installed version when reporting a defect.