J'ajoute un certain nombre d'éléments aux profils utilisateur à l'aide de cette méthode dans mon functions.php
function modify_contact_methods($profile_fields) {
// Add new fields
$profile_fields['Twitter'] = 'Twitter Username';
$profile_fields['facebook'] = 'Facebook URL';
$profile_fields['gplus'] = 'Google+ URL';
return $profile_fields;
}
add_filter('user_contactmethods', 'modify_contact_methods');
Ce qui précède semble idéal pour ajouter une entrée de texte sous la zone de contact du profil.
Je suis également curieux de savoir comment ajouter une zone de texte ou des cases à cocher au profil d'un utilisateur. En outre, existe-t-il un moyen d'ajouter des balises du blog en tant que champ dans le profil d'utilisateur?
L'idéal serait d'avoir un champ intitulé "Spécialités" ou "Domaines d'expertise" qui serait des balises de blog. Et lorsque les tags sont utilisés sur le front-end, le profil de cet utilisateur particulier apparaîtra parmi ces résultats.
C'est un excellent plugin qui vous permet d'ajouter facilement des champs personnalisés aux utilisateurs (entre autres).
http://www.advancedcustomfields.com/
Ce tutoriel va vous aider à récupérer les valeurs de l'utilisateur: http://www.advancedcustomfields.com/resources/how-to/how-to-get-values-from-a-user/
J'ai vu un champ de saisie automatique Nice Tag dans le plugin Style Admin WordPress , par Frank Bueltge (assez essentiel pour concevoir des pages d’administrateur). La liste est codée en JavaScript, nous pouvons utiliser Ajax ou wp_localize_script
pour obtenir la réalité.
Cela va comme ceci dans le balisage:
<!-- Autocomplete -->
<h3 id="anker_autocomplete" class="demoAutocomplete">Autocomplete</h3>
<label for="autocomplete">Tags: </label>
<input id="autocomplete" type="text" />
Et le jQuery:
// autocomplete
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"etc..."
];
$( "#autocomplete" ).autocomplete({
source: availableTags
});
$( "#autocomplete-core" ).autocomplete({
source: availableTags,
position: ( 'undefined' !== typeof isRtl && isRtl ) ? { my: 'right top', at: 'right bottom', offset: '0, -1' } : { offset: '0, -1' },
open: function() { $(this).addClass('open'); },
close: function() { $(this).removeClass('open'); }
});
Et, enfin, rendre ce champ répétable: