Guide du débutant pour Titan Framework Ajout d'une option de type Multicheck

Les options de case à cocher, radio et type de sélection permettent aux utilisateurs de faire un choix unique parmi un ensemble de choix prédéfinis. Qu'en est-il de la nécessité de donner à un utilisateur final la possibilité de faire plus d'un choix?? 

C'est exactement ce que le multicheck option de type fait dans Titan Framework. Aujourd'hui, j'ai l'intention de vous montrer comment ajouter une option de type multicheck via Titan Framework dans un panneau d'administration personnalisé, une boîte méta ou à l'intérieur du personnalisateur de thème..

L'option de type Multicheck dans Titan Framework

UNE multicheck L'option type de Titan Framework vous permet de créer plusieurs cases à cocher qui peuvent toutes être activées ou désactivées simultanément. Voici à quoi ça ressemble:

Les paramètres de réglage pris en charge par cette option sont les suivants:

  • prénom: Ce paramètre attribue le nom d'affichage d'un multicheck option de type.
  • identifiant: C'est un nom unique qui récupère les valeurs des options sauvegardées.
  • desc: Ajoute une brève description avec le nom de l’option.
  • défaut(Facultatif) Ce paramètre contient un tableau de valeurs activées par défaut..
  • options: (Facultatif) Ceci est un tableau associatif contenant le étiquette de valeur paire d'options qui apparaissent sous forme de cases à cocher.

Les deux derniers paramètres, défaut et options, sont tableau, tandis que les autres sont chaîne par type.

Conteneurs disponibles pour l'option de type Multicheck

Les conteneurs dans lesquels vous pouvez ajouter cette option sont: 

  • panneau d'administration
  • Onglets Admin
  • Metabox
  • Section de personnalisation de thème

le multicheck L'option type est ajoutée en suivant un format général:

  • Obtenir une instance via le getInstance () une fonction.
  • Créer une option via le createOption () une fonction.
  • Obtenir les valeurs enregistrées via le getOption () une fonction. 

Vous voulez savoir comment ces conteneurs sont créés avec Titan Framework? Lire les articles précédents de cette série. 

Création d'une option de type Multicheck dans un panneau d'administration

Exemple de déclaration

Créons d'abord cette option dans un panneau d'administration.

