php ShortCodes和Visual composer
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php ShortCodes和Visual composer相关的知识,希望对你有一定的参考价值。
<?php
if(function_exists('vc_map')){
add_action('vc_before_init', function(){
// Rajoute l'élément dans Visual composer
vc_map( array(
'name' => 'Liste des concerts',
'base' => "originis_events_list", // String convertit en --> [originis_events_list]
'category' => 'Originis - Sunvizors',
'icon' => $plugin_dir_url.'assets/img/events.svg',
'allowed_container_element' => 'vc_row',
'params' => array(
array(
'type' => 'textfield',
'heading' => 'Titre',
'param_name' => 'title',
'value' => '',
'admin_label' => true,
'description' => 'Titre affiché au dessus du flux (laisser vide si aucun titre).',
'group' => 'Options Visuelles',
),
array(
'type' => 'dropdown',
'heading' => 'Balise HTML utilisée pour le titre',
'param_name' => 'title_tag',
'value' => array(
'h2' => 'h2',
'h3' => 'h3',
'h4' => 'h4',
'h5' => 'h5',
'h6' => 'h6',
),
'admin_label' => true,
'description' => 'Choisissez quelle balise HTML va encadrer le titre lors de l\'affichage de la liste des concerts.',
'group' => 'Options Visuelles',
),
array(
'type' => 'textfield',
'heading' => 'Nombre de dates à montrer',
'param_name' => 'number',
'value' => '-1',
'admin_label' => true,
'description' => '"-1" permet de lister toutes les dates',
'group' => 'Options du flux',
),
array(
'type' => 'dropdown',
'heading' => "Ordre d'apparition des dates",
'param_name' => 'order',
'value' => array(
'Du plus récent au plus ancien' => "ASC",
'Du plus ancien au plus récent' => "DESC",
),
'admin_label' => true,
'save_always' => true,
'description' => 'Définissez l\'ordre dans lequel apparaissent les dates.',
'group' => esc_html__('Options du flux','shuffle') ,
),
array(
'type' => 'dropdown',
'heading' => "Afficher le bouton \"En voir plus\"",
'param_name' => 'show_load_more',
'value' => array(
"Non" => 'false',
"Oui" => 'true'
),
'group' => esc_html__('Options du flux', 'shuffle')
),
array(
'type' => 'textfield',
'heading' => "URL du bouton \"En voir plus\"",
'param_name' => 'show_more_url',
'admin_label' => true,
'description' => esc_html('Renseignez-ici le lien sur lequel vous souhaitez rediriger les visiteurs lorsqu\'ils cliquent sur le bouton', 'edge'),
'group' => "Options du flux",
),
array(
'type' => 'colorpicker',
'heading' => "Couleur du texte",
'param_name' => 'text_color',
'admin_label' => true,
'group' => "Options Visuelles",
),
array(
'type' => 'colorpicker',
'heading' => "Couleur de la bordure",
'param_name' => 'border_color',
'admin_label' => true,
'group' => "Options Visuelles",
),
array(
'type' => 'textfield',
'heading' => "Classe CSS du container",
'param_name' => 'container_class',
'admin_label' => true,
'description' => esc_html('Attribuer une classe CSS spécifique à l\'élément <div> qui englobe le flux, afin d\'en faciliter la personalisation visuelle.', 'edge'),
'group' => "Options Visuelles",
),
)
));
vc_map( array(
'name' => 'Compte à rebours prochain concert',
'base' => "originis_countdown", // String convertit en --> [originis_events_list]
'category' => 'Originis - Sunvizors',
'icon' => $plugin_dir_url.'assets/img/countdown.svg',
'allowed_container_element' => 'vc_row',
'params' => array(
array(
'type' => 'colorpicker',
'heading' => 'Couleur des chiffres',
'value' => '#ffffff',
'param_name' => 'digit_color',
'admin_label' => true,
),
array(
'type' => 'colorpicker',
'heading' => 'Couleur du texte',
'param_name' => 'label_color',
'admin_label' => true,
'value' => '#ffffff',
),
array(
'type' => 'checkbox',
'heading' => 'Ombre portée',
'description' => 'Rajoute une légère ombre portée sur le texte qui facilite la lecture du texte en cas de faible contraste entre la couleur du texte et celle de fond',
'param_name' => 'text_shadow',
),
)
));
});
}
?>
<?php
/**
* Déclaration du shortcode
* @param string $slug Le slug du shortcode déclaré qui sera utilisé pour écrire le shortcode (ex : [monshortcode][/monshortcode]);
* @param function $function La fonction à executer pour interpréter le shortcode. $atts sont les paramètres que l'on peux passer au short code comme les attributs d'une balise HTML. $content est le contenu qui peu exister entre deux balises du shortcode
* @return html Retourne ce que le shortcode doit afficher
*/
add_shortcode( "{slug_du_shortcode}", function($atts, $content = ""){
// Déclaration des valeurs par défauts des attributs du shortcode
$atts = shortcode_atts
(
array(
"{nom_du_param}" => "{default_value}"
),
$atts // -> les attributs passés en paramètre sur le shortcode
);
// Préparation du contenu du shortcode
/***********Magical stuff************/
// Output
require_once(__DIR__."{some_template_part");
return $output;
// Output
});
?>
以上是关于php ShortCodes和Visual composer的主要内容,如果未能解决你的问题,请参考以下文章
php 使用ShortCodes在WooCommerce产品网格上显示库存栏
php 使用ShortCodes显示WooCommerce产品网格上的倒数计时器
使用 Bootstrap 4.4、Wordpress 和 Bootstrap Shortcodes Ultimate 插件的 Flexbox 列等高