Guide du débutant pour le framework Titan Ajout d'une option de type triable

Aujourd'hui, je vais discuter de la triable option de type dans Titan Framework. Il fournit à l'utilisateur final un certain nombre d'options qui peuvent être réorganisées via une interface glisser-déposer et peuvent être activées ou désactivées. Vous pouvez intégrer cette option aux endroits où vous souhaitez que les utilisateurs réorganisent de manière dynamique les sections d'un thème..

L'option Type triable dans Titan Framework

De nos jours, certains thèmes WordPress premium permettent aux utilisateurs finaux de réorganiser / trier différents blocs dans un thème. Développer une interface triable par glisser-déposer peut être une tâche intimidante pour les nouveaux développeurs. Titan Framework offre un moyen simple et sans contrainte de fournir cette option. Avec son triable type option, vous pouvez créer une liste d’options triables qui peuvent être réorganisées comme vous le souhaitez. Il a une disposition verticale comme le montre l'image ci-dessous:

Cette option supporte certains paramètres:

  • prénom: Ce paramètre attribue le nom d'un triable option de type.
  • identifiant: Il attribue un nom unique qui obtient les valeurs des options enregistrées.
  • desc: Ajoute une brève description.
  • options: (Facultatif) Ce paramètre contient un tableau de étiquette de valeur paires apparaissant comme des options dans le champ triable.
  • visible_button: (Facultatif) Ceci est le paramètre basé sur la vérification et si vrai, alors les valeurs triables basculées sont masquées. Si faux, le bouton n'est pas affiché. Le réglage par défaut est vrai.
  • défaut(Facultatif) Il utilise un tableau de valeurs visibles par défaut. Si visible_button est réglé sur faux et vous fournissez une valeur par défaut ici, visible_button sera automatiquement réglé sur vrai

Tous les paramètres sont chaîne par type, sauf 'options ' lequel est tableau et 'visible_button ' lequel est booléen dans la nature.

Conteneurs disponibles pour l'option Type triable

Vous pouvez ajouter cette option à l'intérieur de: 

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

Ces conteneurs peuvent être facilement créés avec Titan Framework. Si vous ne savez pas comment, parcourez les articles précédents de cette série.. 

Ce type d'option est ajouté en suivant ces étapes.

  • Obtenir une instance via le getInstance () une fonction.
  • Ajouter une option via le createOption () une fonction.
  • Obtenir les valeurs des options enregistrées via le getOption () une fonction.

C'est l'une des grandes options offertes par Titan Framework, alors implémentons-le.

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

Exemple de déclaration

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