createOption (array ('id' => 'aa_multicheck_opt', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'multicheck', // Type d'option que nous créons 'nom' => 'Mon option Multicheck', // Nom de l'option qui sera affichée dans le panneau d'administration 'desc' => 'Ceci est notre option', // Description de l'option qui sera affichée dans le panneau d'administration 'options' = > array (// Tableau associatif de paires valeur-étiquette contenant les options 'aa_hdr_logo' => 'Afficher le logo de l'en-tête', 'aa_hdr_bg_img' => 'Afficher l'image de fond de l'en-tête', 'aa_hdr_clr_overlay' => 'Autoriser la superposition de la couleur de l'en-tête'), 'default' => array ('aa_hdr_logo', 'aa_hdr_bg_img')));

J'ai utilisé le createOption () fonction dans la ligne # 8 pour ajouter un multicheck option de type dans un panneau d'administration personnalisé $ aa_panel. Il y a une liste de paramètres que j'ai mentionnés, c'est-à-dire. nom, id, type, options, desc et défaut. L'identifiant de mon option est aa_multicheck_opt; assurez-vous que chaque ID que vous ajoutez est unique. 

Le 'options ' Le paramètre de la ligne 14 occupe un tableau associatif. Il contient étiquette de valeur paires. Chaque paire indique une option distincte qui apparaît comme une case à cocher. Donc, j'ai défini trois paires valeur-étiquette, ce qui signifie trois options.

L'étiquette de chaque option est unique. Par conséquent, les étiquettes aa_hdr_logoaa_hdr_bg_img et aa_hdr_clr_overlay créer des options nommées 'Afficher le logo d'en-tête','Afficher l'image de fond de l'en-tête' et 'Autoriser la superposition de couleur d'en-tête' respectivement.

Dans la capture d'écran ci-dessus, il y a un panneau d'administration Options soignées qui contient un multicheck option nommée Mon option Multicheck. Notez que les deux premières options sont activées en raison des paramètres par défaut (que j'ai définis à la ligne 16).

Exemple d'utilisation

Récupérons les valeurs des options sauvegardées.

getOption ('aa_multicheck_opt'); / ** * * Impression des valeurs enregistrées pour un panneau d'administration * * / var_dump ($ aa_multicheck_opt_val); 

À la ligne 3, j’ai ajouté une instance unique via le getInstance () une fonction. Il est recommandé d'utiliser votre nom de thème en tant que paramètre ici. Puis à la ligne 6, j'ai utilisé le getOption () fonction qui récupère les valeurs enregistrées en enregistrant l'ID d'option aa_multicheck_opt en paramètre. Après cela, j'ai sauvegardé son résultat dans une variable $ aa_multicheck_opt_val. Jusqu'à ce point, les paramètres de saisie de l'utilisateur sont enregistrés dans cette variable.

Nous allons maintenant imprimer les résultats sauvegardés au début. Comme cette option utilise un tableau associatif, je vais utiliser la méthode la plus élémentaire pour imprimer le contenu du tableau, c’est-à-dire le var_dump () commande (ligne 15).

Si vous prévisualisez le front-end, cela ressemble à ceci:

Les paramètres par défaut ont été imprimés correctement. Vous avez une idée de ce que vous pouvez faire avec cette option.

Ajoutons quelques lignes de code imprimant une sortie si les paramètres sont modifiés dynamiquement. J'ai remplacé la ligne 15 du code ci-dessus par ces lignes. 

"; else echo" Afficher le logo d'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_val)) echo" Afficher l'image de fond de l'en-tête a été activé.
"; else echo" Afficher l'image de fond de l'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_val)) echo" Autoriser le recouvrement des couleurs d'en-tête a été activé.
"; else echo" Autoriser la superposition des couleurs d'en-tête n'était pas activé.
";?>

Ici j'utilise le in_array () fonctionner à l'intérieur sinon vérifier les déclarations. Trois contrôles différents sont effectués ici pour la sortie.

Lignes 2 à 6:

  • Si l'étiquette aa_hdr_logo existe à l'intérieur du tableau $ aa_multicheck_opt_val, impression 'Afficher le logo d'en-tête activé.'
  • Sinon, imprimez 'Afficher le logo d'en-tête n'est pas activé.'

Lignes 7 à 11:

  • Si l'étiquette aa_hdr_bg_img existe à l'intérieur du tableau $ aa_multicheck_opt_val, impression 'Autoriser la superposition des couleurs d'en-tête a été activé.'
  • Sinon, imprimez 'Autoriser la superposition des couleurs d'en-tête n'est pas activé.'

Lignes 13 à 17:

  • Si l'étiquette aa_hdr_clr_overlay existe à l'intérieur du tableau $ aa_multicheck_opt_val, impression 'Afficher en-tête l'image de fond a été activé.'
  • Sinon, imprimez 'Afficher l'image de fond de l'en-tête n'est pas activé.'

Affichage du résultat au début

Commençons par les paramètres par défaut, c’est-à-dire que les deux premières cases à cocher sont activées.

Le front-end doit imprimer les lignes suivantes comme ceci:

Création d'une option de type Multicheck dans un onglet Admin

Exemple de déclaration

Ensuite, je vais ajouter cette option dans un onglet administrateur.

createOption (array ('id' => 'aa_multicheck_opt_in_tab', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'multicheck', // Type d'option que nous créons 'nom' => 'Mon option Multicheck', // Nom de l'option qui sera affichée dans le panneau d'administration 'desc' => 'Ceci est notre option', // Description de l'option qui sera affichée dans le panneau d'administration 'options' = > array (// Tableau associatif de paires valeur-étiquette contenant les options 'aa_hdr_logo' => 'Afficher le logo de l'en-tête', 'aa_hdr_bg_img' => 'Afficher l'image de fond de l'en-tête', 'aa_hdr_clr_overlay' => 'Autoriser la superposition de la couleur de l'en-tête'), 'default' => array ('aa_hdr_logo', 'aa_hdr_bg_img')));

Ici j'ai ajouté le même multicheck option de type dans un onglet administrateur $ aa_tab1. L'identifiant unique de l'option est aa_multicheck_opt_in_tab. Le reste des réglages de paramètres sont les mêmes.

UNE multicheck option de type existe à l'intérieur Onglet 1 du panneau d'administration Options soignées 2.

Exemple d'utilisation

Maintenant, je vais obtenir les valeurs sauvegardées à partir d'un onglet administrateur.

getOption ('aa_multicheck_opt_in_tab'); / ** * * Impression des valeurs enregistrées pour un onglet Admin * * / if (in_array ('aa_hdr_logo', $ aa_multicheck_opt_in_tab_val))) echo "Le logo d'en-tête a été activé.
"; else echo" Afficher le logo d'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_in_tab_val)) echo" Afficher l'image de fond de l'en-tête a été activé.
"; else echo" Afficher l'image de fond de l'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_in_tab_val)) echo" Autoriser le superposition de couleurs d'en-tête a été activé.
"; else echo" Autoriser la superposition des couleurs d'en-tête n'était pas activé.
";

