Flex
compter().
count() : int
Compte le nombre de répertoires enregistrés dans Flex.
Retour:
int
Nombre de Répertoires.
Twig
{% set flex = grav.get('flex') %} Flex has {{ flex.count() }} enabled directories.
PHP
use Grav\Common\Grav; use Grav\Framework\Flex\Interfaces\FlexInterface; /** @var FlexInterface $flex */ $flex = Grav::instance()->get('flex'); /** @var int $count */ $count = $flex->count();
getDirectories().
getDirectories( [names] ): array
Récupère la liste des répertoires.
Paramètres:
- names Facultatif : Liste des noms de répertoires (
array
).
Retour:
array
liste des Répertoires.
ASTUCE : Si aucune liste de noms n'a été fournie, la méthode renvoie tous les répertoires enregistrés dans Flex.
Twig
{% set flex = grav.get('flex') %} {# Get all directories #} {% set directories = flex.directories() %} {# Get listed directories #} {% set listed_directories = flex.directories(['contacts', 'phonebook']) %} {# Do something with the directories #}
PHP
use Grav\Common\Grav; use Grav\Framework\Flex\Interfaces\FlexInterface; use Grav\Framework\Flex\Interfaces\FlexDirectoryInterface; /** @var FlexInterface $flex */ $flex = Grav::instance()->get('flex'); /** @var FlexDirectoryInterface[] $directories */ $directories = $flex->getDirectories(); // = ['contacts' => FlexDirectory, ...] /** @var FlexDirectoryInterface[] $directories */ $listedDirectories = $flex->getDirectories(['contacts', 'phonebook']); // = ['contacts' => FlexDirectory] /** @var array$directories */ $listedDirectoriesWithMissing = $flex->getDirectories(['contacts', 'phonebook'], true); // = ['contacts' => FlexDirectory, 'phonebook' => null]
ASTUCE : Vous voudrez peut-être vous assurer de ne renvoyer que les répertoires souhaités.
hasDirectory().
hasDirectory( name ): bool
: Vérifie si le répertoire existe.
Paramètres:
- name Nom du répertoire (
string
)
Retour:
bool
Vrai si trouvé, faux sinon
Twig
{% set flex = grav.get('flex') %} Flex has {{ not flex.hasDirectory('contacts') ? 'not' }} contacts directory.
PHP
use Grav\Common\Grav; use Grav\Framework\Flex\Interfaces\FlexInterface; /** @var FlexInterface $flex */ $flex = Grav::instance()->get('flex'); /** @var bool $exists */ $exists = $flex->hasDirectory('contacts');
getDirectory().
getDirectory( name ): Directory | null
obtient un répertoire, renvoie null s'il n'a pas été trouvé.
Paramètres:
- name Nom du répertoire (
string
)
Retour:
- Répertoires (
objet
) null
Répertoire introuvable
Twig
{% set flex = grav.get('flex') %} {# Get contacts directory (null if not found) #} {% set directory = flex.directory('contacts') %} {# Do something with the contacts directory #}
PHP
use Grav\Common\Grav; use Grav\Framework\Flex\Interfaces\FlexInterface; use Grav\Framework\Flex\Interfaces\FlexDirectoryInterface; /** @var FlexInterface $flex */ $flex = Grav::instance()->get('flex'); /** @var FlexDirectoryInterface|null $directory */ $directory = $flex->getDirectory('contacts'); if ($directory) { // Directory exists, do something with it... }
Vérifiez ce que vous pouvez faire avec [Flex Directory](avance-flex-repertoire.md).
getObjet().
getObject( id, répertoire ): Objet | null
Obtient un objet, renvoie null s'il n'a pas été trouvé.
Paramètres:
- id ID de l'objet (
string
) - directory Nom du répertoire (
string
)
Retour:
- Object (
Object
) null
Objet introuvable
Twig
{% set flex = grav.get('flex') %} {% set contact = flex.object('ki2ts4cbivggmtlj', 'contacts') %} {# Do something #} {% if contact %} {# Got Bruce Day #} {{ contact.first_name|e }} {{ contact.last_name|e }} has a website: {{ contact.website|e }} {% else %} Oops, contact has been removed! {% endif %}
PHP
use Grav\Common\Grav; use Grav\Framework\Flex\Interfaces\FlexInterface; use Grav\Framework\Flex\Interfaces\FlexObjectInterface; /** @var FlexInterface $flex */ $flex = Grav::instance()->get('flex'); /** @var FlexObjectInterface|null $object */ $object = $flex->getObject('ki2ts4cbivggmtlj', 'contacts'); if ($object) { // Object exists, do something with it... }
Vérifiez ce que vous pouvez faire avecFlex Object.
getCollection().
getCollection( répertoire ): Collection | null
Obtient la collection, renvoie null si elle n'a pas été trouvée.
Paramètres:
directory
Nom du répertoire (string
)
Retour:
- Collection (
object
) null
Répertoire introuvable
Twig
{% set flex = grav.get('flex') %} {% set contacts = flex.collection('contacts') %} {# Do something #} <h2>Ten random contacts:</h2> <ul> {% for contact in contacts.filterBy({published: true}).shuffle().limit(0, 10) %} <li>{{ contact.first_name|e }} {{ contact.last_name|e }}</li> {% endfor %} </ul>
PHP
use Grav\Common\Grav; use Grav\Framework\Flex\Interfaces\FlexCollectionInterface; use Grav\Framework\Flex\Interfaces\FlexInterface; /** @var FlexInterface $flex */ $flex = Grav::instance()->get('flex'); /** @var FlexCollectionInterface|null $collection */ $collection = $flex->getCollection('contacts'); if ($collection) { // Collection exists, do something with it... }
Vérifiez ce que vous pouvez faire avec Collection Flexible.