Common Arguments
About the shortcodes
Shortcodes is the native WordPress feature that allows you to call PHP functions in various places, e.g. inside the Gutenberg editor.
Layouts and Post Selections have their own shortcodes. See the examples below.
[avf-layout name="Name of View" id="651d5d75bfdf2"]
[avf-post-selection name="Name of Card" id="9i4d5d75bflo3"]Using extra arguments, you can further configure the behavior of Layout or Post Selection instances. You can find the Layout shortcode arguments on this page and the Post Selection shortcode arguments here. However, both shortcodes share a common argument that allows you to restrict content visibility. See the information below.
How to embed the shortcode
In non-PHP environments
WordPress shortcodes can be added as plain text in almost any location. WordPress automatically parses them during rendering, calls the related PHP functions, and replaces the shortcode with the generated output. You can paste the shortcode, such as [avf-layout name="Name of View" id="651d5d75bfdf2"], in places like Gutenberg or the Classic Editor, sidebars, and other locations.
In PHP code
If you need to use a shortcode within PHP code, such as in your theme templates, there are two methods to achieve this:
1. Using the native do_shortcode function
do_shortcode functiondo_shortcode is a built-in WordPress function that renders shortcodes within PHP code. You can use it like this:
<?php
// .. some code
echo do_shortcode('[avf-layout name="Name of View" id="651d5d75bfdf2"]');2. Using Advanced Views class
Advanced Views offers a dedicated class for rendering Layouts and Post Selections. This class employs the same argument names and values as the standard shortcode but converts them into methods.
Consequently, when you're editing PHP files in your IDE, you can leverage autocomplete suggestions to access the list of available arguments without the need to consult the documentation.
In addition, unlike do_shortcode, you can pass variables with any type, including objects and arrays to the Layout and Post Selection Custom Data snippet features.
<?php
use Org\Wplake\Advanced_Views\Bridge\Advanced_Views;
echo Advanced_Views::view_shortcode('651d5d75bfdf2','View name')->render();
echo Advanced_Views::card_shortcode('9i4d5d75bflo3', 'Card name')->render();The methods require two arguments: a unique ID and a name. The name is used for clarification purposes only, so it doesn't need to be identical to the current Layout or Post Selection name.
If you need to set up extra arguments, you can call the related methods before the render call. For example, let's consider the example with the user-with-roles argument described below on this page:
<?php
use Org\Wplake\Advanced_Views\Bridge\Advanced_Views;
echo Advanced_Views::view_shortcode('651d5d75bfdf2', 'View name')
->set_user_with_roles(['administrator'])
->render();Common arguments
class
This argument allows you to add class to your Layout or Post Selection main wrapper dynamically.
In most cases, you should add all the classes directly to your Layout or Post Selection, but in some cases you will need to assign this class dynamically. For example, inside your Post Selection, you may want to add some specific class to your Layout, that specific to this Post Selection only.
a) Classic shortcode
[avf-layout name="Name of View" id="651d5d75bfdf2" class="YOUR_CLASS_HERE"][avf-post-selection name="Name of Card" id="651d5d747423a" class="YOUR_CLASS_HERE"]b) In PHP
<?php
// a) using do_shortcode
echo do_shortcode('[avf-layout name="Name of View" id="651d5d75bfdf2" class="YOUR_CLASS_HERE"]');
// b) using the special Advanced Views class
use Org\Wplake\Advanced_Views\Bridge\Advanced_Views;
echo Advanced_Views::view_shortcode('651d5d75bfdf2', 'Layout name')
->set_class('YOUR_CLASS_HERE')
->render();user-with-roles
user-without-roles
Both "user-with-roles" and "user-without-roles" arguments allow you restricting access to the specific Layout or Post Selection.
a) Classic shortcode
[avf-layout name="Name of View" id="651d5d75bfdf2" user-with-roles="ROLE1,ROLE2" user-without-roles="ROLE1,ROLE2"][avf-post-selection name="Name of Card" id="651d5d747423a" user-with-roles="ROLE1,ROLE2"
user-without-roles="ROLE1,ROLE2"]b) In PHP
<?php
// a) using do_shortcode
echo do_shortcode('[avf-layout name="Name of View" id="651d5d75bfdf2" user-with-roles="administrator"]');
// b) using the special Advanced Views class
use Org\Wplake\Advanced_Views\Bridge\Advanced_Views;
echo Advanced_Views::view_shortcode('651d5d75bfdf2', 'Layout name')
->set_user_with_roles(['administrator'])
->render();custom-arguments
When you use Layout or Post Selection Custom Data feature, you can pass any custom arguments to your snippet using this argument.
Custom arguments are available only inside your Custom Data snippet. They're not available directly in Layout or Post Selection template. If you need to pass to use them inside the template, you can transit them in the snippet.
a) Classic shortcode
[avf-layout name="Name of View" id="651d5d75bfdf2" custom-arguments="name=value,another-name=another-value"][avf-post-selection name="Name of Card" id="651d5d747423a" custom-arguments="name=value,another-name=another-value"]b) In PHP
<?php
// a) using do_shortcode
echo do_shortcode('[avf-layout name="Name of View" id="651d5d75bfdf2" custom-arguments="name=value,another-name=another-value"]');
// b) using the special Advanced Views class
use Org\Wplake\Advanced_Views\Bridge\Advanced_Views;
echo Advanced_Views::view_shortcode('651d5d75bfdf2', 'Layout name')
->set_custom_arguments([
'name' => 'value',
'another-name' => 'another-value',
])->render();Last updated