Ce code est assez similaire à ce que j'ai écrit dans le cas d'un panneau d'administration. Vous pouvez l'essayer vous-même. Permettez-moi de résumer les étapes:

  • Tout d’abord, obtenez une instance de la ligne 3 à l’aide de la commande getInstance () une fonction.
  • Puis utilisez le getOption () fonction pour obtenir les valeurs sauvegardées dans la ligne # 6.
  • Enregistrez l'ID de l'option et enregistrez les résultats dans la variable $ aa_multicheck_opt_in_tab_val.
  • Enfin, utilisez cette variable à l'intérieur du in_array () fonction (lignes 15 à 30) pour imprimer les résultats souhaités.

Affichage du résultat au début

Activons toutes les cases à cocher en tant que paramètres de démonstration. Le front-end ressemble à ceci:

Création d'une option de type Multicheck à l'intérieur d'un Metabox

Exemple de déclaration

Maintenant je vais créer un multicheck option de type dans un metabox.

createOption (array ('id' => 'aa_multicheck_opt_in_metabox', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'multicheck', // Type d'option que nous créons 'nom' => 'Mon option Multicheck', // Nom de l'option qui sera affichée 'desc' => 'Ceci est notre option', // Description de l'option qui sera affichée 'options' => array (// Tableau associatif de paires valeur-étiquette contenant les options 'aa_hdr_logo' => 'Afficher le logo de l’en-tête', 'aa_hdr_bg_img' => 'Afficher l’image d’arrière-plan de l’en-tête', 'aa_hdr_clr_overlay' => 'Autoriser la superposition des couleurs de l’en-tête'), 'default' => array aa_hdr_logo ',' aa_hdr_bg_img ')));

J'ai ajouté cette option avec un identifiant unique aa_multicheck_opt_in_metabox dans un metabox $ aa_metbox.

Dans l'image ci-dessus, il y a un écran de modification de page et à la fin, vous pouvez repérer un multicheck option nommée Mon option Multicheckdans un metabox.

Exemple d'utilisation

Utilisez le code suivant pour récupérer les valeurs enregistrées.

getOption ('aa_multicheck_opt_in_metabox', get_the_ID ()); / ** * * Impression des valeurs enregistrées pour un Metabox * * / if (in_array ('aa_hdr_logo', $ aa_multicheck_opt_in_metabox_val)) echo "Le logo d'en-tête a été activé.
"; else echo" Afficher le logo d'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_in_metabox_val)) echo" Afficher l'image de fond de l'en-tête a été activé.
"; else echo" Afficher l'image de fond de l'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_in_metabox_val)) echo" Autoriser le superposition de couleurs d'en-tête a été activé.
"; else echo" Autoriser la superposition des couleurs d'en-tête n'était pas activé.
";?>

