Je cherche à ajouter un attribut à un shortcode utilisé de manière dynamique. Par exemple, disons que nous commençons par:
[shortcode-name]
J'aimerais ajouter la portion "attribut = xxx" au shortcode pour que cela ressemble effectivement à ceci:
[shortcode-name attribute=xxx]
Pour seulement le premier shortcode rencontré dans un post. Est-ce possible?
Merci!
Non testé (et ne peut pas tester pour le moment) mais vous devriez pouvoir ajouter des attributs avec un filtre ... quelque chose comme:
function test_sc($atts,$content) {
// echo 'test_sc';
$atts = shortcode_atts(
array(
'foo' => 'no foo',
'bar' => 'default bar',
),
$atts,
'testsc'
);
// var_dump($atts);
}
add_shortcode('testsc','test_sc');
function test_shortcode_att_add($atts) {
# this filter should only run once (first use on page)
remove_filter('shortcode_atts_testsc','test_shortcode_att_add');
$atts['xxx'] = 'yyy';
return $atts;
}
add_filter('shortcode_atts_testsc','test_shortcode_att_add');
Bien sûr, je ne sais pas exactement ce que vous essayez d’ajouter, ni le type de code de prise en charge qui en dépend.