createOption (array ('id' => 'aa_sortable_opt', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'triable', // Type de l'option que nous créons 'nom' => 'Mon option de tri', // 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 (// Un tableau de paires valeur-étiquette. 'aa_products_blk' => 'Bloc de produits', 'aa_features_blk' => 'Bloc de fonctionnalités', 'aa_stats_blk' => 'Bloc de statistiques', 'aa_comments_blk' => 'Commentaires Bloc '))); 

J'ai ajouté un triable tapez option dans la ligne # 8 via le createOption () fonction dans un panneau d'administration personnalisé $ aa_panel. Ensuite, j'ai défini une liste de paramètres, c'est-à-dire. nom, id, type, options et desc. La valeur de l'ID est aa_sortable_opt, qui devrait toujours être unique.

Un paramètre unique dans cette options est à la ligne 15. Il prend un tableau de étiquette de valeur les paires qui apparaissent comme des options pouvant être triées. Dans ce code, j'ai défini quatre paires de ce type, chacune d'elles constituant une option unique pouvant être triée.. 

Par conséquent, les étiquettes aa_products_blkaa_features_blkaa_stats_blk et aa_commenst_blk afficher les options correspondantes, c'est-à-dire 'Bloc de produits ',' Bloc de fonctionnalités ',' Bloc de statistiques ' et 'Bloc de commentaires '. Considérez ces options comme des blocs de votre thème, que vous souhaitez que l’utilisateur final puisse réorganiser ou désactiver..

Dans la capture d'écran ci-dessus, il existe un triable option de type dans un panneau d'administration Options soignées. Regardez comment les options triables sont affichées. 

À côté de chaque nom d'option, il y a deux icônes. La première icône montre un œil qui contrôle 'visibilité des options'. Si vous cliquez dessus, cette option devient désactivée.

J'ai désactivé la visibilité des deux premières options de la capture d'écran ci-dessus..

La deuxième icône montre les lignes triables, qui aident à glisser et déposer ces options.

Exemple d'utilisation

Obtenons les valeurs des options sauvegardées. 

getOption ('aa_sortable_opt'); / ** * * Impression du contenu du tableau * * / var_dump ($ aa_getsortable_array); ?>

Pour obtenir des valeurs enregistrées, commencez par obtenir une instance via le getinstance () fonction dans la ligne # 3. Ensuite, enregistrez l'ID d'option aa_sortable_opt à l'intérieur de getOption () fonction en tant que paramètre. Les valeurs sont enregistrées dans une variable qui est un tableau., $ aa_getsortable_array.

La valeur de retour contient un tableau des valeurs dans l'ordre de la manière dont un utilisateur final a organisé et enregistré les étiquettes dans le panneau d'administration personnalisé..

J'ai vidé le tableau avec le var_dump () commande en ligne n ° 15. Voyons les résultats.

C’est ainsi que j’ai organisé les options dans le panneau d’administration (j’ai réactivé les deux premières options en cliquant sur le bouton œil icône). 

Voyons ce qui se passe si je change l'ordre dans le panneau d'administration et le sauvegarde.

Dans l'image ci-dessus, l'ordre du contenu du tableau est modifié en conséquence.

Maintenant, laissez-moi vous montrer une autre façon d’utiliser cette option en mode frontal..

getOption ('aa_sortable_opt'); / ** * * Obtention de la sortie au serveur * * / if ($ aa_getsortable_array) foreach ($ aa_getsortable_array en tant qu’option $) switch ($ option) case 'aa_products_blk': echo "Le code de bloc de produit est utilisé ici. 
"; break; case 'aa_features_blk': echo" Feature Le code de bloc est utilisé ici.
"; break; case 'aa_stats_blk': echo" Stats Le code de bloc est utilisé ici.
"; break; case 'aa_comments_blk': echo" Commentaires Le code de blocage est utilisé ici.
"; break; // fin du commutateur // fin de foreach // fin si

Alors, j’ai enregistré une instance unique de titan à la ligne 3, et à la ligne 6, j’ai utilisé le getOption () fonctionner avec aa_sortable_opt en tant que paramètre permettant de récupérer la valeur de l'option triable définie par l'utilisateur final. N'oubliez pas que nous définissons des paires valeur / étiquette au-dessus des valeurs utilisées dans le code, tandis que les étiquettes sont affichées dans les paramètres du tableau de bord. 

Nous allons donc obtenir un tableau de valeurs sélectionnées par l'utilisateur dans l'ordre dans lequel il a trié les options de tri dans le panneau d'administration. Nous devons maintenant imprimer ces blocs dans le même ordre que celui sélectionné par l'utilisateur final. j'ai utilisé boîtier de commutation vérifie pour imprimer les noms de bloc. 

Ligne 20:

J'ai vérifié ici s'il y avait une valeur dans le tableau $ aa_getsortable_array.

Ligne 22:

Ici j'ai utilisé un pour chaque boucle pour parcourir tous les éléments de la $ aa_getsortable_array tableau et nommé un seul élément de ce tableau comme option $

Lignes 34 à 42:

J'ai utilisé switch-case pour imprimer les options dans le même ordre que dans le tableau (ordre sélectionné par l'utilisateur). Si vous regardez les lignes 26 à 28, c'est un cas qui vérifie que si la valeur à l'intérieur option $ est aa_products_blk puis faites écho au bloc de produits sélectionné et sortez-en. De même il y a trois autres.

Affichage du résultat au début

Commençons par le réglage par défaut. Voici une capture d'écran de la sortie qui est apparue au front-end.

Et si je désactive quelques options? Et réorganiser tous? Comme ça:

Donc, le bloc de produit ne doit pas s'afficher car je l'ai désactivé, et les autres blocs doivent s'arranger.

C'est exactement ce qui s'est passé, comme le montre la capture d'écran ci-dessus.

Création d'une option de type triable dans un onglet Administrateur

Exemple de déclaration

Maintenant, je vais créer cette option dans un onglet administrateur.

createOption (array ('id' => 'aa_sortable_opt_in_tab', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'sortable', // Type d'option que nous créons 'nom' => 'Mon option de tri', // 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 'visible_button' = > 'false', 'options' => array (// Un tableau de paires valeur-étiquette. 'aa_products_blk' => 'Bloc de produits', 'aa_features_blk' => 'Bloc de fonctionnalités', 'aa_stats_blk' => 'Bloc de statistiques ',' aa_comments_blk '=>' Bloc de commentaires '))); 

Maintenant j'ai ajouté un triable option de type dans un onglet administrateur $ aa_tab1 avec ID aa_sortable_opt_in_tab. Cette fois j'ai défini le paramètre visible_count à la ligne 15 et sa valeur est définie sur faux. Cela signifie l'indicateur de visibilité œil l'icône ne doit pas apparaître.

Dans cette image, vous pouvez trouver un triable type option dans Onglet 1 de panneau Options soignées 2. Notez que l'icône de visibilité n'apparaît pas avec les noms des options..

Exemple d'utilisation

Utilisez ce code pour obtenir des valeurs enregistrées.

getOption ('aa_sortable_opt_in_tab'); / ** * * Récupération de la sortie au début * * * / if ($ aa_tab_getsortable_array) foreach ($ aa_tab_getsortable_array as $ option) switch ($ option) case 'aa_products_blk': echo "Le code de bloc de produit est utilisé ici. 
"; break; case 'aa_features_blk': echo" Feature Le code de bloc est utilisé ici.
"; break; case 'aa_stats_blk': echo" Stats Le code de bloc est utilisé ici.
"; break; case 'aa_comments_blk': echo" Commentaires Le code de blocage est utilisé ici.
"; break; // fin du commutateur // fin de foreach // fin si

Ce code est assez similaire à ce que j'ai écrit dans le cas d'un panneau d'administration. Alors laissez-moi résumer toutes ses étapes:

  • Obtenir une instance via le getInstance () fonction dans la ligne # 3.
  • Obtenir les valeurs enregistrées via le getOption () fonctionne et enregistre l'ID d'option comme paramètre dans la ligne 6.
  • Imprimez les blocs correspondants sur le front-end via boîtier de commutation déclarations aux lignes 19 à 37.

Affichage du résultat au début

Voici une capture d'écran du front-end.


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

Exemple de déclaration

Ensuite, je créerai cette option dans une metabox.

createOption (array ('id' => 'aa_sortable_opt_in_metabox', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'sortable', // Type d'option que nous créons 'nom' => 'Mon option triable', // Nom de l'option à afficher 'desc' => 'Ceci est notre option', // Description de l'option à afficher 'options' => array (// Un tableau de paires valeur-étiquette. 'aa_products_blk' => 'Bloc de produits', 'aa_features_blk' => 'Bloc de fonctionnalités', 'aa_stats_blk' => 'Bloc de statistiques', 'aa_comments_blk' => 'Bloc de commentaires'))); 

Ici j'ai créé une option dans une metabox $ aa_metbox. Son identifiant unique est aa_sortable_opt_in_metabox. Le reste des paramètres sont les mêmes.

Dans l'image ci-dessus, il existe un triable option de type dans une metabox nommée Mon option triable. Il apparaît sur toutes les pages et les écrans de post-édition. 

Exemple d'utilisation

Maintenant, je vais avoir les valeurs sauvegardées pour une metabox.

getOption ('aa_sortable_opt_in_metabox', get_the_ID ()); / ** * * Obtention de la sortie au serveur * * / if ($ aa_metabox_getsortable_array) foreach ($ aa_metabox_getsortable_array en tant qu'option $) commutateur ($ option) case 'aa_products_blk': echo "Le code de bloc de produit est utilisé ici. 
"; break; case 'aa_features_blk': echo" Feature Le code de bloc est utilisé ici.
"; break; case 'aa_stats_blk': echo" Stats Le code de bloc est utilisé ici.
"; break; case 'aa_comments_blk': echo" Commentaires Le code de blocage est utilisé ici.
"; break; // fin du commutateur // fin de foreach // fin si

Ce code est à peu près le même qu'avant. La différence peut être repérée à la ligne 6 où j'ai utilisé le get_the_ID () fonctionne comme un paramètre supplémentaire. Il est utilisé pour obtenir une page ou un identifiant de poste spécifique.

Affichage du résultat au début

Désactivons quelques-uns des blocs et observons quels changements se produisent au niveau du serveur frontal.. 

Le frontal imprimera ce qui suit:

Création d'une option de type triable dans une section de personnalisation de thème

Exemple de déclaration

En fin de compte, je vais créer cette option dans une section de personnalisation de thème..

createOption (array ('id' => 'aa_sortable_opt_in_sec', // L'ID qui sera utilisé pour obtenir la valeur de cette option 'type' => 'triable', // Type d'option que nous créons 'nom' => 'Mon option triable', // Nom de l'option à afficher 'desc' => 'Ceci est notre option', // Description de l'option à afficher 'options' => array (// Un tableau de paires valeur-étiquette. 'aa_products_blk' => 'Bloc de produits', 'aa_features_blk' => 'Bloc de fonctionnalités', 'aa_stats_blk' => 'Bloc de statistiques', 'aa_comments_blk' => 'Bloc de commentaires')));

J'ai créé un triable type option avec ID aa_sortable_opt_in_sec dans une section de personnalisation de thème $ aa_section1.

La capture d'écran affiche cette option dans une section de personnalisation nommée Ma section.

Exemple d'utilisation

Utilisez le code suivant.

getOption ('aa_sortable_opt_in_sec'); / ** * * Obtention de la sortie au serveur * * / if ($ aa_sec_getsortable_array) foreach ($ aa_sec_getsortable_array en tant qu'option $) commutateur ($ option) case 'aa_products_blk': echo "Le code de bloc de produit est utilisé ici. 
"; break; case 'aa_features_blk': echo" Feature Le code de bloc est utilisé ici.
"; break; case 'aa_stats_blk': echo" Stats Le code de bloc est utilisé ici.
"; break; case 'aa_comments_blk': echo" Commentaires Le code de blocage est utilisé ici.
"; break; // fin du commutateur // fin de foreach // fin si

Ce code est assez similaire à ce que j'ai utilisé précédemment. Seuls les noms d'identifiant et de variable sont différents. 

Affichage du résultat au début

Voici une capture d'écran affichant les modifications en mode de prévisualisation en direct.

Conclusion

C'est tout sur le triable option de type dans Titan Framework. Les possibilités ici sont infinies. Vous pouvez exiger un fichier contenant le code de ce bloc particulier au lieu de renvoyer le nom de ce bloc. Laissez couler votre créativité.

J'ai couvert presque tous les types d'options majeurs maintenant, donc nous nous retrouvons avec quelques-uns des trucs minuscules que je vais couvrir dans mes prochains articles. Si vous avez des questions, n'hésitez pas à commenter ci-dessous ou à nous contacter sur Twitter.