Le code utilise à nouveau les fonctions pour obtenir une instance et des valeurs enregistrées. Mais dans la ligne 6, il y a un paramètre supplémentaire, le get_the_ID () fonction, qui obtient les valeurs de n'importe quel ID de page ou de post. Au final, j'ai utilisé le même sinon vérifier les déclarations.

Affichage du résultat au début

Cette fois, activons la première et la dernière option. Voici la capture d'écran du front-end.

Création d'une option de type Multicheck à l'intérieur d'une section de personnalisation de thème

Exemple de déclaration

Enfin, je vais ajouter cette option dans une section de personnalisation de thème..

createOption (array ('id' => 'aa_multicheck_opt_in_sec', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'multicheck', // Type d'option que nous créons 'nom' => 'Mon option Multicheck', // Nom de l'option qui sera affichée 'desc' => 'Ceci est notre option', // Description de l'option qui sera affichée 'options' => array (// Tableau associatif de paires valeur-étiquette contenant les options 'aa_hdr_logo' => 'Afficher le logo de l’en-tête', 'aa_hdr_bg_img' => 'Afficher l’image d’arrière-plan de l’en-tête', 'aa_hdr_clr_overlay' => 'Autoriser la superposition des couleurs de l’en-tête'), 'default' => array (' aa_hdr_logo ',' aa_hdr_bg_img ')));

J'ai ajouté un multicheck option de type dans une section de personnalisation de thème $ aa_section1. Son identifiant est aa_multicheck_opt_in_sec.

Dans l'image, il y a une section de personnalisation nommée Ma section, dans lequel il y a une liste d'options de case à cocher.

Exemple d'utilisation

Utilisez ce code pour obtenir les valeurs d'une section de personnalisation.

getOption ('aa_multicheck_opt_in_sec'); / ** * * Impression des valeurs enregistrées pour une section de personnalisation * * / if (in_array ('aa_hdr_logo', $ aa_multicheck_opt_in_sec_val))) echo "Afficher le logo d'en-tête activé.
"; else echo" Afficher le logo d'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_bg_img', $ aa_multicheck_opt_in_sec_val)) echo" Afficher l'image de fond de l'en-tête a été activé.
"; else echo" Afficher l'image de fond de l'en-tête n'est pas activé.
"; if (in_array ('aa_hdr_clr_overlay', $ aa_multicheck_opt_in_sec_val)) echo" Autoriser le superposition de couleurs d'en-tête a été activé.
"; else echo" Autoriser la superposition des couleurs d'en-tête n'était pas activé.
";?>

Ce code est à nouveau assez similaire à ce que j’avais utilisé pour d’autres types de conteneurs. Seuls les noms d'identifiant et de variable sont différents.

Affichage du résultat au début

J'ai activé uniquement la première option. Les modifications peuvent être observées en mode aperçu en direct:

Conclusion

Donc c'est à peu près tout. Vous pouvez intégrer le multicheck Saisissez une option dans votre projet de développement Web pour permettre aux utilisateurs d'activer plusieurs fonctionnalités de thème en quelques clics.. 

Rappelez-vous que je vous ai donné un exemple dans le tutoriel de l'option de type de case à cocher, selon lequel vous pouvez autoriser un utilisateur final à activer / désactiver n'importe quelle partie de single.php. Ce même exemple peut être appliqué ici, avec un peu de contexte. Donc, si vous fournissez des options utilisateur liées à un domaine particulier, tel que l'en-tête, vous devez utiliser la fonction multicouche pour éviter les options supplémentaires.

Il existe d'autres types d'options que l'on peut appeler les dérivées de ce type. Je vais en discuter dans mes prochains articles. Jusque-là, essayez ce tutoriel et faites-moi part de votre point de vue à ce sujet dans les commentaires ou sur Twitter.